Lovable한국어 문서

Google Cloud의 비즈니스 인텔리전스 플랫폼인 Looker에 앱을 연결해 분석 팀이 LookML로 관리하는 지표 정의로 대시보드와 리포팅 도구를 만듭니다.

Looker에 앱 연결하기

분석 팀이 LookML로 관리하는 지표 정의를 활용해 대시보드와 리포팅 도구를 만들도록 앱을 Looker에 연결합니다.

Looker는 Google Cloud의 비즈니스 인텔리전스 플랫폼입니다. Looker 커넥터를 사용하면 Lovable 앱이 LookML에 정의된 지표를 쿼리할 수 있습니다. LookML은 분석 팀이 데이터와 계산을 기술할 때 쓰는 모델링 언어입니다. 이미 존재하는 정의를 그대로 활용해 대시보드와 리포팅 도구를 만들 수 있습니다.

Looker는 앱 + 채팅 커넥터로 제공됩니다. 하나의 공유 연결이 빌드 중 프로젝트 채팅과 게시된 앱 양쪽에서 동작합니다.

Looker를 연결하면 앱은 다음 작업이 가능합니다.

  • Looker에서 쿼리의 출발점이 되는 model과 Explore 탐색
  • region이나 월 같은 dimension, 매출이나 주문 수 같은 measure 선택
  • 앱에 표시할 쿼리 결과를 필터링·정렬하고 개수 제한
  • 쿼리 디버깅에 도움이 되도록 Looker가 생성한 SQL 확인

분석 팀이 이미 관리하는 지표 정의를 앱에서 써야 할 때 Looker를 사용하세요. Looker가 그 정의로 데이터베이스 쿼리를 생성하므로 앱에서 계산식을 다시 만들 필요가 없습니다.

주요 활용 사례 및 예시 앱

Looker로 다음과 같은 내부 리포팅 도구를 만들 수 있습니다.

예시 앱예시 프롬프트설명
임원용 대시보드Looker를 사용해 기존 measure 정의로 월별 매출과 주문을 region 필터와 함께 보여주는 내부 대시보드를 만들어줘.매출과 주문을 한곳에서 검토합니다.
앱이 LookML measure를 월별로 쿼리하고 region으로 필터링합니다.
지표 탐색기Looker를 사용해 model과 Explore를 고른 다음 쿼리할 dimension과 measure를 선택하는 탐색기를 만들어줘.연결이 접근할 수 있는 데이터를 팀이 둘러보게 합니다.
앱이 model과 Explore를 나열하고 그에 맞는 필드 선택기를 구성합니다.
지역별 스코어카드Looker를 사용해 region을 매출 순으로 순위를 매기고 목표 미달 지역을 강조하는 스코어카드를 만들어줘.지역별 성과를 비교합니다.
앱이 매출 measure를 region으로 묶고 결과를 정렬합니다.
주간 지표 다이제스트Looker를 사용해 이번 주 핵심 measure를 지난주와 비교하는 주간 요약 페이지를 만들어줘.시간에 따른 변화를 추적합니다.
앱이 두 기간에 같은 measure를 실행하고 차이를 보여줍니다.
고객 지표 페이지Looker를 사용해 Customers Explore에서 각 계정의 사용량과 주문 합계를 보여주는 고객 대상 페이지를 만들어줘.고객에게 자신의 수치를 보여줍니다.
앱이 로그인한 고객의 계정으로 각 Looker 쿼리를 필터링합니다. 모든 쿼리가 동일한 Looker 계정으로 실행되므로 각 고객이 어떤 행을 볼지는 앱이 제어합니다.
지표 질문 앱Looker를 사용해 "지난 분기 West region 매출은 얼마였나요?" 같은 질문을 팀이 던지면 우리 Looker measure에서 답을 얻는 앱을 만들어줘.일상 언어로 지표 질문에 답합니다.
앱이 각 질문을 적절한 Explore, dimension, 필터를 쓰는 Looker 쿼리로 매핑합니다.

Looker 연결 방식

Lovable은 커넥터 게이트웨이를 통해 Looker를 호출합니다. 게이트웨이가 자격 증명을 안전하게 저장하고 액세스 토큰을 자동으로 갱신하므로, 앱 코드에 Looker 자격 증명을 둘 필요가 없습니다.

쿼리는 API 키를 소유한 Looker 계정으로 실행됩니다. 그 계정의 model 권한과 행 수준·필드 수준 제한이 게시된 앱을 포함해 이 연결을 쓰는 모든 사람에게 적용됩니다. 커넥터는 앱 사용자를 각각 Looker에 로그인시키지 않습니다.

