레이크하우스 데이터 제공

Unity 카탈로그 테이블을 Postgres에 동기화하고 운영 데이터와 함께 쿼리합니다.

단계: (1) 분석 데이터 → 만들기 (2) Lakebase → 동기화 (3) Postgres → (4) 두 세계의 쿼리에서 데이터 찾기

메모

빠른 시작입니다. 전체 설명서는 테이블 동기화를 참조하세요.

시작하기 전 주의 사항:

  • Postgres 데이터베이스 가져오기를 완료했는지 확인합니다. 샘플 데이터가 있는 Lakebase 프로젝트가 필요합니다.
  • Unity Catalog 쿼리를 위한 SQL 웨어하우스 또는 노트북입니다.
  • 동기화된 테이블을 생성할 스키마에 대해 USE_SCHEMACREATE_TABLE 권한이 필요합니다.

1단계: Unity 카탈로그에서 분석 데이터 만들기

데이터 팀이 레이크하우스에서 사용자 세분화 점수를 구축했다고 상상해 보세요. 프로덕션 환경에서는 골드 테이블, ML 출력 또는 보강된 데이터 세트가 됩니다. 이 가이드에서는 작은 샘플을 만듭니다.

SQL 웨어하우스 또는 Notebook에서 다음을 실행합니다.

CREATE TABLE main.default.user_segments AS
SELECT * FROM VALUES
  (1, 'power_user', 0.92),
  (2, 'casual', 0.35),
  (3, 'power_user', 0.88)
AS segments(user_id, segment, engagement_score);

user_id 값이 get-started의 playing_with_lakebase 테이블에 있는 id 열과 일치하는지 확인하세요. 그것은 의도적입니다. 4단계에서 그들과 합류하게 됩니다.

자세한 정보: 지원되는 원본 유형

2단계: 테이블을 Lakebase에 동기화

카탈로그 탐색기에서 사용자의 user_segments 테이블로 이동한 다음, 이를 기반으로 동기화된 테이블을 생성합니다. Lakebase 프로젝트의 databricks_postgres 데이터베이스를 대상으로 선택하고 스냅샷 을 동기화 모드로 선택합니다. 스냅샷은 시작에 가장 간단한 옵션인 데이터를 한 번 복사합니다.

동기화가 자동으로 실행됩니다. 완료되면 Lakebase 데이터베이스에 새 읽기 전용 테이블이 나타납니다. Unity Catalog의 스키마 이름은 Postgres 스키마 이름이 되며, 테이블 이름에는 _synced 접미사가 붙습니다: default.user_segments_synced.

자세한 정보: 동기화된 테이블 만들기(전체 프로시저) | 동기화 모드

3단계: Postgres에서 데이터 찾기

Lakebase SQL 편집기로 전환합니다. 이제 Unity 카탈로그의 분석 데이터를 표준 Postgres SQL로 쿼리할 수 있습니다. 사용자 1찾기:

SELECT * FROM "default".user_segments_synced WHERE user_id = 1;

메모

default 는 PostgreSQL 예약 키워드이므로 따옴표로 묶어야 합니다. 동기화된 테이블 스키마는 Unity 카탈로그 스키마 이름을 상속하므로 스키마 이름이 지정 default되면 항상 쿼리에서 인용해야 합니다.

사용자 1, 세그먼트 power_user, 참여 점수 0.92가 표시되어야 합니다. 이 행은 Unity 카탈로그에서 만든 행과 동일하며, 이제 짧은 대기 시간 읽기를 사용하여 Postgres에서 사용할 수 있습니다.

자세한 정보: 데이터 형식 매핑

4단계: 두 환경에 걸쳐 쿼리하기

핵심은 이렇습니다. playing_with_lakebase 테이블에 운영 데이터가 있습니다. user_segments_synced 테이블에는 레이크하우스 분석이 있습니다. 참여하세요:

SELECT
  p.id,
  p.name,
  p.value,
  s.segment,
  s.engagement_score
FROM playing_with_lakebase p
JOIN "default".user_segments_synced s ON p.id = s.user_id;

이제 애플리케이션에서 보강된 데이터를 제공할 수 있습니다. 단일 Postgres 쿼리는 앱이 알고 있는 내용(이름, 값)과 Lakehouse가 계산한 항목(세그먼트, 점수)을 결합합니다. Lakehouse에 대한 API 호출, 동기화 스크립트 없음, 대기 시간 페널티 없음

자세한 정보: 용량 계획

다음 단계