하나의 Explore를 공유하지만 사용자의 팀이나 지역에 따라 사용 사례가 다른 사용자가 많다고 가정해 보겠습니다. 각 사용자는 자신의 고유한 사용 사례에 적용되는 필드만 확인하려 합니다. 사용자의 다양한 니즈를 충족하기 위해 LookML 상세검색을 사용하여 원본 LookML을 수정하지 않고도 기존 뷰와 Explore를 맞춤설정할 수 있습니다. 그런 다음 이러한 세분화된 뷰 및 Explore를 사용자의 다양한 니즈에 따라 맞춤설정된 별도의 전용 모델 파일에 포함할 수 있습니다.
이 페이지에서는 LookML 상세검색을 사용하여 단일 기본 뷰를 맞춤설정하고, 회사 내 두 팀에 대해 고유한 Explore를 만드는 예시를 제공합니다. 또한 미세 조정된 콘텐츠에서 필드를 숨기고 추가하는 예시를 포함합니다.
재료
- LookML 뷰
- LookML Explore
- LookML 모델 파일
- LookML 상세검색
- 상세검색 저장을 위한 일반 LookML 파일
- LookML
include
매개변수 - LookML
hidden
매개변수(필드용) - 원하는 경우 Looker 관리자에 의해 구성된 뷰어의 특정 모델에 대한 모델 액세스
기본 요건
- 구성된 LookML 프로젝트
- LookML을 개발할 수 있는 권한
- 상세검색 및 확장 프로그램과 같은 고급 LookML 개념을 숙지하는 등 LookML에서 모델 개발 경험
예시: 동일한 기본 뷰에서 여러 개의 맞춤설정된 Explore 만들기
고객, 구매, 배송, 위치에 대한 데이터가 포함된 판매 Explore가 있다고 가정해 보겠습니다. 회사의 마케팅 및 물류 팀 모두 이 데이터를 탐색해야 하지만 각각 판매 Explore 내의 다른 필드에 초점을 맞추고 있습니다.
쉽게 탐색할 수 있도록 Explore 필드 선택 도구에서 각 팀에 유용한 필드만 표시하려고 합니다. 이를 위해 판매 Explore 및 기반 sales
뷰의 두 가지 상세검색을 정의할 수 있습니다. 마케팅 팀의 Explore에는 고객 및 구매 트렌드와 관련된 필드가 표시되고 물류 팀의 탐색에는 배송 및 위치와 관련된 필드가 표시될 수 있습니다. 또한 각 미세 조정된 뷰에 각 팀의 니즈에 적합한 새 필드를 추가할 수 있습니다.
현재 판매 Explore의 필드 선택 도구는 판매 뷰의 모든 필드를 표시합니다.
필드 선택 도구는 조인된 사용자 뷰의 모든 필드도 표시합니다.
다음 단계를 따라 sales
뷰를 미세 조정하여 마케팅 및 물류 팀에 관심 있는 필드만 포함된 별도의 Explore 두 개를 만들 수 있습니다.
이 예시에서는
sales
뷰 및 조인된users
뷰를 기반으로 하는 판매 Explore에 대한 LookML이 포함된base_analysis.lkml
라는 새 LookML 파일을 만듭니다. 기본sales
Explore 및 해당 뷰를 사용하여 각 팀에 대해 맞춤설정된 Explore를 만들려고 하는 경우 단일 파일 내에서와 같이 단일 위치에서 모든 공유 필드 및 속성을 정의할 수 있습니다.# base_analysis.lkml include: "views/sales.view.lkml" include: "views/inventory_items.view.lkml" include: "views/users.view.lkml" explore: sales { join: inventory_items { type: left_outer sql_on: ${sales.inventory_item_id} = ${inventory_items.id} ;; relationship: many_to_one } join: users { type: left_outer sql_on: ${sales.user_id} = ${users.id} ;; relationship: many_to_one } }
각 팀에 대해 정의할 판매 Explore의 상세검색을 보관할 두 개의 개별 파일을 만듭니다. 파일 이름을
marketing_analysis.lkml
및logistics_analysis.lkml
로 지정할 수 있습니다. 다음에 표시된 LookML 코드는 이전에 표시된base_analysis.lkml
파일에 정의된 대로 기본sales
Explore를 미세 조정하여marketing_analysis.lkml
라는 새 파일 내에 마케팅 팀에 대한 판매 분석 라벨을 추가합니다.include: "/base/base_analysis.lkml"
문은marketing_analysis.lkml
파일 내에서base_analysis.lkml
파일의 콘텐츠를 참조할 수 있게 합니다.# marketing_analysis.lkml include: "/base/base_analysis.lkml" explore: +sales { label: "Sales Analysis for Marketing Team" }
각 팀에 대해
ecommerce_marketing.model
및ecommerce_logistics.model
과 같은 별도의 모델 파일을 만듭니다. 각 팀별로 다른 상세검색을 별도의 전용 모델에저장하면 한 팀의 사용 사례에 대한 맞춤설정을 덮어쓰지 않고 동일한 뷰 및 Explore 집합을 여러 번 상세검색할 수 있습니다. 자세한 내용은 LookML 상세검색 문서 페이지를 참조하세요.include
매개변수를 사용하여ecommerce_marketing.model
모델에marketing_analysis.lkml
을 포함하고ecommerce_logistics.model
모델 내에logistics_analysis.lkml
을 포함합니다.원하는 대로 상세검색을
marketing_analysis.lkml
및logistics_analysis.lkml
파일에 추가합니다. 예를 들어 불필요한 필드를 숨기고 각 팀의 미세 조정 Explore에 새 필드를 추가할 수 있습니다.
원하는 경우 Looker 관리자가 각 전용 모델에 모델 액세스를 구성하여 특정 팀에 Explore 수준 액세스 권한을 제공하도록 할 수 있습니다.
미세 조정 Explore에서 불필요한 필드 숨기기
마케팅 팀은 해당 필드를 사용하지 않으므로, marketing_analysis.lkml
파일에서 다음과 같이 sales
뷰를 미세 조정하여 반품, 배송, 전송 및 생성된 측정기준 그룹과 상태 측정기준을 숨길 수 있습니다.
# marketing_analysis.lkml
include: "/base/base_analysis.lkml"
explore: +sales {
label: "Sales Analysis for Marketing Team"
}
view: +sales
dimension_group: returned {
hidden: yes
}
dimension_group: shipped {
hidden: yes
}
dimension_group: delivered {
hidden: yes
}
dimension_group: created {
hidden: yes
}
dimension: status {
hidden: yes
}
}
마찬가지로 logistics_analysis.lkml
파일에서 다음 LookML을 사용하여 물류 팀에서 필요하지 않은 필드(예:수익, 할인가 및 평균 할인가)를 숨길 수 있습니다.
# logistics_analysis.lkml
include: "/base/base_analysis.lkml"
explore: +sales {
label: "Sales Analysis for Logistics Team"
}
view: +sales {
dimension: profit {
hidden: yes
}
dimension: sale_price {
hidden: yes
}
measure: average_sale_price {
hidden: yes
}
}
물류 팀은 이름, 연령, 이메일 주소 등 고객에 대한 개인 정보를 볼 필요가 없으므로 logistics_analysis.lkml
파일 내에서 조인된 users
뷰에 대해 상세검색을 추가하여 Explore에서 이 필드를 숨길 수도 있습니다.
view: +users {
dimension: age {
hidden: yes
}
dimension: email {
hidden: yes
}
dimension: first_name {
hidden: yes
}
dimension: last_name {
hidden: yes
}
dimension_group: created {
hidden: yes
}
}
미세 조정 Explore에 새 필드 추가
미세 조정 sales
뷰 내에서 마케팅 팀이 관심을 가질 만한 새 필드를 만들 수도 있습니다. 예를 들어 미세 조정 sales
뷰에서 평균 할인가, 총 할인가 및 사용자당 평균 지출 필드를 추가할 수 있습니다:
다음 LookML을 사용하여 이러한 필드를 marketing_analysis.lkml
파일의 미세 조정된 sales
뷰에 추가할 수 있습니다.
# marketing_analysis.lkml
view: +sales {
measure: average_sale_price {
type: average
value_format_name: usd
sql: ${sale_price} ;;
drill_fields: [detail*]
}
measure: total_sale_price {
type: sum
value_format_name: usd
sql: ${sale_price} ;;
drill_fields: [detail*]
}
measure: average_spend_per_user {
type: number
value_format_name: usd
sql: 1.0 * ${total_sale_price} / NULLIF(${users.count},0) ;;
drill_fields: [detail*]
}
}
생성된 마케팅 Explore에는 조인된 사용자 뷰의 필드 외에도 판매 뷰 아래에 있는 새 필드가 포함됩니다. 반환됨, 배송됨, 전송됨, 생성됨 측정기준 그룹 및 상태 측정기준은 마케팅 팀이 필요로 하지 않으므로 숨겨진 것입니다.
마찬가지로, 물류 팀의 경우 배송 시간 버킷 및 평균 배송 시간과 같이 물류 팀에 유용한 새 필드를 만들 수 있습니다.
다음 LookML을 사용하여 이러한 필드를 logistics_analysis.lkml
파일의 미세 조정된 sales
뷰에 추가할 수 있습니다.
# logistics_analysis.lkml
view: +sales {
dimension: shipping_time_buckets {
case: {
when: {
sql: ${shipping_time} <= 7 ;;
label: "One Week"
}
when: {
sql: ${shipping_time} > 7 AND ${shipping_time} <= 14 ;;
label: "Two Weeks"
}
when: {
sql: ${shipping_time} > 14 ;;
label: "Over Two Weeks"
}
else: "Note Shipped"
}
}
measure: average_shipping_time {
type: average
value_format_name: decimal_4
sql: ${shipping_time} ;;
}
}
생성된 물류 Explore에는 조인된 사용자 뷰의 필드 외에도 판매 뷰 아래에 있는 새 필드가 포함됩니다. 판매 뷰의 수익, 할인가 및 평균 할인가 필드를 비롯해 사용자 Explore의 연령, 이메일, 이름, 성 및 생성됨 필드는 물류 팀이 필요로 하지 않으므로 숨겨져 있습니다.
이제 각 팀이 특정 니즈에 보다 적합한 Explore를 사용할 수 있게 되었습니다. 이 방법을 사용하면 초기 설정이 약간 더 필요하지만 핵심 데이터를 한 곳에 유지하여 보다 쉽게 찾고 사용할 수 있습니다.