Looker Marketplace 블록 맞춤설정

Looker BlocksTM는 일반적인 분석 패턴 및 데이터 소스를 위해 사전 빌드된 데이터 모델입니다. 이 페이지에서는 개발자가 Looker Marketplace에서 설치된 Looker 블록을 맞춤설정하는 방법을 설명합니다. Looker Marketplace는 애플리케이션, 시각화, 플러그인과 같은 여러 유형의 Looker 콘텐츠를 찾고, 배포하고, 관리하는 데 사용되는 중앙 위치입니다.

현재 Looker Marketplace에서 사용할 수 없는 블록 및 대체 블록 맞춤설정 방법을 비롯하여 사용 가능한 모든 Looker 블록에 대한 자세한 내용은 Looker 블록 문서 페이지를 참고하세요.

Looker Marketplace에서 Looker 블록 설치 및 관리 요구사항

Looker Marketplace에서 일부 블록을 설치하고 사용하려면 Looker 관리자가 다음 기능을 사용 설정해야 합니다.

  • Looker Marketplace를 통해 블록을 설치하는 경우 Looker 관리자가 Marketplace 기능을 사용 설정해야 합니다.
  • 특정 블록에 local_dependency 매개변수가 포함된 경우 Looker 관리자는 로컬 프로젝트 가져오기 실험실 기능도 사용 설정해야 합니다. 이러한 블록에는 local_dependency 매개변수가 포함됩니다.

    • 디지털 마케팅 분석
    • 영업 분석
    • 웹 애널리틱스

사용자에게 Marketplace에서 패키지를 설치하고 관리하려면 develop, manage_models, deploy 권한이 있어야 합니다.

Looker Marketplace에서 Looker 블록 설치관리에 대한 자세한 내용은 Looker Marketplace 문서 페이지를 참조하세요.

마켓플레이스 블록의 LookML 액세스

상세검색을 사용하는 프로젝트를 기반으로 하는 블록은 수정 가능한 단일 CONFIG 프로젝트로 Marketplace에서 설치됩니다. 이 프로젝트는 모든 LookML 코드와 상수 매개변수화를 포함하는 CORE 프로젝트를 원격으로 가져옵니다.

Marketplace에서 블록이 설치되면 개발 메뉴에서 프로젝트 목록에 있는 프로젝트의 이름을 클릭하여 프로젝트에 액세스할 수 있습니다. 마켓플레이스 상세검색 블록의 이름은 일반적으로 marketplace_ 뒤에 목록 ID가 붙습니다.

블록의 읽기 전용 CORE 프로젝트를 직접 수정할 수는 없지만 블록의 CONFIG 파일을 맞춤설정할 때 블록의 읽기 전용 CORE 파일을 참조로 사용하는 것이 좋습니다. IDE에서 차단의 프로젝트 파일로 이동하고 IDE 파일 브라우저에서 imported_projects 디렉터리를 펼치면 블록의 CORE 파일을 확인할 수 있습니다.

블록 파일 구조

미세 조정을 위해 빌드된 블록을 설치하면 이러한 파일이 블록 프로젝트의 CONFIG 과정의 일부로 자동 생성됩니다.

파일 이름 액세스 함수
<model_name>.model.lkml 모든 사용자의 읽기 전용 액세스 권한 블록 설치와 연결된 가상 모델 파일로, 블록의 CORE 프로젝트에서 모델 가져오기를 처리합니다. 블록이 제거되거나 업데이트되면 연결된 모델 파일이 하나 이상 삭제되므로 여러 블록 설치 간의 모델 충돌이 방지됩니다.
manifest.lkml develop 권한이 있는 사용자가 수정할 수 있습니다. 프로젝트와 프로젝트의 외부 종속 항목을 설명합니다. 블록 설치의 Marketplace 목록 ID가 포함되며 marketplace 키워드를 통해 차단의 CORE 프로젝트 파일을 원격으로 가져올 수 있습니다.
marketplace_lock.lkml 모든 사용자의 읽기 전용 액세스 권한 CORE 프로젝트의 원격 가져오기를 처리하는 매니페스트 파일의 marketplace_ref 키워드에 대한 참조를 포함합니다. 설치와 연결된 특정 목록, 버전, 모델 정보를 제공합니다. 설치 중에 구성되고 Marketplace UI에서 관리 옵션을 사용하여 업데이트할 수 있는 상수에 대한 정보가 포함되어 있습니다.
refinements.lkml develop 권한이 있는 사용자가 수정할 수 있습니다. 개발자가 가져온 CORE 프로젝트 파일에 정의된 뷰 및 탐색을 미세 조정할 수 있습니다.

