Data Lake Formation (DLF) adalah layanan yang sepenuhnya dikelola untuk menyimpan dan mengelola metadata serta data Paimon. Layanan ini mendukung berbagai kebijakan optimasi penyimpanan guna menyediakan manajemen data lake yang aman dan berkinerja tinggi. Topik ini menjelaskan cara menggunakan katalog DLF Alibaba Cloud di EMR Serverless StarRocks.
Informasi latar belakang
Alibaba Cloud Data Lake Formation (DLF) adalah platform yang sepenuhnya dikelola yang menyediakan layanan terpadu untuk metadata, penyimpanan data, dan manajemen.
Menggunakan DLF
Prasyarat
Anda telah membuat instans Serverless StarRocks. Untuk informasi selengkapnya, lihat Create an instance.
Instans tersebut harus menggunakan versi 3.3 atau lebih baru, dengan Minor Version 3.3.8-1.99 atau lebih baru.
CatatanAnda dapat melihat versi minor di bagian Version Information pada halaman Instance Details. Jika versi minornya lebih lama dari 3.3.8-1.99, Anda harus memperbaruinya. Untuk informasi selengkapnya, lihat Update the minor version.
Anda telah membuat data catalog di DLF.
Contoh: Menggunakan Katalog DLF
Langkah 1: Menambahkan pengguna di Serverless StarRocks
DLF menggunakan Resource Access Management (RAM) untuk kontrol akses. Secara default, pengguna StarRocks tidak memiliki izin apa pun terhadap resource DLF. Anda harus menambahkan pengguna RAM yang sudah ada dan memberikan izin yang diperlukan kepada pengguna tersebut. Jika Anda belum membuat pengguna RAM, lihat Create a RAM user.
Buka halaman daftar instans EMR Serverless StarRocks.
Masuk ke E-MapReduce console.
Pada panel navigasi sebelah kiri, pilih .
Pada bilah menu atas, pilih wilayah yang diperlukan.
Pada halaman Instance List, temukan instans Anda dan klik Connect To Instance di kolom Actions. Untuk informasi selengkapnya, lihat Connect to a StarRocks instance using EMR StarRocks Manager.
Anda dapat menghubungkan instans StarRocks menggunakan pengguna admin atau akun administrator super StarRocks.
Pada menu sebelah kiri, pilih , lalu klik Add User.
Pada kotak dialog Add User, konfigurasikan parameter berikut dan klik OK.
User Source: Pilih RAM User.
Username: Pilih pengguna RAM dari langkah sebelumnya (dlf-test).
Password dan Confirm Password: Masukkan password kustom.
Role: Pertahankan nilai default public.
Langkah 2: Memberikan izin pada katalog di DLF
Masuk ke Data Lake Formation console.
Pada halaman Data Catalog, klik nama katalog Anda.
Klik tab Permissions, lalu klik Grant.
Dari daftar drop-down Select Authorization Object, pilih pengguna RAM (dlf-test).
Atur Preset Permission Type menjadi Custom dan berikan izin ALL pada katalog data saat ini dan semua resource-nya kepada pengguna tersebut.
Klik OK.
Langkah 3: Membuat Katalog DLF di Serverless StarRocks
Paimon Catalog
Hubungkan ke instans. Untuk informasi selengkapnya, lihat Connect to a StarRocks instance using EMR StarRocks Manager.
PentingSambungkan kembali ke instans StarRocks menggunakan pengguna RAM yang Anda tambahkan di Langkah 1 (dlf-test). Anda akan menggunakan pengguna ini untuk membuat kueri SQL guna mengakses tabel eksternal DLF.
Untuk membuat kueri SQL, buka halaman Query List di SQL Editor dan klik ikon
.Buat
Paimon Catalog. Masukkan pernyataan SQL berikut dan klik Run.CREATE EXTERNAL CATALOG `dlf_catalog` PROPERTIES ( 'type' = 'paimon', 'uri' = 'http://cn-hangzhou-vpc.dlf.aliyuncs.com', 'paimon.catalog.type' = 'rest', 'paimon.catalog.warehouse' = 'StarRocks_test', 'token.provider' = 'dlf' );Membaca dan menulis data.
Buat database.
CREATE DATABASE IF NOT EXISTS dlf_catalog.sr_dlf_db;Buat tabel data.
CREATE TABLE dlf_catalog.sr_dlf_db.ads_age_pvalue_analytics( final_gender_code STRING COMMENT 'Gender', age_level STRING COMMENT 'Age level', pvalue_level STRING COMMENT 'Consumption level', clicks INT COMMENT 'Number of clicks', total_behaviors INT COMMENT 'Total number of behaviors' );Masukkan data.
INSERT INTO dlf_catalog.sr_dlf_db.ads_age_pvalue_analytics (final_gender_code, age_level, pvalue_level, clicks, total_behaviors) VALUES ('M', '18-24', 'Low', 1500, 2500), ('F', '25-34', 'Medium', 2200, 3300), ('M', '35-44', 'High', 2800, 4000);Kueri data.
SELECT * FROM dlf_catalog.sr_dlf_db.ads_age_pvalue_analytics;Gambar berikut menunjukkan hasil kueri.

Iceberg Catalog
Hubungkan ke instans. Untuk informasi selengkapnya, lihat Connect to a StarRocks instance using EMR StarRocks Manager.
PentingSambungkan kembali ke instans StarRocks menggunakan pengguna RAM yang Anda tambahkan di Langkah 1 (dlf-test). Anda akan menggunakan pengguna ini untuk membuat kueri SQL guna mengakses tabel eksternal DLF.
Pada halaman Query List di SQL Editor, klik ikon
untuk membuat kueri SQL.Buat
Iceberg Catalog. Masukkan pernyataan SQL berikut dan klik Run.CREATE EXTERNAL CATALOG `iceberg_catalog` PROPERTIES ( 'type' = 'iceberg', 'iceberg.catalog.type' = 'dlf_rest', 'uri' = 'http://cn-hangzhou-vpc.dlf.aliyuncs.com/iceberg', 'warehouse' = 'iceberg_test', 'rest.signing-region' = 'cn-hangzhou' );Kueri data.
CatatanTabel eksternal Iceberg bersifat read-only di StarRocks. Anda dapat menjalankan kueri
SELECT, tetapi tidak dapat menulis data ke tabel Iceberg dari StarRocks.select * from iceberg_catalog.`default`.test_iceberg;Gambar berikut menunjukkan hasil kueri.

