LookML 개선

독자가 LookML에 대해 잘 알고 있다고 가정하고 있는 고급 주제입니다.

개요

LookML 상세검색을 사용하면 뷰가 포함된 LookML 파일을 수정하지 않고도 기존 또는 탐색을 조정할 수 있습니다. 다음의 경우에 적합합니다.

프로젝트에 다음과 같은 뷰 파일이 있다고 가정해 보겠습니다.

view: flights {
  sql_table_name: flightstats.accidents ;;

  dimension: id {
    label: "id"
    primary_key: yes
    type: number
    sql: ${TABLE}.id ;;
  }
}

아래와 같이 flights 뷰를 세분화할 수 있습니다. 동일한 뷰 이름으로 view 매개변수를 사용하되 이름 앞에 더하기 기호 (+)를 추가하여 기존 뷰를 미세 조정했음을 나타냅니다.

이 상세검색은 기존 flights 뷰에 air_carrier 측정기준을 추가합니다.

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에서 사용자에게 항공사 측정기준이 표시됩니다.

자세한 구현 정보는 아래 예를 참조하세요.

확장 vs. 상세검색

Looker는 LookML 객체 확장도 지원합니다. 확장은 기존 뷰 또는 탐색의 새 사본을 만들어 새 객체를 추가할 때 유용합니다. 예를 들어 모든 필드를 정의하는 기본 뷰를 만든 다음 기본 뷰를 확장하는 새로운 여러 뷰를 만들 수 있습니다. 그런 다음 이러한 새 뷰를 수정하여 기본 뷰의 특정 필드를 숨기거나 기본 뷰의 필드 정의 또는 라벨을 변경할 수 있습니다.

상세검색은 기존 객체를 수정하거나 특정 객체를 일부 조정하거나 탐색하면서 뷰 또는 탐색의 복사본을 만들고 싶지 않은 경우에 유용합니다. 상세검색은 기본 뷰 또는 탐색을 수정할 수 없거나 수정하지 않으려는 상황과 새 뷰 또는 탐색을 만들 때 다른 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가 적용되고 측정기준이 최종 보기에 표시됩니다.

상세검색이 재정의되는 대신 추가되는 경우도 있습니다. 자세한 내용은 이 페이지의 일부 매개변수가 추가됩니다 섹션을 참조하세요.

일부 매개변수가 중복되었습니다.

대부분의 경우 상세검색에 미세 조정 중인 객체와 동일한 매개변수가 포함된 경우 세분화된 객체의 매개변수 값이 재정의됩니다.

하지만 일부 매개변수에 상세검색이 추가될 수 있습니다. 즉, 기본 객체의 값이 미세 조정된 객체의 값과 함께 사용됩니다.

다음 매개변수는 추가입니다.

예를 들어 다음은 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 개발자는 다양한 방식으로 상세검색을 사용할 수 있습니다. 하지만 이는 개발자가 상세검색이 적용되는 순서에 유념해야 한다는 의미입니다.

  • 프로젝트 내에서 상세검색은 파일이 포함된 순서대로 적용됩니다. 마지막으로 포함된 파일의 상세검색이 이전에 포함된 파일의 상세검색보다 우선 적용됩니다.
  • 단일 파일 내에서 상세검색은 한 줄씩 아래로 적용됩니다. 줄 번호가 가장 높은 상세검색이 마지막으로 적용되며, 충돌하는 경우 이전 상세검색이 재정의됩니다.

final: yes 플래그를 사용하여 상세검색이 예상한 순서대로 적용되는지 확인할 수 있습니다. 자세한 내용은 final: yes를 사용하여 추가 상세검색 방지 섹션을 참고하세요.

예를 들어 다음 뷰 파일에는 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에 나열된 마지막 파일의 상세검색이 우선 적용됩니다. 예를 들어 모델 파일에 다음 파일이 포함되어 있다고 가정해 보겠습니다.

include: "/refinements/distance_analysis.lkml"
include: "/refinements/finishing_touches.lkml"

distance_analysis.lkml의 상세검색이 먼저 적용된 다음 finishing_touches.lkml 파일의 상세검색이 적용됩니다. 충돌이 있으면 마지막 파일(finishing_touches.lkml)의 상세검색이 우선 적용됩니다.

상세검색은 포함 순서를 사용하므로 상세검색에 와일드 카드를 사용해서는 안 됩니다. 일반적으로 프로젝트에 많은 수의 뷰 파일이 있는 경우 또는 프로젝트에 영구 파생 테이블 (PDT)을 사용하는 경우 어차피 뷰에 와일드 카드를 사용하지 않는 것이 좋습니다. 그러나 상세검색의 경우 와일드 카드에는 와일드 카드를 사용하지 않는 것이 좋습니다.

final: yes를 사용하여 추가적인 상세검색 방지

앞서 설명한 것처럼 같은 객체는 여러 위치에서 상세검색할 수 있고 마지막 상세검색은 이전의 모든 상세검색을 재정의합니다.

