Delta Lake tablolarını okuma (Synapse veya dış konum)
Önemli
Bu özellik şu anda önizlemededir. Microsoft Azure Önizlemeleri için Ek Kullanım Koşulları, beta, önizleme aşamasında olan veya henüz genel kullanıma sunulmamış Azure özellikleri için geçerli olan daha fazla yasal hüküm içerir. Bu belirli önizleme hakkında bilgi için bkz . AKS üzerinde Azure HDInsight önizleme bilgileri. Sorular veya özellik önerileri için lütfen AskHDInsight'ta ayrıntıları içeren bir istek gönderin ve Azure HDInsight Topluluğu hakkında daha fazla güncelleştirme için bizi takip edin.
Bu makalede, meta veri deposuna (Synapse veya genel erişimi olmayan diğer meta veri depoları) erişim olmadan Delta Lake tablosunun nasıl okunduğuna ilişkin genel bir bakış sağlanmaktadır.
AKS üzerinde HDInsight ile Trino kullanarak tablolarda aşağıdaki işlemleri gerçekleştirebilirsiniz.
- SİL
- UPDATE
- INSERT
- BİRLEŞTİRME
Önkoşullar
- Delta Lake kataloğunu yapılandırın.
Delta Lake şemaları ve tabloları oluşturma
Bu bölümde, delta lake kataloğunu zaten yapılandırdığınıza göre önceden var olan bir konum üzerinden Delta tablosunun nasıl oluşturulacağı gösterilmektedir.
Azure portalında tablonuzun temel dizininin bulunduğu konumu kullanarak
Storage browser
depolama hesabına göz atın. Bu tablo Synapse'den geliyorsa, büyük olasılıkla birsynapse/workspaces/.../warehouse/
yol altındadır ve tablonuzun adını alır ve bir_delta_log
dizin içerir. Klasörün yanında bulunan üç nokta arasından seçim yapınCopy URL
.Bu http yolunu bir ABFS (Azure Blob Dosya Sistemi) yoluna dönüştürmeniz gerekir:
Depolama http yolu şu şekilde yapılandırılmıştır:
https://{{AZURE_STORAGE_ACCOUNT}}.blob.core.windows.net/{{AZURE_STORAGE_CONTAINER}}/synapse/workspaces/my_workspace/warehouse/{{TABLE_NAME}}/
ABFS yollarının şöyle görünmesi gerekir:
abfss://{{AZURE_STORAGE_CONTAINER}}@{{AZURE_STORAGE_ACCOUNT}}.dfs.core.windows.net/synapse/workspaces/my_workspace/warehouse/{{TABLE_NAME}}/
Örnek:
abfss://container@storageaccount.dfs.core.windows.net/synapse/workspaces/workspace_name/warehouse/table_name/
Trino'da bir Delta Lake şeması oluşturun.
CREATE SCHEMA delta.default;
Alternatif olarak, belirli bir depolama hesabında şema da oluşturabilirsiniz:
CREATE SCHEMA delta.default WITH (location = 'abfss://container@storageaccount.dfs.core.windows.net/trino/');
register_table
Tabloyu oluşturmak için yordamı kullanın.CALL delta.system.register_table(schema_name => 'default', table_name => 'table_name', table_location => 'abfss://container@storageaccount.dfs.core.windows.net/synapse/workspaces/workspace_name/warehouse/table_name/');
Doğrulamak için tabloyu sorgula.
SELECT * FROM delta.default.table_name
Synapse Spark'ta Delta Lake tabloları yazma
Veri çerçevesini Delta tablosu olarak kaydetmek için kullanın format("delta")
, ardından tabloyu Trino'ya kaydetmek için veri çerçevesini delta biçimi olarak kaydettiğiniz yolu kullanabilirsiniz.
my_dataframe.write.format("delta").save("abfss://container@storageaccount.dfs.core.windows.net/synapse/workspaces/workspace_name/warehouse/table_name")
Sonraki adımlar
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin