개요
LookML 상세검색을 사용하면 이를 포함하는 LookML 파일을 수정하지 않고 기존 뷰 또는 Explore를 조정할 수 있습니다. 이는 다음과 같은 경우에 적합합니다.
- Looker 블록이 있는 프로젝트로, 사전 빌드된 LookML 조각 사용
- 다른 프로젝트에서 파일을 가져오는 프로젝트
- 데이터베이스의 테이블에서 파일을 생성해야 하는 프로젝트
- 모델 또는 프로젝트 간에 LookML을 공유하면서 각 위치에서 맞춤설정을 수행하려는 경우(허브 및 스포크 구성)
예를 들어 프로젝트에 다음 뷰 파일이 있는 경우입니다.
view: flights {
sql_table_name: flightstats.accidents ;;
dimension: id {
label: "id"
primary_key: yes
type: number
sql: ${TABLE}.id ;;
}
}
다음 예시와 같이 flights
뷰를 세분화할 수 있습니다. 동일한 뷰 이름으로 view
매개변수를 사용하되 이름 앞에 더하기 기호(+
)를 추가하여 기존 뷰의 상세검색임을 나타냅니다.
이 상세검색은 air_carrier
측정기준을 기존 flights
뷰에 추가합니다.
view: +flights {
dimension: air_carrier {
type: string
sql: ${TABLE}.air_carrier ;;
}
}
모델 파일, 뷰 파일 또는 자체 전용 LookML 파일과 같은 프로젝트의 모든 LookML 파일을 가져올 수 있습니다. 작동 방식은 LookML 프로젝트에서 상세검색 사용 섹션을 참조하세요.
원본 LookML과 결합된 상세검색은 뷰의 원본 LookML인 것처럼 최종 결과를 받게 됩니다.
view: flights {
sql_table_name: flightstats.accidents ;;
dimension: id {
label: "id"
primary_key: yes
type: number
sql: ${TABLE}.id ;;
}
dimension: air_carrier {
type: string
sql: ${TABLE}.air_carrier ;;
}
}
원본 뷰 파일 자체에 측정기준을 추가한 것처럼 Looker UI에서 사용자에게 항공사 측정기준이 표시됩니다.
자세한 구현 정보는 예시 섹션을 참조하세요.
확장 프로그램 대비 상세검색
Looker는 LookML 객체 확장도 지원합니다. 확장은 기존 뷰 또는 Explore의 새 사본을 만들고 새 객체를 추가할 수 있을 때 유용합니다. 예를 들어 모든 필드를 정의하는 기본 뷰를 만든 후 기본 뷰를 확장하는 여러 개의 새 뷰를 만들 수 있습니다. 그런 다음 기본 뷰에서 특정 필드를 숨기거나 기본 뷰에서 필드에 대한 정의 또는 라벨을 변경하도록 새 뷰를 수정할 수 있습니다.
상세검색은 기존 뷰를 수정하거나 특정 객체의 일부를 조정하거나 조정하면서 뷰 또는 Explore의 사본을 만들지 않으려는 경우에 유용합니다. 상세검색은 기본 뷰 또는 Explore를 수정할 수 없거나 수정하지 않으려는 경우와 새 보기 또는 Explore를 만들 때 다른 LookML 참조를 대폭 변경해야 하는 상황에 적합합니다. 이 사용 사례의 예는 이 페이지의 예 섹션을 참조하세요.
대부분의 사용 사례에서 상세검색은 extends
보다 간단하고 깔끔한 대안입니다.
고급 LookML 개발자는 LookML 상세검색 내에서 extends
매개변수를 사용할 수 있습니다. 자세한 내용은 이 페이지의 상세검색에 확장 프로그램이 포함될 수 있음 섹션을 참조하세요.
상세검색에서 대부분의 매개변수 재정의
대부분의 경우 상세검색을 수행하면 객체의 원래 설정이 재정의됩니다. 다음 예의 원본 뷰에는 숨겨진 측정기준(hidden: yes
)이 있습니다.
view: faa_flights {
dimension: carrier {
hidden: yes
}
}
또 다른 파일에서 hidden: no
를 사용하여 해당 측정기준을 세분화할 수 있습니다.
include: "/views/faa_flights.view.lkml"
view: +faa_flights {
dimension: carrier {
hidden: no
}
}
마지막 상세검색이 우선 적용되므로 hidden: no
이 적용되고 측정기준이 최종 보기에 표시됩니다.
상세검색이 재정의되는 대신 추가되는 경우도 있습니다. 자세한 내용은 이 페이지의 일부 매개변수는 추가됨 섹션을 참조하세요.
일부 매개변수가 추가됨
대부분의 경우 상세검색에 상세검색되는 객체와 같은 매개변수가 포함될 경우 상세검색은 상세검색 객체의 매개변수 값을 재정의합니다.
하지만 일부 매개변수의 경우 상세검색이 추가될 수 있습니다. 즉, 기본 객체의 값이 상세검색된 객체의 값과 함께 사용됩니다.
다음 매개변수는 추가됩니다.
측정기준 및 측정값의 경우:
매개변수의 경우:
파생 테이블의 경우:
뷰의 경우:
extends
(자세한 내용은 이 페이지의 상세검색extends
가 추가됨 섹션을 참조하세요.)
Explore의 경우:
access_filter
aggregate_table
extends
(자세한 내용은 이 페이지의 상세검색extends
가 추가됨 섹션을 참조하세요.)join
query
예를 들어 link
매개변수가 있는 name
측정기준의 뷰는 다음과 같습니다.
view: carriers {
sql_table_name: flightstats.carriers ;;
dimension: name {
sql: ${TABLE}.name ;;
type: string
link: {
label: "Google {{ value }}"
url: "http://www.google.com/search?q={{ value }}"
icon_url: "http://google.com/favicon.ico"
}
}
}
link
매개변수의 값이 다른 name
측정기준을 사용하여 carriers
뷰를 세분화하면 다음과 같습니다.
include: "/views/carriers.view.lkml"
view: +carriers {
label: "Refined carriers"
dimension: name {
sql: ${TABLE}.name ;;
type: string
link: {
label: "Dashboard for {{ value }}"
url: "https://docsexamples.dev.looker.com/dashboards/307?Carrier={{ value }}"
icon_url: "https://www.looker.com/favicon.ico"
}
}
}
상세검색된 carriers
뷰에서 두 개의 link
매개변수가 추가되므로 name
측정기준에 두 링크가 표시됩니다.
상세검색이 순서대로 적용됨
객체를 여러 번 상세검색하여 여러 위치에 세분화함으로써 Looker 개발자가 다양한 방식으로 상세검색을 사용할 수 있습니다. 하지만 이는 개발자가 세분화가 적용되는 순서를 유념해야 한다는 것을 의미합니다.
- 프로젝트 내에서 상세검색은 파일이 포함된 순서대로 적용됩니다. 마지막으로 포함된 파일의 상세검색이 이전에 포함된 파일의 상세검색보다 우선 적용됩니다.
- 단일 파일 내에서 상세검색은 아래로 한 줄씩 적용됩니다. 줄 번호가 가장 높은 상세검색이 마지막으로 적용되며, 충돌하는 경우 이전의 상세검색이 재정의됩니다.
예를 들어 다음 뷰 파일에는 faa_flights
뷰의 두 가지 상세검색이 있습니다. 첫 번째 상세검색은 측정기준(hidden: yes
)을 숨기고 두 번째 상세검색은 측정기준(hidden: no
)을 표시합니다. 이러한 충돌이 발생하면 파일에서 가장 아래에 있는 상세검색이 우선 적용됩니다.
include: "//e_faa_original/views/faa_flights.view.lkml"
view: +faa_flights {
dimension: carrier {
hidden: yes
}
}
view: +faa_flights {
dimension: carrier {
hidden: no
}
}
프로젝트에 여러 파일을 포함시키는 것과 유사한 로직입니다. 포함 파일에 나열된 마지막 파일의 상세검색이 우선 적용됩니다. 예를 들어 모델 파일에 다음 파일이 포함되어 있다고 가정해 보겠습니다.
include: "/refinements/distance_analysis.lkml"
include: "/refinements/finishing_touches.lkml"
distance_analysis.lkml
의 상세검색이 먼저 적용된 다음 finishing_touches.lkml
파일의 모든 상세검색이 적용됩니다. 충돌하면 마지막 파일인 finishing_touches.lkml
의 상세검색이 우선 적용됩니다.
추가적인 상세검색을 방지하기 위해 final: yes
사용
앞에서 설명한 것처럼 동일한 객체를 여러 위치에서 상세검색할 수 있으며 마지막 상세검색은 이전의 모든 상세검색을 재정의합니다.
뷰 또는 Explore의 최종 상세검색으로 간주하려는 상세검색이 있으면 상세검색에 final: yes
플래그를 추가할 수 있습니다. 이 최종 상세검색 이후에 적용될 기존 상세검색이 있거나 개발자가 이 최종 상세검색 이후에 적용될 새 상세검색을 추가하려고 하면 Looker IDE가 LookML 오류를 반환합니다. 예를 들어 이 뷰 파일의 두 번째 상세검색은 이전 상세검색에 final: yes
플래그가 있으므로 LookML 오류가 발생합니다.
include: "//e_faa_original/views/faa_flights.view.lkml"
view: +faa_flights {
final: yes
dimension: carrier {
hidden: yes
}
}
view: +faa_flights {
dimension: carrier {
hidden: no
}
}
상세검색에 final: yes
플래그를 추가하면 상세검색이 의도한 순서로 적용되는지 확인할 수 있습니다.
상세검색에 확장 프로그램이 포함될 수 있음
고급 LookML 개발자는 LookML 상세검색 내에서 extends
매개변수를 사용하여 상세검색 중인 객체에 확장 객체를 추가할 수 있습니다.
extends
의 동작 및 상세검색을 요약하려면 다음 안내를 따르세요.
- 객체를 확장하면 새 객체 사본이 만들어지고 그 위에 빌드됩니다. 예를 들어 모든 필드를 정의하는 기본 뷰를 만든 후 기본 뷰를 확장하는 여러 개의 새 뷰를 만들 수 있습니다. 각각의 새 뷰에는 기본 뷰의 사본이 포함되며, 개발자는 다른 필드, 필터 또는 기타 속성을 추가하여 기본 뷰에 있는 항목을 수정할 수 있습니다. 기본 객체부터 시작하여 다른 여러 객체에서 다양한 방식으로 사용하는 것이 좋습니다. 확장 프로그램 작업에 대한 자세한 내용은 확장을 통해 코드 재사용 문서 페이지를 참조하세요.
- 객체를 세분화하면 객체에 수정 레이어가 추가되지만 확장과 달리 세분화는 여러 객체 사본을 만들지 않습니다. 원본 LookML을 수정하지 않고 기본 객체를 빌드하는 것이 좋습니다.
다음은 상세검색의 표준 사용의 예입니다. orders
라는 Explore 및 이를 상세검색하는 +orders
Explore입니다.
explore: orders {
view_name: orders
# other Explore parameters
}
explore: +orders {
label: "Orders Information"
# other Explore parameters to build on the original Explore
}
이 외에도 extends
를 포함하는 상세검색을 추가할 수 있습니다. 예를 바탕으로, 다음은 동일한 orders
Explore입니다. 또한 users_base
라는 기본 Explore가 있으며 이제 +orders
상세검색에는 users_base
를 가져오는 extends
매개변수가 있습니다.
explore: users_base {
view_name: users
extension: required
# other Explore parameters
}
explore: orders {
view_name: orders
# other Explore parameters
}
explore: +orders {
label: "Orders Information"
extends: [users_base]
# other Explore parameters to build on the original Explore
}
여기서 중요한 점은 +orders
상세검색에 extends
가 포함되어 있다는 것입니다. 결과적으로 +orders
뷰가 users_base
Explore를 확장합니다.
Looker가 상세검색 내에서 extends
를 구현하는 방법
상세검색 내부의 객체 확장은 고급 LookML 개념입니다. 상세검색에서 extends
를 사용하기 전에 다음을 명확하게 이해해야 합니다.
- Looker에서
extends
를 구현하는 방법: LookML 요소가 확장된 객체와 확장 중인 객체 모두에 정의된 경우 매개변수가 추가이지 않는 한 확장 중인 객체의 버전이 사용됩니다. 자세한 내용은 확장을 통해 코드 재사용 문서 페이지를 참조하세요. - Looker가 상세검색을 구현하는 방법: LookML 요소가 여러 상세검색에 정의된 경우 마지막 상세검색은 이전 상세검색보다 우선 적용됩니다. 자세한 내용은 이 페이지의 상세검색이 순서대로 적용됨 섹션을 참조하세요.
마지막으로 Looker가 이러한 원칙을 결합하여 상세검색에 사용되는 extends
를 구현하는 방법을 이해해야 합니다. 다음은 Looker가 구현하는 순서이며, 충돌하는 경우 각 단계가 이전 단계를 재정의합니다.
- 객체에 지정된
extends
의 값 - 객체 상세검색에 지정된
extends
의 값 - 객체의 값
- 객체 상세검색의 값
예를 들어 각 구현 단계를 통해 label
매개변수의 값을 따르는 예는 다음과 같습니다.
explore: orders_base {
label: "Orders Base"
view_name: orders
extension: required
}
explore: users_base {
label: "Users Base"
view_name: users
extension: required
}
explore: orders {
label: "Orders"
extends: [orders_base]
}
explore: +orders {
label: "Orders Refined"
extends: [users_base]
}
Looker가 이 예에서 orders
Explore의 label
값을 구현하는 방법은 다음과 같습니다.
- 객체에 지정된
extends
의 값입니다.orders
Explore에는extends
매개변수가 있으므로 Looker는 확장 중인 객체의 LookML 요소로 시작합니다(이 경우에는orders_base
Explore). 이 시점에서label
값은 '순서 기반'입니다. - 객체 상세검색에 지정된
extends
의 값입니다.orders
에는 상세검색이 있고 상세검색에는extends
매개변수가 있으므로 Looker는 상세검색의 확장 프로그램에서 LookML 요소를 적용합니다(이 경우에는users_base
Explore). 이 시점에서label
값은 '사용자 기반'입니다. - 객체의 값입니다. 이제 모든 확장 프로그램이 해결되었으므로 Looker가 확장 객체의 요소를 적용합니다(이 경우에는
orders
Explore). 충돌하면 확장 중인 객체가 적용됩니다. 이제label
값은 '순서'입니다. - 객체 상세검색의 값입니다. 마지막으로 Looker는
orders
Explore의 모든 상세검색에서 요소를 적용합니다. 충돌하면 상세검색 객체가 우선 적용됩니다. 이제label
값은 '주문 상세검색'입니다.
상세검색 extends
는 추가됨
이 페이지의 상세검색 재정의 매개변수 섹션에 설명된 대로 일반적으로 상세검색은 객체의 원래 설정을 재정의합니다. extends
매개변수는 그렇지 않습니다. extends
에서 상세검색을 사용하면 extends
매개변수의 값이 원래 객체 또는 이전 상세검색에서 확장된 항목(있는 경우)의 목록에 추가됩니다. 그런 다음 충돌이 발생하면 확장 체인의 마지막 항목에 우선순위가 부여됩니다.
예를 들어 orders_base
라는 기본 Explore와 기본을 확장하는 orders
Explore가 있습니다. 또한 users_base
Explore 및 users_base
를 확장하는 +orders
상세검색이 있습니다.
explore: orders_base {
view_name: orders
extension: required
# other Explore parameters
}
explore: users_base {
view_name: users
extension: required
# other Explore parameters
}
explore: orders {
extends: [orders_base]
# other Explore parameters to build on the base Explore
}
explore: +orders {
extends: [users_base]
# other Explore parameters to build on the base Explores
}
orders
Explore가 orders_base
를 확장한 후 +orders
상세검색이 users_base
를 extends
목록에 추가합니다. 이제 +orders
Explore가 Explore의 원본 LookML인 것처럼 orders_base
및 users_base
를 모두 확장합니다.
explore: orders {
extends: [orders_base, users_base]
}
그런 다음 충돌이 발생하면 확장 체인의 마지막 항목에 우선순위가 부여됩니다. 이 예에서 users_base
의 요소는 orders_base
에서 충돌하는 요소를 재정의합니다.
한 번에 객체를 2개 이상 확장하는 개념은 확장을 통해 코드 재사용 문서 페이지에 설명되어 있습니다.
마지막으로 이 예에서 explore
매개변수의 순서는 중요하지 않습니다. 그러나 동일한 객체를 여러 번 상세검색하는 경우 상세검색의 순서가 중요합니다. 이 페이지의 상세검색이 순서대로 적용됨 섹션에 설명된 대로 파일의 마지막 상세검색이 이전 상세검색을 재정의합니다.
LookML 프로젝트에서 상세검색 사용
프로젝트에서 뷰 및 Explore 상세검색을 하기 위한 광범위한 단계는 다음과 같습니다.
- 세분화하려는 뷰 또는 Explore를 식별합니다.
- 상세검색을 저장할 위치를 결정합니다. 기존 LookML 파일에 상세검색을 추가하거나 상세검색에 대해 별도의 LookML 파일을 만들 수 있습니다. (일반 LookML 파일 만들기 예는 다른 프로젝트 파일 이해 문서 페이지의 데이터 테스트 파일 만들기 절차를 참조하세요.)
include
매개변수를 사용하여 상세검색을 모델에 통합합니다.- 상세검색을 작성하는 파일에 상세검색하는 LookML 파일을 포함해야 합니다. 포함되지 않은 객체를 세분화하려고 하면 Looker IDE에서 경고를 표시합니다.
- 모델 파일에 상세검색이 정의된 파일을 포함합니다. 파일을 조합하고 매우 창의적인 방식으로 포함을 사용할 수 있습니다. 자세한 내용은 이 페이지의 상세검색을 사용하여 모델에 레이어 추가 섹션을 참조하세요.
예
LookML 객체를 세분화하면 원본 LookML을 수정하지 않고도 뷰 및 Explore를 쉽게 조정할 수 있습니다. 이는 뷰와 Explore가 다른 프로젝트에서 가져온 파일과 같이 프로젝트에서 읽기 전용인 경우에 특히 유용합니다. 다음은 Explore 환경을 상세검색하는 예입니다.
aircraft
Explore의 LookML은 다음과 같습니다.
explore: aircraft {
join: aircraft_types {
type: left_outer
sql_on: ${aircraft.id} = ${aircraft_types.id} ;;
relationship: many_to_one
}
join: aircraft_engine_types {
type: left_outer
sql_on: ${aircraft.id} = ${aircraft_engine_types.id} ;;
relationship: many_to_one
}
}
이 Explore에는 여러 뷰가 포함되어 있으며 각 뷰에는 다양한 측정기준이 있습니다.
이제 e_faa_refined
라는 또 다른 LookML 프로젝트가 aircraft
Explore 파일을 가져옵니다. e_faa_refined
프로젝트에서 상세검색을 사용하여 aircraft
Explore를 크게 간소화할 수 있습니다.
aircraft
Explore는 가져온 파일이므로 직접 수정할 수 없습니다. 대신 상세검색을 추가할 수 있습니다. 다음은 이 LookML을 포함하는 refinements.lkml
라는 별도 파일의 예입니다.
include: "//e_faa_original/Explores/aircraft.explore.lkml"
explore: +aircraft {
label: "Aircraft Simplified"
fields: [aircraft.aircraft_serial, aircraft.name, aircraft.count]
}
refinements.lkml
파일에는 다음이 포함됩니다.
- 가져온 프로젝트의 원본
aircraft.explore.lkml
파일에서 가져올include
매개변수(가져온 프로젝트 파일을 참조하는 방법에 대한 자세한 내용은 다른 프로젝트에서 파일 가져오기 문서 페이지 참조) aircraft
Explore 상세검색:
최종 결과는 원본 aircraft
Explore 및 aircraft
뷰와 같습니다.
explore: aircraft {
label: "Aircraft Simplified"
}
view: aircraft {
sql_table_name: flightstats.aircraft ;;
dimension: aircraft_serial {
type: string
sql: ${TABLE}.aircraft_serial ;;
}
dimension: name {
type: string
sql: ${TABLE}.name ;;
}
measure: count {
type: count
}
}
상세검색을 사용하여 여러 사용 사례에 대한 단일 뷰를 맞춤설정하는 예는 DRY LookML로 코드 재사용성 극대화: 여러 사용 사례에 대한 단일 기본 뷰 맞춤설정 설명서 레시피를 참조하세요.
상세검색의 기타 사용 사례
앞에서 설명한 것처럼 상세검색은 Looker 블록 또는 가져온 파일과 같이 읽기 전용인 LookML 객체를 조정하는 데 적합합니다.
하지만 상세검색을 추가하고 모델에 포함시키는 방법을 알게 되면 다음 예에 설명된 대로 프로젝트를 매우 유용하게 활용할 수 있습니다.
상세검색을 사용하여 분석 추가
원본 LookML 파일을 수정하지 않고 상세검색을 사용하여 모델에 분석을 추가할 수 있습니다. 예를 들어 뷰와 Explore가 데이터베이스의 테이블에서 생성되고 faa_basic.lkml
이라는 LookML 파일에 저장되는 프로젝트가 있는 경우 상세검색을 사용하여 분석을 추가하는 faa_analysis.lkml
파일을 만들 수 있습니다. 다음은 이동 거리 분석이 포함된 distance_stats
라는 새 파생 테이블의 예입니다. 이 예에서는 distance_stats
파생 테이블을 flights
Explore에 조인하는 faa_basic.lkml
파일의 기존 flights
Explore에 대한 상세검색을 보여줍니다. 또한 예 하단에서 기존 flights
뷰가 상세검색되어 분석에서 새 필드를 추가합니다.
include: "faa_basic.lkml"
explore: +flights {
join: distance_stats {
relationship: one_to_one
type: cross
}
}
view: distance_stats {
derived_table: {
explore_source: flights {
bind_all_filters: yes
column: distance_avg {field:flights.distance_avg}
column: distance_stddev {field:flights.distance_stddev}
}
}
dimension: avg {
type:number
sql: CAST(${TABLE}.distance_avg as INT64) ;;
}
dimension: stddev {
type:number
sql: CAST(${TABLE}.distance_stddev as INT64) ;;
}
}
view: +flights {
measure: distance_avg {
type: average
sql: ${distance} ;;
}
measure: distance_stddev {
type: number
sql: STDDEV(${distance}) ;;
}
dimension: distance_tiered2 {
type: tier
sql: ${distance} ;;
tiers: [500,1300]
}
}
상세검색을 사용하여 모델에 레이어 추가
상세검색의 또 다른 흥미로운 사용 사례는 프로젝트에 레이어를 추가하는 것입니다. 여러 상세검색 파일을 만든 후 전략적으로 포함하여 레이어를 추가할 수 있습니다.
예를 들어 FAA 프로젝트에는 데이터베이스의 테이블에서 생성된 모든 뷰와 Explore 정보가 포함된 faa_raw.lkml
파일이 있습니다. 이 파일에는 데이터베이스의 모든 테이블에 대한 뷰가 있으며 각 테이블에는 각 데이터베이스 열의 측정기준이 있습니다.
원시 파일 외에도 faa_basic.lkml
파일을 만들어 Explore에 조인을 추가하거나 뷰에 다음과 같은 측정값을 추가하는 등 기본 상세검색으로 새 레이어를 추가할 수 있습니다.
include: "faa_raw.lkml"
explore: +flights {
join: carriers {
sql_on: ${flights.carrier} = ${carriers.name} ;;
}
}
view: +flights {
measure: total_seats {
type: sum
sql: ${aircraft_models.seats} ;;
}
}
그런 다음 faa_analysis.layer.lkml
파일을 추가하여 분석이 있는 새 레이어를 추가할 수 있습니다(분석 파일 예는 상세검색을 사용하여 분석 추가 하위 섹션 참조).
여기에서 모든 상세검색 파일을 모델 파일에 포함하기만 하면 됩니다. 모델 파일을 사용하여 참조하려는 데이터베이스 테이블을 뷰를 가리키는 상세검색을 추가할 수도 있습니다.
connection: "publicdata_standard_sql"
include: "faa_raw.lkml"
include: "faa_basic.lkml"
include: "faa_analysis.lkml"
view: +flights {
sql_table_name: lookerdata.faa.flights;;
}
view: +airports {
sql_table_name: lookerdata.faa.airports;;
}
view: +aircraft {
sql_table_name: lookerdata.faa.aircraft;;
}
view: +aircraft_models{
sql_table_name: lookerdata.faa.aircraft_models;;
}
view: +carriers {
sql_table_name: lookerdata.faa.carriers;;
}
이 모델 파일을 복제하고 여러 데이터베이스 테이블을 가리키거나 모델에 원하는 다른 레이어를 정의하기 위해 만든 다른 상세검색 파일을 포함할 수 있습니다.
PDT에 상세검색 사용
이 페이지의 확장 프로그램 대비 상세검색 섹션에 설명된 대로 확장 프로그램은 확장 중인 객체의 새 사본을 만듭니다. 영구 파생 테이블(PDT)의 경우 PDT의 각 확장 프로그램이 데이터베이스에 테이블의 새 사본을 만들기 때문에 확장 프로그램을 사용해서는 안 됩니다.
하지만 상세검색은 상세검색 중인 객체의 새 사본을 만들지 않으므로 PDT의 뷰에 상세검색을 추가할 수 있습니다.
메타데이터를 사용하여 객체의 상세검색 보기
Looker IDE에서 explore
또는 view
매개변수를 클릭하고 메타데이터 패널을 사용하여 객체의 상세검색을 볼 수 있습니다. 자세한 내용은 LookML 객체 메타데이터 문서 페이지를 참조하세요.
고려사항
현지화를 사용한 프로젝트
객체를 상세검색하는 경우 현지화 규칙이 상세검색에도 적용됩니다. 객체를 상세검색한 다음 새 라벨 또는 설명을 정의하는 경우 프로젝트의 언어 문자열 파일에 현지화 정의를 제공해야 합니다. 자세한 내용은 LookML 모델 현지화 문서 페이지를 참조하세요.