마켓플레이스 블록 맞춤설정

개발 모드를 사용 설정하여 블록의 수정 가능한 파일을 맞춤설정합니다.

develop 권한이 있으면 블록의 CONFIG 프로젝트의 refinements.lkml 파일에서 LookML을 맞춤설정할 수 있습니다. 이미 블록의 CORE 프로젝트에 정의된 뷰 및 탐색을 미세 조정하거나 CORE 프로젝트에 아직 정의되지 않은 새 뷰 및 탐색을 추가할 수도 있습니다. 다른 LookML 프로젝트의 LookML 개선을 통해 가능한 모든 작업은 블록의 refinements.lkml 파일에서 가능합니다. 상세검색과 원래 LookML의 조합은 마치 객체의 원래 LookML처럼 작동합니다.

CONFIG 프로젝트의 manifest.lkml 파일을 변경하여 해당 블록에서 캡처해야 하는 종속 항목을 지정할 수도 있습니다.

원하는 맞춤설정을 수행하기 위해 이러한 파일을 수정하는 것은 제한되지 않습니다. CONFIG 프로젝트에서 새 파일을 만들 수도 있습니다. refinements.lkml 파일에 새 파일을 include하기만 하면 됩니다.

상세검색 파일 맞춤설정

develop 권한이 있으면 커스텀 LookML을 CONFIG 프로젝트에 추가하여 추가 데이터를 혼합하거나 블록의 핵심 분석 모델을 변경할 수 있습니다. 새 뷰를 만들어 기존 탐색 분석에 조인하거나, 새 필드를 정의하거나, 기존 필드를 재정의하거나, 필요에 따라 라벨을 적용하여 제공할 분석을 위한 모델을 만들 수 있습니다. CONFIG 프로젝트에서 새 파일을 만든 경우 상세검색 파일에서 include해야 합니다.

예를 들어 블록을 설치했고 해당 refinements.lkml 파일에 다음이 포함되어 있다고 가정해 보겠습니다.

include: "//<listing_id>/**/*.view.lkml"
include: "//<listing_id>/**/*.explore.lkml"

여기서 listing_idmanifest.lkml 파일의 listing 매개변수 값입니다.

상세검색을 사용하여 flights라는 뷰에 새 측정기준을 추가할 수 있습니다.

include: "//<listing_id>/**/*.view.lkml"
include: "//<listing_id>/**/*.explore.lkml"

view: +flights {
  dimension: air_carrier {
    type: string
    sql: ${TABLE}.air_carrier ;;
  }
}

또는 탐색 분석에 aircraft라는 라벨을 적용하여 UI에 항공기 간소화로 표시할 수 있습니다.

include: "//<listing_id>/**/*.view.lkml"
include: "//<listing_id>/**/*.explore.lkml"

explore: +aircraft {
  label: "Aircraft Simplified"
}

refinements.lkml 파일은 기본적으로 CORE 프로젝트에서 모델을 가져오는 블록 '가상' 모델 파일에 포함됩니다.

이 고급 주제에 대한 자세한 내용은 LookML 개선 문서를 참고하세요.

수정 가능한 매니페스트 파일 맞춤설정

상세검색을 사용하는 블록에는 CORE 및 CONFIG 프로젝트에 모두 매니페스트 파일이 있지만 CONFIG 프로젝트의 매니페스트 파일만 수정할 수 있습니다.

