Delta Sharing çıkış maliyetlerini izleme ve yönetme (sağlayıcılar için)
Bu makalede, Delta Sharing kullanarak veri ve yapay zeka varlıklarını paylaşırken bulut satıcısı çıkış maliyetlerini izlemek ve yönetmek için kullanabileceğiniz araçlar açıklanmaktadır.
Diğer veri paylaşım platformlarının aksine, Delta Paylaşımı için veri çoğaltma gerekmez. Bu modelin birçok avantajı vardır ancak bulut satıcınız bulutlar veya bölgeler arasında veri paylaştığınızda veri çıkışı ücretleri alabilir. Delta Sharing'i bir bölgedeki verileri ve yapay zeka varlıklarını paylaşmak için kullanırsanız çıkış ücreti ödemezsiniz.
Databricks çıkış ücretlerini izlemek ve yönetmek için şunları sağlar:
- Çıkış ücretlerini önlemek için bölgeler arasında veri çoğaltma yönergeleri.
- Çıkış ücretlerini önlemek için Cloudflare R2 depolama desteği.
Çıkış maliyetlerini önlemek için verileri çoğaltma
Çıkış maliyetlerinden kaçınmaya yönelik bir yaklaşım, sağlayıcının alıcılarının kullandığı bölgelerde paylaşılan verilerin yerel çoğaltmalarını oluşturup eşitlemesidir. Diğer bir yaklaşım da alıcıların paylaşılan verileri etkin sorgulama için yerel bölgelere kopyalaması ve paylaşılan tablo ile yerel kopya arasında eşitlemeler ayarlamasıdır. Bu bölümde bir dizi çoğaltma deseni ele alınmaktadır.
Artımlı çoğaltma için Delta derin klonu kullanma
Sağlayıcılar Delta tablolarını paylaştıkları bölgelerdeki dış konumlara çoğaltmak için kullanabilir DEEP CLONE
. Derin kopyalar, kaynak tablo verilerini ve meta verilerini kopyalama hedefine kopyalar. Derin kopyalamalar, kaynak tablodaki yeni verileri tanımlayıp hedefi buna göre yenileyerek artımlı güncelleştirmeleri de etkinleştirir.
CREATE TABLE [IF NOT EXISTS] table_name DEEP CLONE source_table_name
[TBLPROPERTIES clause] [LOCATION path];
Aşağıdaki komutu kullanarak, paylaşılan tablodaki son güncelleştirmelerle hedef tablo verilerini artımlı olarak yenilemek için bir Databricks işi zamanlayabilirsiniz:
CREATE OR REPLACE TABLE table_name DEEP CLONE source_table_name;
Bkz. Azure Databricks'te tablo kopyalama ve iş akışlarını zamanlama ve düzenleme.
Artımlı çoğaltma için paylaşılan tablolarda değişiklik veri akışını (CDF) etkinleştirme
Bir tablo CDF'si ile paylaşıldığında, alıcı değişikliklere erişebilir ve bunları kullanıcıların sorgu gerçekleştirdiği tablonun yerel bir kopyasıyla birleştirebilir. Bu senaryoda, verilere alıcı erişimi bölge sınırlarını aşmaz ve çıkış, yerel kopyayı yenilemeyle sınırlıdır. Alıcı Databricks'teyse, değişiklikleri yerel çoğaltmaya yaymak için databricks iş akışı işini kullanabilir.
Bir tabloyu CDF ile paylaşmak için, tabloda CDF'yi etkinleştirmeniz ve paylaşmanız WITH HISTORY
gerekir.
CDF kullanma hakkında daha fazla bilgi için bkz . Azure Databricks'te Delta Lake değişiklik veri akışını kullanma ve Paylaşıma tablo ekleme.
Cloudflare R2 çoğaltmalarını kullanma veya depolamayı R2'ye geçirme
Cloudflare R2 nesne depolaması çıkış ücreti ödemez. Paylaştığınız verilerin R2'ye çoğaltılması veya geçirilmesi, çıkış ücreti ödemeden Delta Sharing'i kullanarak veri paylaşmanızı sağlar. Bu bölümde, verilerin R2 konumuna nasıl çoğaltıldığı ve kaynak tablolardan artımlı güncelleştirmelerin nasıl etkinleştirileceği açıklanmaktadır.
Gereksinimler
- Unity Kataloğu için etkinleştirilmiş Databricks çalışma alanı.
- Databricks Runtime 14.3 veya üzeri ya da SQL ambarı 2024.15 veya üzeri.
- Cloudflare hesabı. Bkz. https://dash.cloudflare.com/sign-up.
- Cloudflare R2 Yönetici rolü. Cloudflare rolleri belgelerine bakın.
CREATE STORAGE CREDENTIAL
ayrıcalığına bağlı Unity Kataloğu meta veri deposunda. Hesap yöneticileri ve meta veri deposu yöneticileri varsayılan olarak bu ayrıcalığı alır.CREATE EXTERNAL LOCATION
hem meta veri deposunda hem de dış konumda başvuruda bulunan depolama kimlik bilgileri üzerinde ayrıcalık. Meta veri deposu yöneticileri bu ayrıcalığı varsayılan olarak alır.CREATE MANAGED STORAGE
dış konumda ayrıcalık.CREATE CATALOG
öğesini seçin. Meta veri deposu yöneticileri bu ayrıcalığı varsayılan olarak alır.
Azure Databricks'te dış konum olarak R2 demeti bağlama
Cloudflare R2 demeti oluşturun.
Bkz . R2 demeti yapılandırma.
Unity Kataloğu'nda R2 demetine erişim sağlayan bir depolama kimlik bilgisi oluşturun.
Bkz . Depolama kimlik bilgilerini oluşturma.
Unity Kataloğu'nda dış konum oluşturmak için depolama kimlik bilgilerini kullanın.
Bkz. Bulut depolamayı Azure Databricks'e bağlamak için dış konum oluşturma.
Dış konumu kullanarak yeni katalog oluşturma
Yönetilen depolama konumu olarak yeni dış konumu kullanan bir katalog oluşturun.
Bkz . Katalog oluşturma.
Kataloğu oluştururken aşağıdakileri yapın:
Katalog Gezgini
- Standart katalog türünü seçin.
- Depolama konumu altında Depolama konumu seçin'i seçin ve dış konum olarak tanımladığınız R2 demetinin yolunu girin. Örneğin
r2://mybucket@my-account-id.r2.cloudflarestorage.com
SQL
Dış konum olarak tanımladığınız R2 demetinin yolunu kullanın. Örneğin:
CREATE CATALOG IF NOT EXISTS my-r2-catalog
MANAGED LOCATION 'r2://mybucket@my-account-id.r2.cloudflarestorage.com'
COMMENT 'Location for managed tables and volumes to share using Delta Sharing';
Paylaşmak istediğiniz verileri yeni katalogdaki bir tabloya kopyalama
yönetilen depolama için R2 kullanan yeni kataloğa Azure Data Lake Storage 2. Nesil tabloları çoğaltmak için kullanınDEEP CLONE
. Derin kopyalar, kaynak tablo verilerini ve meta verilerini kopyalama hedefine kopyalar. Derin kopyalamalar, kaynak tablodaki yeni verileri tanımlayıp hedefi buna göre yenileyerek artımlı güncelleştirmeleri de etkinleştirir.
CREATE TABLE IF NOT EXISTS new_catalog.schema1.new_table DEEP CLONE old_catalog.schema1.source_table
LOCATION 'r2://mybucket@my-account-id.r2.cloudflarestorage.com';
Aşağıdaki komutu kullanarak kaynak tablodaki son güncelleştirmelerle hedef tablo verilerini artımlı olarak yenilemek için bir Databricks işi zamanlayabilirsiniz:
CREATE OR REPLACE TABLE new_catalog.schema1.new_table DEEP CLONE old_catalog.schema1.source_table;
Bkz. Azure Databricks'te tablo kopyalama ve iş akışlarını zamanlama ve düzenleme.
Yeni tabloyu paylaşma
Paylaşımı oluşturduğunuzda, R2'de depolanan yeni katalogdaki tabloları ekleyin. İşlem, bir paylaşıma herhangi bir tablo eklemekle aynıdır.
Bkz . Delta Sharing için paylaşım oluşturma ve yönetme.