Bir DLF-Legacy kataloğunu yapılandırdıktan sonra, tablolarına Realtime Compute for Apache Flink konsolundan doğrudan erişebilirsiniz. Bu sayede Data Lake Formation (DLF) tablolarını manuel olarak kaydetme zorunluluğu ortadan kalkar; geliştirme verimliliği artar ve veri bütünlüğü sağlanır. Bu konuda DLF-Legacy kataloğunun nasıl oluşturulacağı, görüntüleneceği, kullanılacağı ve silineceği açıklanmaktadır.
Bu konu yalnızca DLF-Legacy için geçerlidir. DLF-Legacy yerine Data Lake Formation (DLF) hizmetinin en son sürümünü kullanmanızı öneririz. DLF'in yeni sürümünün nasıl kullanılacağı hakkında daha fazla bilgi için bkz. Paimon kataloglarını yönetme.
Genel bilgiler
Alibaba Cloud Data Lake Formation (DLF), birleşik bir meta veri yönetim hizmetidir. DLF'i kullanarak Iceberg, Hudi, Delta, Parquet, ORC ve Avro gibi açık kaynak biçimlerindeki tabloları yönetebilirsiniz.
Ön koşullar
DLF-Legacy hizmeti etkinleştirilmiş olmalıdır
Sınırlamalar
DLF-Legacy kataloğunda Flink, yalnızca Iceberg ve Hudi veri gölü biçimlerindeki tabloları yönetebilir.
DLF-Legacy kataloğu oluşturma
DLF-Legacy kataloğunu kullanıcı arayüzü (UI) veya SQL komutlarıyla oluşturabilirsiniz. Kullanıcı arayüzünü kullanmanızı öneririz.
Kullanıcı arayüzünü kullanma
-
Kataloglar sayfasına gidin.
Realtime Compute for Apache Flink konsoluna giriş yapın.
Hedef çalışma alanının Actions sütununda Console seçeneğine tıklayın.
Catalogs öğesine tıklayın.
Create Catalog seçeneğine tıklayın, DLF türünü seçin ve ardından Next seçeneğine tıklayın.
-
DLF-Legacy kataloğunu oluşturun.
-
Katalog parametrelerini yapılandırın.
Parametre
Açıklama
Zorunlu
Notlar
catalogname
DLF-Legacy kataloğunun adı.
Evet
Özel bir İngilizce ad girin.
access.key.id
Object Storage Service (OSS) hizmetine erişmek için kullanılan AccessKey ID.
Evet
Daha fazla bilgi için bkz. AccessKey çifti alma.
access.key.secret
Object Storage Service (OSS) hizmetine erişmek için kullanılan AccessKey Secret.
Evet
Daha fazla bilgi için bkz. AccessKey çifti alma.
warehouse
DLF-Legacy kataloğundaki tabloların depolandığı varsayılan OSS yolu.
Evet
Hem OSS hem de OSS-HDFS desteklenir.
-
OSS yolu formatı:
oss://<bucket>/<object> -
OSS-HDFS yolu formatı:
oss://<bucket>.<oss-hdfs-endpoint>/<object>
Yer tutucular aşağıda açıklanmıştır:
-
bucket: OSS paketinizin adı. Paket adını OSS konsolunda görüntüleyebilirsiniz.
-
object: Verilerinizin depolandığı yol. Yolu OSS konsolunda görüntüleyebilirsiniz.
-
oss-hdfs-endpoint: OSS-HDFS hizmetinin uç noktası. OSS konsolunda, bir paketin Overview sayfasında Access Ports bölümündeki HDFS service öğesinin endpoint değerini görüntüleyin.
NotBu parametre yalnızca VVR 8.0.3 ve sonraki sürümlerde bir OSS-HDFS yoluna ayarlanabilir.
oss.endpoint
Alibaba Cloud OSS hizmetinin uç noktası. Örneğin,
oss-cn-hangzhou-internal.aliyuncs.com.Evet
Hem OSS hem de OSS-HDFS desteklenir.
-
OSS hizmet uç noktası. Daha fazla bilgi için bkz. Bölgeler ve uç noktalar.
-
OSS-HDFS hizmet uç noktası. OSS console, bir paketin Overview sayfasında Access Ports bölümündeki HDFS service öğesinin endpoint değerini görüntüleyin.
Not-
oss.endpoint parametresini OSS için bir VPC uç noktasına ayarlamanızı öneririz. Örneğin, Çin (Hangzhou) bölgesindeyseniz oss.endpoint parametresini
oss-cn-hangzhou-internal.aliyuncs.comolarak ayarlayın. -
VPC'ler arasında OSS'e erişmeniz gerekiyorsa bkz. VPC'ler arasında diğer hizmetlere nasıl erişirim?.
dlf.endpoint
Alibaba Cloud DLF hizmetinin uç noktası.
Evet
Not-
dlf.endpoint parametresini DLF için bir VPC uç noktasına ayarlamanızı öneririz. Örneğin, Çin (Hangzhou) bölgesindeyseniz dlf.endpoint parametresini
dlf-vpc.cn-hangzhou.aliyuncs.comolarak ayarlayın. -
VPC'ler arasında DLF'e erişmeniz gerekiyorsa bkz. Çalışma alanı yönetimi ve işlemleri.
dlf.region-id
Alibaba Cloud DLF hizmetinin bölge kimliği.
Evet
NotBölge kimliğinin dlf.endpoint parametresinin bölgesiyle aynı olduğundan emin olun.
Configurations
Ek DLF ayarları. Örneğin, birden çok DLF kataloğu belirtmek için her birini yeni bir satıra girin.
Hayır
Örnek:
dlf.catalog.id:my_catalog. -
Confirm seçeneğine tıklayın.
-
Katalog oluşturulduktan sonra bunu Catalogs bölümünde görüntüleyebilirsiniz.
SQL komutlarını kullanma
-
Komut Dosyaları sayfasındaki metin düzenleyicisine DLF-Legacy kataloğu oluşturma komutunu girin.
CREATE CATALOG <yourcatalogname> WITH ( 'type' = 'dlf', 'access.key.id' = '<YourAliyunAccessKeyId>', 'access.key.secret' = '<YourAliyunAccessKeySecret>', 'warehouse' = '<YourAliyunOSSLocation>', 'oss.endpoint' = '<YourAliyunOSSEndpoint>', 'dlf.region-id' = '<YourAliyunDLFRegionId>', 'dlf.endpoint' = '<YourAliyunDLFEndpoint>' );Parametre
Açıklama
Zorunlu
Notlar
yourcatalogname
DLF-Legacy kataloğu için özel bir ad.
Evet
Özel bir İngilizce ad girin.
ÖnemliParametreyi katalog adınızla değiştirdikten sonra açısal parantezleri (<>) kaldırın. Aksi takdirde sözdizimi hatası oluşur.
type
Katalog türü.
Evet
Bu parametreyi
dlfolarak ayarlayın.access.key.id
Alibaba Cloud hesabınızın AccessKey ID'si.
Evet
Daha fazla bilgi için bkz. AccessKey çifti alma.
access.key.secret
Alibaba Cloud hesabınızın AccessKey Secret değeri.
Evet
Daha fazla bilgi için bkz. AccessKey çifti alma.
warehouse
DLF-Legacy kataloğundaki tablolar için varsayılan OSS yolu.
Evet
Format oss://<bucket>/<object> şeklindedir. Yer tutucular aşağıda açıklanmıştır:
-
bucket: OSS paketinizin adı.
-
object: Verilerinizin depolandığı yol.
NotPaket ve nesne adlarınızı OSS konsolunda görüntüleyebilirsiniz.
oss.endpoint
Alibaba Cloud OSS hizmetinin uç noktası.
Evet
Daha fazla bilgi için bkz. Bölgeler ve uç noktalar.
Not-
oss.endpoint parametresini OSS için bir VPC uç noktasına ayarlamanızı öneririz. Örneğin, Çin (Hangzhou) bölgesindeyseniz oss.endpoint parametresini
oss-cn-hangzhou-internal.aliyuncs.comolarak ayarlayın. -
VPC'ler arasında OSS'e erişmeniz gerekiyorsa bkz. Çalışma alanı yönetimi ve işlemleri.
dlf.endpoint
Alibaba Cloud DLF hizmetinin uç noktası.
Evet
Not-
dlf.endpoint parametresini DLF için bir VPC uç noktasına ayarlamanızı öneririz. Örneğin, Çin (Hangzhou) bölgesindeyseniz dlf.endpoint parametresini
dlf-vpc.cn-hangzhou.aliyuncs.comolarak ayarlayın. -
VPC'ler arasında DLF'e erişmeniz gerekiyorsa bkz. Çalışma alanı yönetimi ve işlemleri.
dlf.region-id
Alibaba Cloud DLF hizmetinin bölge kimliği.
Evet
NotBölge kimliğinin dlf.endpoint parametresinin bölgesiyle aynı olduğundan emin olun.
-
İfadeyi seçin ve Run seçeneğine tıklayın.
Soldaki Catalogs bölümünde oluşturulan kataloğu görüntüleyin.
DLF-Legacy kataloğunu görüntüleme
Bir DLF-Legacy kataloğu oluşturduktan sonra meta verilerini görüntüleyebilirsiniz.
-
Kataloglar sayfasına gidin.
Realtime Compute for Apache Flink konsoluna giriş yapın.
Hedef çalışma alanının Actions sütununda Console seçeneğine tıklayın.
Catalogs öğesine tıklayın.
-
Catalog list sayfasında Name ve Type değerlerini görüntüleyebilirsiniz.
NotBir kataloğun içindeki veritabanlarını ve tabloları görüntülemek için View seçeneğine tıklayın.
DLF-Legacy kataloğunu kullanma
DLF veritabanlarını yönetme
Komut Dosyaları sayfasındaki metin düzenleyicisine aşağıdaki ifadeleri girin. Bir ifadeyi seçin ve Run seçeneğine tıklayın. Veritabanı oluşturulduktan veya silindikten sonra sonucu SQL Editor sayfasının sol tarafındaki Catalogs bölümünde doğrulayabilirsiniz.
-
Veritabanı oluşturma
CREATE DATABASE dlf.dlf_testdb; -
Veritabanı silme
DROP DATABASE dlf.dlf_testdb;
DLF tablolarını yönetme
-
Tablo oluşturma
-
Bağlayıcı kullanarak tablo oluşturma
SQL
Komut Dosyaları sayfasındaki metin düzenleyicisine bir ifade girin. İfadeyi seçin ve Run seçeneğine tıklayın. Tablo oluşturulduktan sonra bunu SQL Editor sayfasının sol tarafındaki Catalogs bölümünde görüntüleyebilirsiniz.
CREATE TABLE dlf.dlf_testdb.iceberg ( id BIGINT, data STRING, dt STRING ) PARTITIONED BY (dt) WITH( 'connector' = 'iceberg' ); CREATE TABLE dlf.dlf_testdb.hudi ( id BIGINT PRIMARY KEY NOT ENFORCED, data STRING, dt STRING ) PARTITIONED BY (dt) WITH( 'connector' = 'hudi' );UI
-
Kataloglar sayfasına gidin.
Realtime Compute for Apache Flink konsoluna giriş yapın.
Hedef çalışma alanının Actions sütununda Console seçeneğine tıklayın.
Catalogs öğesine tıklayın.
Hedef kataloğun Actions sütununda View seçeneğine tıklayın.
Hedef veritabanının Actions sütununda View seçeneğine tıklayın.
Create Table seçeneğine tıklayın.
Built-in sekmesinde Connection Type seçeneğine tıklayın ve bir tablo türü seçin.
Next seçeneğine tıklayın.
-
Tablo oluşturma ifadesini girin ve parametreleri yapılandırın. Aşağıdaki kod bir örnek sağlar.
CREATE TABLE dlf.dlf_testdb.iceberg ( id BIGINT, data STRING, dt STRING ) PARTITIONED BY (dt) WITH( 'connector' = 'iceberg' ); CREATE TABLE dlf.dlf_testdb.hudi ( id BIGINT PRIMARY KEY NOT ENFORCED, data STRING, dt STRING ) PARTITIONED BY (dt) WITH( 'connector' = 'hudi' ); Confirm seçeneğine tıklayın.
-
-
Şema eşleşmesiyle tablo oluşturma (Bu yöntem yalnızca Iceberg tabloları için desteklenir.)
Komut Dosyaları sayfasındaki metin düzenleyicisine aşağıdaki ifadeyi girin. İfadeyi seçin ve Run seçeneğine tıklayın.
CREATE TABLE iceberg_table_like LIKE iceberg_table;
-
-
Tablo silme
DROP TABLE iceberg_table;
Iceberg tablo şemasını değiştirme
Komut Dosyaları sayfasındaki metin düzenleyicisine gerekli komutu girin. Komutu seçin ve Run seçeneğine tıklayın.
|
Eylemler |
Örnek |
|
Tablo özelliklerini değiştirme |
|
|
Tabloyu yeniden adlandırma |
|
|
Sütunu yeniden adlandırma |
Not
Bu özellik yalnızca VVR 8.0.7 ve sonraki sürümlerde desteklenir. |
|
Veri türünü değiştirme |
Bir sütunun veri türünü değiştirirken aşağıdaki kurallar uygulanır:
Not
Bu özellik yalnızca VVR 8.0.7 ve sonraki sürümlerde desteklenir. |
Veri yazma
INSERT INTO dlf.dlf_testdb.iceberg VALUES (1, 'AAA', '2022-02-01'), (2, 'BBB', '2022-02-01');
INSERT INTO dlf.dlf_testdb.hudi VALUES (1, 'AAA', '2022-02-01'), (2, 'BBB', '2022-02-01');
Veri okuma
SELECT * FROM dlf.dlf_testdb.iceberg LIMIT 2;
SELECT * FROM dlf.dlf_testdb.hudi LIMIT 2;
DLF-Legacy kataloğunu silme
Bir DLF-Legacy kataloğunu silmek, çalışan dağıtımları etkilemez. Ancak, kataloğu kullanan dağıtımlar tabloları bulamadığından yeniden başlatma veya yeniden yayınlama sırasında başarısız olabilir. Dikkatli ilerleyin.
DLF-Legacy kataloğunu kullanıcı arayüzü (UI) veya SQL komutlarıyla silebilirsiniz. Kullanıcı arayüzünü kullanmanızı öneririz.
Kullanıcı arayüzünü kullanma
-
Kataloglar sayfasına gidin.
Realtime Compute for Apache Flink konsoluna giriş yapın.
Hedef çalışma alanının Actions sütununda Console seçeneğine tıklayın.
Catalogs öğesine tıklayın.
Catalog list sayfasında hedef kataloğun Actions sütununda Delete seçeneğine tıklayın.
Görüntülenen onay mesajında Delete seçeneğine tıklayın.
Soldaki Catalogs bölümünde hedef kataloğun silindiğini doğrulayın.
SQL komutlarını kullanma
-
Komut Dosyaları sayfasındaki metin düzenleyicisine aşağıdaki komutu girin.
DROP CATALOG ${catalog_name}${catalog_name} ifadesini silinecek DLF-Legacy kataloğunun adıyla değiştirin.
Komutu seçin ve Run seçeneğine tıklayın.
Soldaki Catalogs bölümünde hedef kataloğun silindiğini doğrulayın.
İlgili belgeler
Iceberg bağlayıcısının nasıl kullanılacağı hakkında daha fazla bilgi için bkz. Iceberg bağlayıcısı.
Hudi bağlayıcısının nasıl kullanılacağı hakkında daha fazla bilgi için bkz. Hudi bağlayıcısı (kullanımdan kaldırılıyor).
Yerleşik kataloglar iş gereksinimlerinizi karşılamıyorsa özel bir katalog oluşturabilirsiniz. Daha fazla bilgi için bkz. Özel katalogları yönetme.