Menggunakan DLF 1.0 (legacy)
Prasyarat
Anda telah membuat instans Serverless StarRocks. Untuk informasi selengkapnya, lihat Create an instance.
Anda telah membuat data catalog di DLF 1.0 (legacy). Untuk informasi selengkapnya, lihat Data Catalog.
Membuat katalog
Create a Hive Catalog
Sintaksis
CREATE EXTERNAL CATALOG <nama_katalog>
[COMMENT <komentar>]
PROPERTIES
(
"type" = "paimon",
ParameterKatalog,
ParameterKredensialPenyimpanan
);Parameter
catalog_name: Nama katalog Hive. Parameter ini wajib diisi. Nama harus memenuhi persyaratan berikut:Harus dimulai dengan huruf dan hanya boleh terdiri dari huruf (a-z atau A-Z), angka (0-9), dan garis bawah (_).
Panjang total tidak boleh melebihi 64 karakter.
comment: Deskripsi katalog Hive. Parameter ini opsional.type: Jenis sumber data. Atur nilai ini menjadihive.GeneralParams: Sekumpulan parameter untuk pengaturan umum.GeneralParamsmencakup parameter berikut.Parameter
Wajib
Deskripsi
enable_recursive_listing
Tidak
Menentukan apakah StarRocks membaca data secara rekursif dari file dalam direktori tabel atau partisi, termasuk subdirektori-nya. Nilai yang valid:
true (default): Melakukan traversal rekursif pada direktori.
false: Hanya membaca data dari file pada level saat ini di direktori tabel atau partisi.
MetastoreParams: Parameter terkait cara StarRocks mengakses metadata kluster Hive.Properti
Deskripsi
hive.metastore.type
Jenis layanan metadata yang digunakan oleh Hive. Atur nilai ini menjadi
dlf.dlf.catalog.id
ID data catalog yang sudah ada di DLF 1.0. Parameter ini hanya wajib jika
hive.metastore.typediatur menjadidlf. Jika parameterdlf.catalog.idtidak ditentukan, sistem akan menggunakan Katalog DLF default.
Contoh
CREATE EXTERNAL CATALOG hive_catalog
PROPERTIES
(
"type" = "hive",
"hive.metastore.type" = "dlf",
"dlf.catalog.id" = "sr_dlf"
);Untuk informasi selengkapnya tentang Hive Catalog, lihat Hive Catalog.
Create an Iceberg Catalog
Sintaks
CREATE EXTERNAL CATALOG <catalog_name>
[COMMENT <comment>]
PROPERTIES
(
"type" = "iceberg",
MetastoreParams
)Parameter
catalog_name: Nama katalog Iceberg. Parameter ini wajib diisi. Nama harus memenuhi persyaratan berikut:Harus terdiri dari huruf (a-z atau A-Z), angka (0-9), atau garis bawah (_), dan harus dimulai dengan huruf.
Panjang total tidak boleh melebihi 64 karakter.
Nama katalog bersifat case-sensitive.
comment: Deskripsi katalog Iceberg. Parameter ini opsional.type: Jenis sumber data. Atur nilai ini menjadiiceberg.MetastoreParams: Parameter agar StarRocks dapat mengakses layanan metadata kluster Iceberg.Properti
Deskripsi
iceberg.catalog.type
Jenis katalog di Iceberg. Nilainya harus
dlf.dlf.catalog.id
ID data catalog yang sudah ada di DLF. Jika Anda tidak mengonfigurasi parameter
dlf.catalog.id, sistem akan menggunakan katalog DLF default.
Contoh
CREATE EXTERNAL CATALOG iceberg_catalog_hms
PROPERTIES
(
"type" = "iceberg",
"iceberg.catalog.type" = "dlf",
"dlf.catalog.id" = "sr_dlf"
);Untuk informasi selengkapnya tentang Iceberg Catalog, lihat Iceberg Catalog.
Create a Paimon Catalog
Sintaks
CREATE EXTERNAL CATALOG <catalog_name>
[COMMENT <comment>]
PROPERTIES
(
"type" = "paimon",
CatalogParams,
StorageCredentialParams
);Parameter
catalog_name: Nama katalog Paimon. Parameter ini wajib diisi. Nama harus memenuhi persyaratan berikut:Harus dimulai dengan huruf dan hanya boleh terdiri dari huruf (a-z atau A-Z), angka (0-9), atau garis bawah (_).
Panjang total tidak boleh melebihi 64 karakter.
comment: Deskripsi katalog Paimon. Parameter ini opsional.type: Jenis sumber data. Atur parameter ini menjadipaimon.CatalogParams: Parameter agar StarRocks dapat mengakses metadata kluster Paimon.Properti
Wajib
Deskripsi
paimon.catalog.type
Ya
Jenis sumber data. Nilainya adalah
dlf.paimon.catalog.warehouse
Ya
Jalur penyimpanan warehouse tempat data Paimon disimpan. HDFS, OSS, dan OSS-HDFS didukung. Format untuk OSS atau OSS-HDFS adalah
oss://<yourBucketName>/<yourPath>.PentingJika Anda menggunakan OSS atau OSS-HDFS sebagai warehouse, Anda harus mengonfigurasi parameter aliyun.oss.endpoint. Untuk informasi selengkapnya, lihat StorageCredentialParams: Parameters for StarRocks to access the file storage of the Paimon cluster.
dlf.catalog.id
Tidak
ID data catalog yang sudah ada di DLF. Jika Anda tidak mengonfigurasi parameter
dlf.catalog.id, sistem akan menggunakan katalog DLF default.StorageCredentialParams: Parameter agar StarRocks dapat mengakses penyimpanan file kluster Paimon.Jika Anda menggunakan HDFS sebagai sistem penyimpanan, Anda tidak perlu mengonfigurasi
StorageCredentialParams.Jika Anda menggunakan OSS atau OSS-HDFS, Anda harus mengonfigurasi
StorageCredentialParams."aliyun.oss.endpoint" = "<YourAliyunOSSEndpoint>"Parameter dijelaskan dalam tabel berikut.
Properti
Deskripsi
aliyun.oss.endpoint
Informasi endpoint untuk OSS atau OSS-HDFS adalah sebagai berikut:
OSS: Buka halaman Overview bucket Anda dan temukan endpoint di bagian Access Ports. Anda juga dapat melihat OSS regions and endpoints untuk melihat endpoint wilayah yang sesuai. Contohnya,
oss-cn-hangzhou.aliyuncs.com.OSS-HDFS: Buka halaman Overview bucket Anda dan temukan endpoint untuk HDFS Service di bagian Access Ports. Sebagai contoh, endpoint untuk wilayah China (Hangzhou) adalah
cn-hangzhou.oss-dls.aliyuncs.com.PentingSetelah Anda mengonfigurasi parameter ini, Anda juga harus membuka halaman Instance Configuration di konsol EMR Serverless StarRocks. Kemudian, ubah parameter fs.oss.endpoint di
core-site.xmldanjindosdk.cfgagar konsisten dengan nilai aliyun.oss.endpoint.
Contoh
CREATE EXTERNAL CATALOG paimon_catalog
PROPERTIES
(
"type" = "paimon",
"paimon.catalog.type" = "dlf",
"paimon.catalog.warehouse" = "oss://<yourBucketName>/<yourPath>",
"dlf.catalog.id" = "paimon_dlf_test"
);Untuk informasi selengkapnya tentang Paimon Catalog, lihat Paimon Catalog.
Referensi
Untuk informasi selengkapnya tentang Paimon Catalog, lihat Paimon Catalog.