CONFIG manifest.lkml 파일을 수정하여 이미 CORE 프로젝트의 매니페스트 파일에 표시된 프로젝트에 프로젝트 매개변수를 추가할 수 있습니다. 예를 들어 local_dependency를 추가하여 동일한 Looker 인스턴스의 다른 블록에 블록을 조인할 수 있습니다.

local_dependency 매개변수가 포함된 블록을 사용하거나 빌드하려면 먼저 Looker 관리자가 로컬 프로젝트 가져오기 실험실 기능을 사용 설정해야 합니다.

상수 값 업데이트

블록의 상수는 가져온 CORE 프로젝트의 매니페스트 파일에 정의되어 있습니다. 상수 값을 허용하는 경우 구성 중에 Marketplace UI에서 차단하거나 블록을 업데이트하여 실행해야 합니다. 차단을 업데이트하려면 사용자에게 develop, manage_models, deploy 권한이 있어야 합니다.

블록을 업데이트하여 상수 값을 재정의하는 방법:

  1. Looker Marketplace에서 업데이트할 블록으로 이동합니다.
  2. 관리 버튼을 클릭합니다.
  3. 업데이트할 블록 이름 옆에 있는 톱니바퀴 아이콘을 클릭합니다. 이렇게 하면 차단 구성 창이 열립니다.
  4. 필요에 따라 상수 값을 변경합니다.
  5. 업데이트를 클릭하여 블록 구성 창을 닫고 변경사항을 블록에 업데이트합니다.

설치된 프로젝트의 읽기 전용 marketplace_lock.lkml 파일에 변경사항이 반영됩니다.

확장 프로그램을 사용하는 마켓플레이스 블록의 맞춤설정 유지

Looker Marketplace에서 사용할 수 있는 블록 중 일부는 LookML 확장 프로그램을 사용하는 프로젝트로 구성되어 있습니다. Looker는 Looker 21.8 이상 버전의 모든 Marketplace 블록을 LookML 개선을 사용하는 프로젝트 구조로 변환하고 있으며 확장을 기반으로 하는 블록에 대한 지원을 삭제할 예정입니다.

Looker는 인스턴스에 있는 마켓플레이스 블록의 상세검색 기반 버전을 설치하는 것이 좋으며, 이러한 블록은 사용할 수 있게 되면 확장으로 빌드된 블록을 대체합니다. 이 교체 프로세스는 간단하지만 Looker Marketplace 차단 목록에서 새로운 (조정) 블록을 설치하고 Looker Marketplace의 관리 페이지에서 원래 (확장) 블록을 제거할 수는 있습니다. 하지만 확장 프로그램을 통해 구축된 블록에 적용되었던 맞춤설정은 유지되지 않습니다. 또한 Looker는 해당 콘텐츠를 기반으로 하는 Looker 콘텐츠 또는 기능(대시보드, 탐색, 예약된 콘텐츠 전송, 알림)을 원래의 블록에서 새 블록으로 이전하지 않습니다.

이 섹션에서는 확장 프로그램을 사용하여 빌드한 블록에 맞춤설정을 유지하는 방법을 설명합니다. 확장 프로그램은 처음부터 복제하기 어렵거나 시간이 오래 걸리는 확장 기능을 사용합니다.

블록의 맞춤설정을 유지하려면 Marketplace에서 패키지를 설치 및 관리할 수 있는 사용자가 다음을 수행해야 합니다.

  1. 기존 블록의 CONFIG 프로젝트를 업데이트하여 이전 준비하기
  2. Looker Marketplace에서 새 버전의 블록 설치
  3. 맞춤설정을 새 Marketplace 차단으로 이전하기
  4. 원래 블록을 기준으로 Looker 콘텐츠 다시 만들기
  5. 확장 프로그램으로 빌드된 블록의 버전 제거

마이그레이션 차단을 위한 맞춤설정된 블록 업데이트