전용 Looker service account를 사용하세요. service account는 사람이 로그인하지 않고 API 접근만을 위해 만든 Looker 계정입니다. 앱에 필요한 데이터에만 접근 권한을 주세요. 예를 들어 영업 대시보드라면 영업 model로 제한된 계정을 써야 합니다. 서로 다른 데이터가 필요한 팀에는 계정과 연결을 따로 만드세요.

커넥터는 읽기 전용 접근을 강제하지 않습니다. 계정에 권한이 있다면 연결이 Looker 콘텐츠를 변경하거나 삭제할 수 있습니다. 1단계에서 설명한 제한된 역할을 사용하고 admin 계정은 피하세요.

Looker 연결 방법

Looker 연결을 만들 수 있는 사람은 플랜과 워크스페이스 설정에 따라 달라집니다. 앱 + 채팅 커넥터는 Free, Pro, Business 플랜에서 기본으로 제공됩니다. Enterprise 플랜에서는 처음에 사실상 비활성화되어 있습니다. admin이 Connectors → Admin settings → App + chat connectors에서 바꾸기 전까지 연결과 클라이언트를 만들 수 있는 사람의 기본값은 No one입니다.

서로 다른 API 키로 Looker 연결을 여러 개 만들 수 있습니다. 접근 수준이나 인스턴스를 분리할 때 유용합니다.

연결을 만들면 사용하려는 프로젝트에 연결을 링크할 수 있습니다. 프로젝트에서 빌드하는 사람은 프로젝트 채팅에서 Lovable에 자기 프로젝트를 이 연결에 링크해 달라고 요청할 수 있습니다.

사전 준비

Looker를 연결하기 전에 다음을 확인하세요.

  • Google이 호스팅하는 Looker 인스턴스. *.looker.app 호스트의 Looker(Google Cloud core) 또는 *.cloud.looker.com 호스트의 Looker(original)여야 합니다. 커넥터는 yourcompany.looker.com이나 고객 소유 도메인 같은 다른 호스트를 받지 않습니다
  • service account와 그 역할, API 키를 만들어 줄 Looker admin
  • Lovable 워크스페이스에서 연결을 만들 권한(연결과 클라이언트를 만들 수 있는 사람 참조)

Looker 라이선스 비용과 웨어하우스 컴퓨트 비용은 Lovable 청구와 별개입니다. Looker service account는 할당된 역할에 따라 라이선스를 소비합니다. 앱에 필요한 라이선스 요건은 Looker admin에게 확인하세요.

쿼리는 Looker의 캐시된 결과를 반환할 수 있습니다. 최신 결과가 필요한 쿼리는 웨어하우스에서 실행되며 컴퓨트를 소비하므로, 필터와 행 개수 제한을 추가해 비용을 낮추세요.

1단계: Looker service account와 API 키 만들기

Looker admin에게 다음 단계를 요청하세요. 계정의 역할이 앱의 접근 범위를 결정합니다.

앱의 model로 제한된 역할 만들기

Looker에서 Admin → Roles를 엽니다. 앱에 필요한 model만 담은 model set과 그 model을 쿼리하는 permission set을 만듭니다. Explore 접근에는 explore와 그에 필요한 권한인 see_looks, access_data를 포함하세요. 두 set을 묶은 역할을 만듭니다. Looker의 역할·권한 참조 문서를 확인하세요.

계정을 데이터 읽기로 제한하려면 콘텐츠 저장, 개발, 관리 권한을 빼세요. 추가 역할이 더 넓은 접근을 허용할 수 있으니, 그룹에서 상속된 역할까지 포함해 할당된 모든 역할을 확인하세요.

service account 만들기

Admin → Users를 엽니다. Looker(Google Cloud core)에서는 Add Service Accounts를 클릭합니다. Looker(original)에서는 Add → Service Account를 클릭합니다. Service Account Name을 입력하고 Create default set of API credentials를 켠 상태로 두고, 제한된 역할을 할당한 뒤 Save를 클릭합니다. Looker의 service account 설정 문서를 확인하세요.

model이 access filter를 사용한다면, service account의 user attribute를 설정해 쿼리할 수 있는 행을 제한하세요.

API 키 가져오기

Admin → Users → Service Accounts에서 해당 계정을 엽니다. API Keys에서 Manage를 클릭합니다. 계정과 함께 만들어진 자격 증명을 쓰거나 Create New API Key를 클릭합니다. client ID와 client secret을 복사합니다. Looker의 API 키 관리 문서와 API 인증 안내서를 확인하세요.

client secret은 비밀번호처럼 동작합니다. 안전하게 보관하고 Lovable의 연결 양식에만 붙여 넣으세요. 프롬프트, 채팅 메시지, 앱 코드에는 넣지 마세요.

Looker 호스트 찾기

