이 페이지에서는 Explore에 포함된
extends파라미터를 참조합니다.
extends은extends(뷰용) 매개변수 문서 페이지에 설명된 대로 뷰의 일부로도 사용할 수 있습니다.
extends은 대시보드 매개변수 문서 페이지에 설명된 대로 LookML 대시보드의 일부로도 사용할 수 있습니다.
사용
explore: explore_name {
extends: [explore_name, explore_name, ...]
}
|
계층 구조
extends |
기본값
없음
수락
쉼표로 구분된 탐색 이름 목록이 포함된 대괄호
|
정의
extends 매개변수를 사용하면 다른 Explore를 시작점으로 사용하여 다른 Explore의 콘텐츠와 설정을 기반으로 빌드할 수 있습니다. 충돌이 있는 경우 확장 중인 Explore는 자체 설정을 사용하여 확장되는 Explore의 설정을 재정의합니다. Looker에서 이 작업을 수행하는 방법에 관한 자세한 내용은 extends를 사용하여 코드 재사용 문서 페이지를 참고하세요.
LookML 상세검색을 확인하세요.
뷰 또는 Explore 확장은 여러 버전의 뷰 또는 Explore가 필요한 시나리오에 적합합니다. 하지만 목표가 포함된 LookML 파일을 수정하지 않고 뷰 또는 Explore를 수정하는 것이 목표라면 상세검색을 사용하는 것이 좋을 수 있습니다. 상세검색 내부에extends매개변수를 사용할 수도 있습니다. 자세한 내용과 사용 사례는 LookML 상세검색 문서 페이지를 참고하세요.
Explore를 확장할 때는 확장할 Explore에 view_name 매개변수가 있어야 합니다. view_name 매개변수는 Explore가 기반으로 하는 뷰를 정의합니다. 기본값은 Explore의 이름입니다. 기본 Explore에 view_name가 지정되지 않은 경우 기본값은 Explore 이름입니다. 하지만 기본 Explore를 확장하는 다른 Explore에서는 작동하지 않으므로 '알 수 없는 뷰' 오류가 발생합니다. Looker가 올바른 뷰 파일을 사용하려면 view_name 매개변수를 사용하여 지정해야 합니다. Explore의 확장 버전에는 이 값이 필요하므로 Explore가 확장될 때마다 일관되게 참조되도록 기본 Explore에 추가하는 것이 좋습니다.
기본 Explore에 아직 view_name 매개변수가 없는 경우 view_name 매개변수를 추가하고 Explore 이름과 동일한 값을 지정하면 됩니다.
기본 Explore와 확장 Explore에서 view_label 매개변수를 사용할 수도 있습니다. view_label 매개변수는 필드 선택 도구에서 뷰의 필드가 그룹화되는 라벨을 결정합니다 (예는 view_label (Explore용) 매개변수 문서 페이지 참고). 기본 Explore와 확장 Explore에 view_label를 지정하지 않으면 둘 다 기본 Explore의 Explore 이름을 사용합니다.
예
다음은 모델 파일에 정의된 Explore의 예입니다.
explore: orders {
view_name: orders
view_label: "Orders"
# The normal contents of the Explore follow
}
여기에서는 이전에 정의한 orders Explore를 확장하는 새 Explore를 추가합니다.
explore: name_of_the_new_explore {
extends: [orders]
view_label: "Order Information"
# The additional things you want to add or change
# in the new Explore
}
확장된 뷰를 기반으로 하는 Explore를 확장하는 경우 from 매개변수도 사용해야 합니다. from를 확장 Explore에 추가하고 확장 뷰의 이름을 할당합니다.
explore: new_explore {
extends: [orders]
from: extended_orders_view
#The normal contents of the Explore follow
}
extends를 사용하여 사용자별로 필드 제한
Explore를 확장하는 매우 유용한 사용 사례는 특정 사용자에게 Explore 필드의 하위 집합만 표시하는 것입니다. 예를 들어 조인된 테이블의 사용 가능한 모든 필드가 있는 products Explore가 있다고 가정해 보겠습니다.
explore: products {
view_name: products
from: products
join: inventory_items {
type: left_outer
sql_on: ${products.id}=${inventory_items.product_id} ;;
relationship: many_to_one
}
join: order_items {
type: left_outer
sql_on: ${order_items.inventory_item_id}=${inventory_items.id} ;;
relationship: one_to_one
}
}
제품 카테고리와 반품만 확인하면 되는 팀이 있는 경우 products 탐색을 확장하고 fields 매개변수를 사용하여 제품 카테고리와 반품 필드만 포함하도록 지정할 수 있습니다.
explore: products_extended {
extends: [products]
fields: [products.category,order_items.returned_date]
}
products_extended Explore에는 products.category 및 order_items.returned_date의 두 필드만 표시됩니다.
모델 간 Explore 확장
Explore는 일반적으로 모델 파일 내에서 정의됩니다. Explore를 확장하려면 앞의 예와 같이 동일한 모델 파일에 확장 Explore를 정의하면 됩니다.
하지만 여러 모델에서 Explore를 확장하려면 기본 파일로 사용할 별도의 Explore 파일을 만들어야 합니다. 자체 파일에 기본 Explore를 정의한 후 모델 파일에 Explore 파일을 포함하고 모델 파일에서 Explore를 확장할 수 있습니다.
다른 Explore 파일에 Explore 파일을 포함할 수 있으므로 필요한 경우 여러 다른 Explore 파일에서 기본 Explore 파일을 공유할 수도 있습니다.
Explore 파일은 포함된 모델의 연결을 리슨합니다. 탐색 파일의 상위 모델과 다른 연결로 구성된 모델에 탐색 파일을 포함할 때 이 점을 염두에 두세요. 포함된 모델의 연결 스키마가 상위 모델의 연결 스키마와 다르면 쿼리 오류가 발생할 수 있습니다.
메타데이터를 사용하여 객체의 확장 프로그램 보기
Looker IDE에서 explore 또는 view 매개변수를 클릭하고 메타데이터 패널을 사용하여 객체의 확장 프로그램을 확인하거나 확장되는 객체를 볼 수 있습니다. 자세한 내용은 LookML 객체 메타데이터 문서 페이지를 참조하세요.
고려사항
일부 매개변수가 추가됨
대부분의 경우 확장 객체에 확장 중인 객체와 동일한 매개변수가 포함된 경우 확장 객체의 값이 확장 객체의 매개변수 값을 재정의합니다. 하지만 일부 매개변수의 경우 확장자는 추가될 수 있습니다. 즉, 확장 객체의 값이 확장된 객체의 값과 함께 사용됩니다.
다음 Explore 매개변수는 추가됩니다.
access_filteraggregate_tableextends(여러extends를 함께 연결할 수 있음)joinquery
다음 예에서 aircraft_base Explore는 join 매개변수를 사용하여 aircraft 뷰를 aircraft_types 뷰와 조인합니다.
explore: aircraft_base {
view_name: aircraft
label: "Aircraft"
join: aircraft_types {
type: left_outer
sql_on: ${aircraft.aircraft_type_id} = ${aircraft_types.aircraft_type_id} ;;
relationship: many_to_one
}
}
aircraft_extended Explore는 aircraft_base Explore를 확장합니다. 또한 aircraft_extended Explore에는 aircraft_engine_types 뷰를 조인하는 join 매개변수가 있습니다.
explore: aircraft_extended {
extends: [aircraft_base]
label: "Aircraft Extended"
join: aircraft_engine_types {
type: left_outer
sql_on: ${aircraft.aircraft_engine_type_id} = ${aircraft_engine_types.aircraft_engine_type_id} ;;
relationship: many_to_one
}
}
join 매개변수는 추가되므로 결과 Explore에는 기본 Explore에 조인된 뷰와 확장 Explore에 조인된 뷰가 표시됩니다. 이 경우 aircraft_extended Explore에는 aircraft 뷰, aircraft_types 뷰, aircraft_engine_types 뷰가 포함됩니다.

현지화를 사용한 프로젝트
객체를 확장하는 경우 현지화 규칙이 확장에도 적용됩니다. 객체를 확장한 다음 새 라벨 또는 설명을 정의하는 경우 프로젝트의 언어 문자열 파일에 현지화 정의를 제공해야 합니다. 자세한 내용은 LookML 모델 현지화 문서 페이지를 참조하세요.