이 섹션에서는 블록으로 맞춤설정한 내용을 새로운 상세검색 기반 블록에 복사할 수 있도록 확장 프로그램으로 빌드된 블록의 주요 프로젝트 파일을 업데이트하는 방법을 설명합니다. 확장 프로그램을 사용하는 프로젝트를 기반으로 하는 블록은 Marketplace에서 읽기 전용 CORE 프로젝트 및 수정 가능한 CONFIG 프로젝트로 설치됩니다.

  1. 다음 방법 중 하나를 사용하여 개발 섹션에서 블록의 CONFIG 프로젝트로 이동합니다.

    • 프로젝트 옵션을 클릭한 후 프로젝트의 이름을 클릭합니다.
    • 프로젝트 목록에서 블록의 CONFIG 프로젝트 이름을 클릭합니다.

    CONFIG 프로젝트 이름은 일반적으로 _config로 끝나지만 CORE 프로젝트 이름에는 일반적으로 접미사가 없습니다.

  2. 프로젝트의 모델 파일을 엽니다. 파일의 형식은 다음과 같습니다.


    explore: ga_sessions_config {
      extends: [ga_sessions_core]
      extension: required
      join: user_sales_data {
        sql_on: ${user_sales_data.full_visitor_id} = ${ga_sessions.full_visitor_id} ;;
      }
      join: sales__by__category {
        sql: LEFT JOIN UNNEST(${user_sales_data.sales_by_category}) as sales__by__category;;
      }
    }

    explore: future_input_config {
      extends: [future_input_core]
      extension: required
      join: future_purchase_prediction {
        type: left_outer
        sql_on: ${future_input.full_visitor_id} = ${future_purchase_prediction.full_visitor_id} ;;
        relationship: one_to_one
      }
    }

  1. 개발 모드에서:

    1. extendsextension 줄을 모두 삭제합니다.
    2. explore 이름에서 _config를 삭제합니다.
    3. explore 이름 앞에 +을 추가합니다.

    이전 모델 파일의 예시는 다음과 같습니다.


    explore: +ga_sessions {
      join: user_sales_data {
        sql_on: ${user_sales_data.full_visitor_id} = ${ga_sessions.full_visitor_id} ;;
      }
      join: sales__by__category {
        sql: LEFT JOIN UNNEST(${user_sales_data.sales_by_category}) as sales__by__category;;
      }
    }

    explore: +future_input {
      join: future_purchase_prediction {
        type: left_outer
        sql_on: ${future_input.full_visitor_id} = ${future_purchase_prediction.full_visitor_id} ;;
        relationship: one_to_one
      }
    }

  1. 이후 단계를 위해 이 파일의 내용을 복사하여 보관합니다.

새 Marketplace 블록 설치

확장에서 상세검색으로의 전환이 이미 발생한 블록에 대한 자세한 내용은 Looker 21 출시 하이라이트를 참고하세요. 버전 번호를 확인하여 확장 차단 목록과 상세검색 차단 목록을 구분할 수 있습니다. 확장 블록은 상세검색 블록 뒤에 있는 메이저 버전입니다. 예를 들어 확장 블록은 버전 1.0.4, 상세검색 블록은 버전 2.0.0일 수 있습니다.

상세검색을 사용하는 프로젝트를 기반으로 하는 블록은 Marketplace에서 모든 LookML 및 상수 매개변수화가 포함된 프로젝트를 원격으로 가져오는 수정 가능한 단일 LookML 프로젝트로 설치됩니다.

  1. Looker 메뉴 바에서 쇼핑 아이콘을 선택하여 Looker Marketplace로 이동합니다.
  2. 상세검색 기반의 새 Marketplace 차단 등록정보를 클릭합니다. 이 블록은 확장으로 빌드한 기존 블록과 이름이 동일합니다.
  3. 설치를 클릭하여 새 블록을 설치합니다. 이 차단이 설치되면 Looker Marketplace의 관리 페이지에 동일한 등록정보 두 개가 표시됩니다.

새 마켓플레이스 블록으로 맞춤설정 이전