보기 또는 탐색의 최종 상세검색으로 간주할 상세검색이 있는 경우 상세검색에 final: yes 플래그를 추가할 수 있습니다. 이 최종 상세검색 이후에 적용될 기존 상세검색이 있거나 개발자가 최종 상세검색 다음에 적용될 새 상세검색을 추가하려고 하면 Looker IDE에서 LookML 오류를 반환합니다. 예를 들어 이 뷰 파일의 두 번째 상세검색에서는 LookML 오류가 발생합니다. 이전 상세검색에 final: yes 플래그가 있기 때문입니다.

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라는 탐색 속성과 이를 상세검색하는 +orders 탐색이 있습니다.

explore: orders {
  view_name: orders
  # other Explore parameters
}

explore: +orders {
  label: "Orders Information"
  # other Explore parameters to build on the original Explore
}

이 외에도 extends를 포함하는 상세검색을 추가할 수 있습니다. 예시를 기반으로 다시 살펴보면 동일한 orders 탐색이 있습니다. 또한 users_base라는 기본 탐색이 있으며, 이제 +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 탐색을 확장합니다.

Looker에서 상세검색 내에서 extends를 구현하는 방법

상세검색 내에서 객체 확장은 고급 LookML 개념입니다. 상세검색에서 extends를 사용하기 전에 다음 사항을 자세히 이해해야 합니다.

  • Looker에서 extends을 구현하는 방법: LookML 요소가 확장ed 객체 및 확장ing 객체에서 모두 정의된 경우 매개변수가 추가되지 않는 한 확장 객체의 버전이 사용됩니다. 자세한 내용은 확장 프로그램에서 코드 재사용 문서를 참조하세요.
  • Looker에서 상세검색을 구현하는 방법: LookML 요소가 여러 상세검색에 정의된 경우 마지막 상세검색이 이전 상세검색보다 우선 적용됩니다. 자세한 내용은 이 페이지의 세부사항을 순서대로 적용 섹션을 참조하세요.

마지막으로, 상세검색에 extends을 구현하기 위해 Looker가 이러한 원칙을 어떻게 결합하는지 이해해야 합니다. 다음은 Looker에서 구현하는 순서이며, 각 단계는 충돌이 발생하는 경우 이전 단계를 재정의합니다.

  1. 객체에 지정된 extends의 값
  2. 객체의 상세검색에 지정된 extends의 값
  3. 객체의 값
  4. 상세검색의 값

다음은 구현의 각 단계를 통해 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 탐색 분석에 label 값을 구현하는 방법입니다.

  1. 객체에 지정된 extends의 값 orders 탐색에는 extends 매개변수가 있으므로 Looker는 확장되는 객체의 LookML 요소로 시작합니다. 이 경우에는 orders_base 탐색입니다. 이 시점에서 label 값은 'Order Base'입니다.
  2. 객체 상세검색에 지정된 extends의 값입니다. orders에는 상세검색이 있고 상세검색에는 extends 매개변수가 있으므로 Looker는 상세검색 확장 프로그램의 LookML 요소를 적용합니다. 이 경우에는 users_base 탐색입니다. 이 시점에서 label 값은 "사용자 기반'입니다.
  3. 객체의 값: 이제 모든 확장 프로그램이 해결되었으므로 Looker는 확장 객체의 요소(이 경우에는 orders 탐색)를 적용합니다. 충돌이 있는 경우 확장 객체가 이깁니다. 따라서 이제 label 값은 "주문"입니다.
  4. 객체 상세검색의 값입니다. 마지막으로 Looker는 orders 탐색 분석의 모든 상세검색에서 요소를 적용합니다. 충돌이 있으면 상세검색 객체가 우선 적용됩니다. 따라서 이제 label 값은 '주문 상세검색'입니다.

상세검색 extends이(가) 중복됩니다.

이 페이지의 상세검색 재정의 매개변수 섹션에 설명된 대로 상세검색은 일반적으로 객체의 원래 설정을 재정의합니다. extends 매개변수에는 적용되지 않습니다. 상세검색에 extends가 사용된 경우 extends 매개변수의 값이 원래 객체나 이전 상세검색에서 확장된 항목 목록(있는 경우)에 추가됩니다. 그런 다음 충돌이 있으면 확장 체인의 마지막 항목에 우선순위가 부여됩니다.

예를 들어 다음은 orders_base라는 기본 탐색과 이 기반을 확장하는 orders 탐색입니다. 또한 users_base 탐색 및 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 탐색이 orders_base를 확장하면 +orders 상세검색은 users_baseextends 목록에 추가합니다. 따라서 이제 +orders 탐색이 마치 탐색의 원래 LookML인 것처럼 orders_baseusers_base를 모두 확장합니다.

explore: orders {
  extends: [orders_base, users_base]
}

그런 다음 충돌이 있으면 확장 체인의 마지막 항목에 우선순위가 부여됩니다. 이 예에서 users_base의 요소는 orders_base의 충돌하는 요소를 재정의합니다.