Looker 호스트는 Looker에 로그인한 상태에서 브라우저 주소창에 보이는 호스트 이름입니다. https://와 경로는 제외합니다. 예를 들어 yourcompany.cloud.looker.com 또는 41c03249-8fba-4acd-ae98-05a449d1bab3.looker.app입니다.

2단계: Looker를 Lovable에 연결하기

연결 양식을 열고 1단계에서 확보한 값을 입력합니다.

Connectors에서 Looker 열기

Connectors를 열고 Looker를 선택합니다. 카탈로그를 여는 다른 위치는 커넥터를 찾을 수 있는 곳을 참조하세요.

연결 추가

Add connection을 클릭하고 App + chat connector를 선택합니다. 양식은 접을 수 있는 Details, Configure connection, Sharing 세 섹션으로 나뉩니다.

연결 이름 지정

Details 아래에서 Lovable이 연결 이름을 채워 주며 원하는 대로 바꿀 수 있습니다(예: Looker Sales). 이 이름은 Lovable 안에서 연결을 식별하는 데만 사용됩니다. Looker 사용자의 접근 수준이 드러나는 이름을 쓰세요.

자격 증명 입력

Configure connection 아래에서 다음을 입력합니다.

  • Looker host: 1단계의 호스트 이름만 입력합니다(예: yourcompany.cloud.looker.com). https://나 경로가 포함된 값은 양식이 거부합니다
  • Client ID: 1단계에서 만든 API 키의 client ID
  • Client secret: client ID와 함께 발급된 client secret

이 연결을 사용할 수 있는 사람 선택

Sharing 아래에서 연결은 기본적으로 나에게만 비공개이며 Private label이 표시됩니다. 공유하려면 Share with others를 클릭합니다. 그런 다음 이메일로 워크스페이스 멤버를 추가하거나 Invite entire workspace를 클릭해 Lovable 워크스페이스의 모든 사람이 사용할 수 있게 합니다.

접근 권한이 있는 모든 사람이 동일한 Looker 사용자로 Looker를 쿼리합니다. 자세한 내용은 연결과 클라이언트를 사용할 수 있는 사람을 참조하세요.

연결

Connect를 클릭합니다. Lovable은 Looker에 인증하고 연결된 계정 정보를 읽어 자격 증명을 검증합니다.

연결 테스트가 성공해도 model 접근 권한이 확인된 것은 아닙니다. 연결을 프로젝트에 링크한 뒤, Lovable에 사용할 수 있는 model을 나열하게 하고 앱에 필요한 model에 쿼리를 실행해 보세요. model이 하나도 보이지 않으면 Looker admin에게 계정의 역할과 model set을 확인해 달라고 요청하세요.

연결되면 프로젝트에서 빌드하는 사람은 프로젝트 채팅에서 Lovable에 프로젝트를 Looker에 링크해 달라고 요청할 수 있습니다(구성된 연결 수준 접근 권한 기준). 그러면 Lovable 앱이 model과 Explore를 탐색하고, 빌드 중과 게시 후 모두 팀의 지표 정의를 사용하는 쿼리를 실행할 수 있습니다.

client secret이 바뀌면 Lovable에서 연결을 열고 Configure connection 아래의 Update를 클릭해 값을 교체하세요.

제한 사항

Looker로 빌드할 때 다음 제한을 염두에 두세요.

  • 지원 호스트. 호스트는 .looker.app 또는 .cloud.looker.com으로 끝나야 합니다. 커넥터는 yourcompany.looker.com과 고객 소유 도메인을 포함한 다른 호스트를 "Must be a bare Looker hostname" 오류로 거부합니다.
  • 공유 신원. 커넥터는 사용자별 Looker 로그인을 지원하지 않으며 앱 사용자마다 데이터를 자동으로 제한하지도 않습니다.
  • 대시보드 임베딩. 이 설정은 앱이 직접 그리는 차트에 쓸 쿼리 결과를 반환합니다. Looker 대시보드나 Looker의 저장된 보고서인 Look을 임베드하도록 설정해 주지는 않습니다.

Looker 연결 관리

연결은 Connectors에서 관리합니다. **Looker**를 선택한 뒤 연결을 엽니다.

  • Unlink projects를 사용하면 다른 프로젝트에서는 연결을 계속 쓸 수 있게 두면서 특정 프로젝트에서 Looker 접근만 제거할 수 있습니다. 단계는 연결에서 프로젝트 링크 해제를 참조하세요.
  • Delete the connection은 워크스페이스에서 연결을 완전히 제거합니다. 삭제는 영구적입니다. 연결된 모든 프로젝트에서 자격 증명이 제거되고, Looker를 사용하는 앱 기능은 새 연결을 추가할 때까지 동작을 멈춥니다. 단계와 삭제 권한은 연결 삭제를 참조하세요.

On this page