이 섹션에서는 기존 (확장) 블록에 대한 업데이트를 새 (조정) 블록으로 전송하는 방법을 설명합니다.

  1. 개발 섹션에서 다음 방법 중 하나로 새 블록 프로젝트를 엽니다.

    • 프로젝트 옵션을 클릭한 후 프로젝트의 이름을 클릭합니다.
    • 프로젝트 목록에서 블록 프로젝트의 이름을 클릭합니다.

    마켓플레이스 상세검색 블록의 이름은 일반적으로 marketplace_ 뒤에 목록 ID가 붙습니다.

  2. refinements.lkml 파일에 원본 (확장) 블록 모델 파일의 업데이트된 콘텐츠를 붙여넣습니다. 상세검색 파일에 이미 있는 include 문은 모두 보관해야 합니다.

원본 블록을 기준으로 Looker 콘텐츠 다시 만들기

마켓플레이스 블록의 상세검색 기반 버전을 채택하는 마지막 단계는 원래의 확장 기반 차단 버전을 제거하는 것입니다. 일부 확장 기반 블록에는 사전 빌드된 LookML 대시보드와 탐색이 포함되어 있습니다. 사용자가 기존 (확장) 블록에 정의된 LookML 대시보드를 기반으로 하는 알림 또는 예약된 전송을 만든 경우 Looker Marketplace에서 해당 차단이 제거되면 알림 또는 일정이 각각 사용 중지되거나 실패합니다.

새로운 LookML 대시보드에서 알림 또는 예약된 전송을 다시 만들어야 합니다. 일정알림에 대한 적절한 권한이 있는 Looker 관리자와 사용자는 관리 섹션의 알림 및 일정 페이지에서 (확장) 대시보드의 이름을 검색한 다음 필요에 따라 새 상세검색이나 예약된 전송을 만들 수 있습니다.

또한 필요에 따라 원본 (확장) 블록을 참조하는 다른 Looker 콘텐츠도 새 확장 (조정) 블록을 가리키도록 수정해야 합니다.

기존 차단 제거

확장 프로그램으로 빌드된 블록의 버전을 제거하려면 다음 안내를 따르세요.

  1. Looker 메뉴 바에서 쇼핑 아이콘을 선택하여 Looker Marketplace로 이동합니다.

  2. Looker Marketplace의 왼쪽 탐색 메뉴에서 관리를 선택하여 관리 페이지를 엽니다.

  3. 관리 페이지에서 휴지통 아이콘을 클릭하여 확장 원본을 제거합니다. 버전 번호를 확인하여 확장 차단 목록과 상세검색 차단 목록을 구분할 수 있습니다. 확장 블록은 상세검색 블록 뒤에 있는 메이저 버전입니다. 예를 들어 확장 블록은 버전 1.0.4, 상세검색 블록은 버전 2.0.0일 수 있습니다.

차단이 제거되면 Looker 인스턴스의 왼쪽 탐색에서 원래 (확장) 차단 목록이 사라지고, 탐색 분석이 탐색 섹션에서 사라지고, LookML 대시보드가 LookML 대시보드 폴더에서 사라지고, 차단의 LookML 대시보드를 기반으로 하는 알림 또는 예약된 전송이 각각 실패합니다.

차단 문제 해결하기

마켓플레이스 블록에 오류가 표시되는 경우 스키마가 블록의 구조와 일치하지 않기 때문일 수 있습니다.

또한 블록의 연결, 데이터베이스 또는 스키마를 나타내는 블록 설치 중에 제공된 상수가 올바르게 정의되었는지 확인할 수 있습니다. 방법은 다음과 같습니다.

  1. Looker 메뉴 바에서 쇼핑 아이콘을 선택하여 Looker Marketplace로 이동합니다.

  2. Looker Marketplace의 왼쪽 탐색 메뉴에서 관리를 선택하여 관리 페이지를 엽니다.

  3. 관리 페이지에서 블록의 톱니바퀴 아이콘을 클릭하여 구성 설정을 표시합니다.

  4. 구성 업데이트 창에서 블록이 올바르게 구성되었는지 확인합니다. 변경사항을 적용한 후 업데이트를 클릭하여 업데이트를 저장하고 블록 구성 창을 닫습니다.