한 번에 둘 이상의 객체를 확장한다는 개념은 확장으로 코드 재사용 문서 페이지에 설명되어 있습니다.

마지막으로 이 매개변수에서 explore 매개변수의 순서는 중요하지 않습니다. 그러나 동일한 객체에 대한 상세검색이 여러 개 있는 경우 상세검색의 순서가 중요합니다. 이 페이지의 세분화가 순서대로 적용됨 섹션에 설명된 대로 파일의 마지막 상세검색이 이전 상세검색보다 우선 적용됩니다.

LookML 프로젝트에서 상세검색 사용

다음은 프로젝트의 뷰 및 탐색 범위를 구체화하는 광범위한 단계입니다.

  1. 상세검색할 뷰 또는 탐색을 식별합니다.
  2. 상세검색을 저장할 위치를 결정합니다. 기존 LookML 파일에 상세검색을 추가하거나 상세검색에 별도의 LookML 파일을 만들 수 있습니다. 일반 LookML 파일을 만드는 예시는 다른 프로젝트 파일 이해 문서 페이지의 데이터 테스트 파일 만들기 절차를 참조하세요.
  3. include 매개변수를 사용하여 상세검색을 모델에 통합합니다.
    • 상세검색을 작성하는 파일에는 상세검색하는 LookML의 파일을 포함해야 합니다. 포함되지 않은 객체를 미세 조정하려고 하면 Looker IDE에서 경고를 표시합니다.
    • 모델 파일에 상세검색이 정의된 파일을 포함합니다. 파일을 조합하고 포함을 매우 창의적인 방식으로 사용할 수 있습니다. 자세한 내용은 이 페이지의 세분화를 사용하여 모델에 레이어 추가 섹션을 참조하세요.

LookML 객체를 미세 조정하면 원본 LookML을 수정하지 않고도 뷰와 탐색을 쉽게 조정할 수 있습니다. 이 방법은 다른 프로젝트에서 가져온 파일을 사용하는 등 프로젝트에서 보기와 탐색이 읽기 전용인 경우 특히 유용합니다. 다음은 탐색 분석을 미세 조정하는 예입니다.

다음은 aircraft 탐색의 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
  }
}

이 탐색 분석에는 여러 개의 뷰가 있으며, 각 보기는 많은 측정기준을 가지고 있습니다.

이제 e_faa_refined라는 또 다른 LookML 프로젝트가 aircraft 탐색 파일을 가져옵니다. e_faa_refined 프로젝트에서 미세 조정을 사용하여 aircraft 탐색을 크게 간소화할 수 있습니다.

aircraft 탐색은 가져온 파일이므로 직접 수정할 수 없습니다. 대신 상세검색을 추가할 수 있습니다. 다음은 이 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 탐색 상세검색:
    • 탐색 이름 앞에 있는 + 기호는 기존 탐색에 대한 상세검색을 나타냅니다.
    • label 매개변수가 '탐색' 라벨을 '항공기 간소화'로 변경합니다.
    • fields 매개변수는 탐색에서 세 개의 필드만 표시되도록 지정합니다.

최종 결과는 aircraft 탐색 및 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
  }
}

상세검색의 기타 사용 사례

앞서 언급했듯이 상세검색은 Looker 블록 또는 가져온 파일과 같이 읽기 전용인 LookML 객체를 조정하는 데 적합합니다.

그러나 상세검색을 추가하고 모델에 포함하는 것을 확인하면 다음 예시에 설명된 대로 프로젝트에 매우 유용한 작업을 수행할 수 있습니다.

상세검색을 사용하여 분석 추가

상세검색을 사용하여 원본 LookML 파일을 터치하지 않고도 모델에 분석을 추가할 수 있습니다. 예를 들어 뷰와 탐색이 데이터베이스의 테이블에서 생성되고 faa_basic.lkml라는 LookML 파일에 저장되는 프로젝트가 있는 경우 상세검색을 사용하여 분석을 추가하는 faa_analysis.lkml 파일을 만들 수 있습니다. 다음은 거리 분석이 포함된 distance_stats라는 새 파생 테이블의 예시입니다. 이 예시에서는 distance_stats 파생 테이블을 flights 탐색으로 조인하는 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 프로젝트에는 데이터베이스의 테이블에서 생성된 모든 뷰와 탐색이 포함된 faa_raw.lkml 파일이 있습니다. 이 파일에는 데이터베이스의 각 테이블마다 뷰가 있으며, 각 데이터베이스 테이블은 데이터베이스 열마다 측정기준이 있습니다.

원시 파일 외에도 다음과 같이 faa_basic.lkml 파일을 만들어 탐색에 조인을 추가하거나 뷰에 측정값을 추가하는 등 기본 상세검색이 포함된 새 레이어를 추가할 수 있습니다.

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 모델 현지화 문서 페이지를 참고하세요.