Aracılığıyla paylaş


Delta Live Tablesnedir?

Not

Delta Live Tables için Premium planıgerekir. Daha fazla bilgi için Databricks hesap ekibinize başvurun.

Delta Live Tables, güvenilir ve sürdürülebilir ayıklama, dönüştürme ve yükleme (ETL) işlem hatlarının oluşturulmasını basitleştirmek için tasarlanmış bildirim temelli bir çerçevedir. Hangi verilerin alınacağını ve nasıl dönüştürüleceğini belirtirsiniz ve Delta Live Tables düzenleme, işlem yönetimi, izleme, veri kalitesi uygulama ve hata işleme dahil olmak üzere veri işlem hattınızı yönetmenin önemli yönlerini otomatikleştirir.

Delta Live Tables Apache Spark üzerinde oluşturulur, ancak bir dizi ayrı Apache Spark görevi kullanarak veri işlem hatlarınızı tanımlamak yerine, sistemin oluşturması gereken akış tables ve gerçekleştirilmiş views tanımlarsınız ve bu akış tables doldurmak ve update için gereken sorgular views.

Delta Live ile ETL işlem hatlarınızı oluşturmanın ve çalıştırmanın avantajları hakkında daha fazla bilgi edinmek içinDelta Live ürün sayfasına bakın.

Apache Spark ile karşılaştırıldığında Delta Live TablesAvantajları

Apache Spark, ETL de dahil olmak üzere çok yönlü bir açık kaynak birleşik analiz altyapısıdır. Delta Live Tables, belirli ve yaygın ETL işleme görevlerini ele almak için Spark'ta derleniyor. Delta Live Tables, gereksinimleriniz aşağıdaki işleme görevlerini içerdiğinde üretim yolunuzu önemli ölçüde hızlandırabilir:

  • Tipik kaynaklardan veri alma.
  • Verileri artımlı olarak dönüştürme.
  • Değişiklik verisi yakalama (CDC) gerçekleştirme.

Ancak Delta Live Tables bazı yordamsal mantık türlerini uygulamak için uygun değildir. Örneğin, harici bir table'a yazma veya dış dosya depolama ya da veritabanı tables üzerinde çalışan bir koşullu içerme gibi işleme gereksinimleri, Delta Live Tables veri kümesini tanımlayan kodun içinde gerçekleştirilemez. Delta Live Tablestarafından desteklenmeyen işlemeyi uygulamak için Databricks, Apache Spark kullanılmasını veya işlem hattını ayrı bir iş görevinde işlemeyi gerçekleştiren bir Databricks İşine dahil etmenizi önerir. işler için bkz. Delta Live işlem hattı görevi .

Aşağıdaki table Delta Live Tables Apache Spark ile karşılaştırır:

Yetenek Delta Live Tables Apache Spark
Veri dönüştürmeleri SQL veya Python kullanarak verileri dönüştürebilirsiniz. SQL, Python, Scala veya R kullanarak verileri dönüştürebilirsiniz.
Artımlı veri işleme Birçok veri dönüşümü otomatik olarak artımlı olarak işlenir. Artımlı olarak işleyebilmeniz için hangi verilerin yeni olduğunu belirlemeniz gerekir.
Orkestrasyon Dönüşümler otomatik olarak doğru sırada düzenlenir. Farklı dönüştürmelerin doğru sırada çalıştırıldığından emin olmanız gerekir.
Paralellik Tüm dönüştürmeler doğru paralellik düzeyiyle çalıştırılır. İlişkisiz dönüştürmeleri paralel olarak çalıştırmak için iş parçacıkları veya dış düzenleyici kullanmanız gerekir.
Hata işleme Hatalar otomatik olarak yeniden deneniyor. Hataların ve yeniden denemelerin nasıl işleneceğini belirlemeniz gerekir.
Izleme Ölçümler ve olaylar otomatik olarak günlüğe kaydedilir. Yürütme veya veri kalitesiyle ilgili ölçümleri toplamak için kod yazmanız gerekir.

Delta Live Temel Kavramları Tables

Aşağıdaki çizimde Delta Live Tables işlem hattının önemli bileşenleri ve her birinin açıklaması gösterilmektedir.

Delta Live Tables temel kavramları.

Akış table

Akış table, bir veya daha fazla akışın yazdığı delta table. Akış tables, giriş verilerini tam olarak bir kez işlediği ve yalnızca ekleme verilerinin büyük volumes işleyebildiği için alım için yaygın olarak kullanılır. Akış tables, yüksek hacimli veri akışlarının düşük gecikmede dönüştürülmesi için de yararlıdır.

Gerçekleştirilmiş görünüm

Gerçekleştirilmiş görünüm, gerçekleştirilmiş görünümü tanımlayan sorguyu temel alan önceden derlenmiş kayıtları içeren bir görünümdür. Maddileştirilmiş görünümdeki kayıtlar, işlem hattının update zamanlamasına veya tetikleyicilerine göre Delta Live Tables tarafından otomatik olarak güncel tutulur. Gerçekleştirilmiş bir görünüm her güncelleştirildiğinde, kullanılabilir en son veriler üzerinde tanımlama sorgusunu çalıştırmakla aynı sonuçlara sahip olması garanti edilir. Ancak, bu genellikle artımlı refreshkullanılarak, sıfırdan tam sonuç yeniden hesaplanmadan yapılır. Dönüşümler için genellikle maddeleşmiş views kullanılır.

Views

Azure Databricks'teki tüm views, kaynak veri kümelerinden sorgulanırken elde edilen sonuçları alır ve kullanılabilir olduğunda önbelleğe alma iyileştirmelerinden yararlanılır. Delta Live Tablesviews'yi catalog'ye yayımlamaz, bu yüzden views yalnızca tanımlandığı işlem hattında referans alınabilir. Views, son kullanıcılara veya sistemlere sunulmaması gereken ara sorgular olarak kullanışlıdır. Databricks, veri kalitesi kısıtlamalarını zorlamak veya birden çok aşağı akış sorgusu yönlendiren veri kümelerini dönüştürmek ve zenginleştirmek için views kullanılmasını önerir.

Boru hattı

İşlem hattı, birlikte güncellenen akış halinde tables ve gerçekleştirilmiş views’lerden oluşan bir koleksiyondur. Bu akış tables ve gerçekleştirilmiş views Python veya SQL kaynak dosyalarında bildirilir. İşlem hattı, işlem hattı çalıştırıldığında akış tablesupdate ve gerçekleştirilmiş views için kullanılan işlemi tanımlayan bir yapılandırma da içerir. Terraform şablonunun bulut hesabınızdaki altyapıyı tanımlamasına benzer şekilde Delta Live Tables işlem hattı da veri işlemeniz için veri kümelerini ve dönüşümleri tanımlar.

Delta Live Tables veri kümeleri verileri nasıl işler?

Aşağıdaki table, views, akış tablesve views verileri nasıl işlediği açıklanmaktadır:

Veri kümesi türü Kayıtlar tanımlı sorgular aracılığıyla nasıl işlenir?
Akış table Her kayıt tam olarak bir kez işlenir. Bu, yalnızca ekleme kaynağı olduğunu varsayar.
Gerçekleştirilmiş görünüm Kayıtlar, geçerli veri durumunun doğru sonuçlarını döndürmek için gerektiği şekilde işlenir. Gerçekleştirilmiş views, dönüşümler, toplamalar gibi veri işleme görevleri veya yavaş sorgular ve sık kullanılan hesaplamaları önceden hesaplama gibi işlemler için kullanılmalıdır.
Görünüm Görünüm her sorgulandığında kayıtlar işlenir. Genel veri kümelerinde yayımlanmaması gereken ara dönüştürmeler ve veri kalitesi denetimleri için views kullanın.

Delta Live'da ilk veri kümelerinizi bildirme Tables

Delta Live Tables, Python ve SQL için yeni söz dizimi sağlar. İşlem hattı söz diziminin temellerini öğrenmek için bkz . Python ile işlem hattı kodu geliştirme ve SQL ile işlem hattı kodu geliştirme.

Not

Delta Live Tables veri kümesi tanımlarını update işlemeden ayırır ve Delta Live Tables not defterleri etkileşimli yürütme için tasarlanmamıştır.

Delta Live Tables işlem hatlarını nasıl yapılandırabilirsiniz?

Delta Live Tables işlem hatlarının ayarları iki geniş kategoriye ayrılır:

  1. Veri kümelerini bildirmek için Delta Live Tables söz dizimi kullanan bir not defteri veya dosya koleksiyonunu tanımlayan yapılandırmalar (kaynak koduolarak bilinir).
  2. İşlem hattı altyapısını, bağımlılık yönetimini, güncelleştirmelerin nasıl işlendiğini ve tables çalışma alanına nasıl kaydedildiğini denetleyebilen yapılandırmalar.

Yapılandırmaların çoğu isteğe bağlıdır, ancak bazıları özellikle üretim işlem hatlarını yapılandırırken dikkatli olunmalarını gerektirir. Bunlar aşağıdakileri içerir:

  • Verileri işlem hattı dışında kullanılabilir hale getirmek için Hive meta veri deposunda yayımlamak üzere bir hedef schema veya hedef catalog bildirmeniz ve Unity Catalog'de yayımlamak üzere hedef schema bildirmeniz gerekir.
  • Veri erişim izinleri, yürütme için kullanılan küme aracılığıyla yapılandırılır. Kümenizin veri kaynakları için yapılandırılmış uygun izinlere sahip olduğundan ve hedef depolama konumunun belirtildiyseolduğundan emin olun.

İşlem hatları için kaynak kod yazmak amacıyla Python ve SQL kullanımı hakkında ayrıntılı bilgi için, Delta Live SQL dil başvurusu Tables ve Delta Live Python dil başvurusu Tablessayfalarına bakın.

İşlem hattı ayarları ve yapılandırmaları hakkında daha fazla bilgi için bkz. Delta Live Tables işlem hattı yapılandırma.

İlk işlem hattınızı dağıtma ve güncelleştirmeleri tetikleme

Delta Live Tablesile verileri işlemeden önce bir işlem hattı yapılandırmanız gerekir. İşlem hattı yapılandırıldıktan sonra, işlem hattınızdaki her veri kümesinin sonuçlarını hesaplamak için bir update tetikleyebilirsiniz. Delta Live Tables işlem hatlarını kullanmaya başlamak için get, bkz. Öğretici: İlk Delta Live Tables işlem hattınızıçalıştırın.

Bir işlem hattı updatenedir?

Boru hatları, bir updatebaşlattığınızda altyapıyı dağıtır ve veri durumunu yeniden hesaplar. Bir update aşağıdakileri yapar:

  • Doğru yapılandırmaya sahip bir küme başlatır.
  • Tanımlanan tüm tables ve views bulur ve geçersiz column adları, eksik bağımlılıklar ve söz dizimi hataları gibi analiz hatalarını denetler.
  • tables ve views'i mevcut en son verilerle oluşturur veya günceller.

İşlem hatları, kullanım örneğinizin maliyet ve gecikme süresi gereksinimlerine bağlı olarak sürekli olarak veya bir zamanlamaya göre çalıştırılabilir. Bkz. Delta Live Tables işlem hattında update çalıştırma.

Delta Live Tables ile veri alma

Delta Live Tables, Azure Databricks'te kullanılabilen tüm veri kaynaklarını destekler.

Databricks, çoğu veri alma kullanım örneği için akış tables'ın kullanılmasını önerir. Databricks, bulut nesne depolama alanına gelen dosyalar için Otomatik Yükleyici'yi önerir. Çoğu mesaj otobüsünden Delta Live Tables ile doğrudan veri alabilirsiniz.

Bulut depolamaya erişimi yapılandırma hakkında daha fazla bilgi için bkz . Bulut depolama yapılandırması.

Otomatik Yükleyici tarafından desteklenmeyen biçimler için Python veya SQL kullanarak Apache Spark tarafından desteklenen herhangi bir biçimi sorgulayabilirsiniz. Bkz. Delta Live ile veri yükleme Tables.

Veri kalitesini izleme ve uygulama

Bir veri kümesinin içeriğinde veri kalitesi denetimleri belirtmek için beklentileri kullanabilirsiniz. constraintbaşarısız olan kayıtların eklenmesini engelleyen geleneksel bir veritabanındaki CHECKconstraint aksine, veri kalitesi gereksinimlerinde başarısız olan veriler işlenirken beklentiler esneklik sağlar. Bu esneklik, karmaşık olmasını beklediğiniz verileri ve katı kalite gereksinimlerini karşılaması gereken verileri işlemenizi ve depolamanızı sağlar. Bkz. Delta Live Tablesile veri kalitesini yönetme.

Delta Live Tables, Delta Lake'in işlevselliğini genişletir. Delta Live Tables tarafından oluşturulan ve yönetilen tables, bir Delta tablesolduğundan, Delta Lake'in sağladığı garantiler ve özelliklere sahiptir. Bkz . Delta Lake nedir?.

Delta Live Tables, Delta Lake'te set olabilecek birçok table özelliğine ek olarak birkaç table özelliği ekler. Bkz. Delta Live Tables özellikler referansı ve Delta table özellikler referansı.

Delta Live Tables tarafından tables nasıl oluşturulur ve yönetilir?

Azure Databricks, Delta Live Tablesile oluşturulan tables otomatik olarak yönetir ve bir table geçerli durumunu doğru şekilde hesaplamak ve bir dizi bakım ve iyileştirme görevi gerçekleştirmek için güncelleştirmelerin nasıl işlenmesi gerektiğini belirler.

Çoğu işlem için, hedef tableiçin tüm güncelleştirmeleri, eklemeleri ve silmeleri Delta Live Tables'nin işlemesine izin vermelisiniz. Ayrıntılar ve sınırlamalar için bkz . El ile silmeleri veya güncelleştirmeleri koruma.

Delta Live Tables tarafından gerçekleştirilen bakım görevleri

Delta Live Tables, table güncelleştirildikten sonraki 24 saat içinde bakım görevlerini gerçekleştirir. Bakım, tableseski sürümlerini kaldırarak sorgu performansını artırabilir ve maliyeti azaltabilir. Varsayılan olarak, sistem tam OPTIMIZE işlemi gerçekleştirir ve ardından VACUUMişlemi uygular. tableiçin, table özellikleri'de pipelines.autoOptimize.managed = false ayarlayarak table için OPTIMIZE'i devre dışı bırakabilirsiniz. Bakım görevleri, ancak bakım görevlerinin programlanmasından önceki 24 saat içinde işlem hattı update çalıştırılmışsa gerçekleştirilir.

Sınırlamalar

Sınırlamaların list için bkz. Delta Live Tables Sınırlamaları.

Unity Catalogile Delta Live Tables kullanmaya özgü gereksinimlerin ve sınırlamaların list için bkz. Delta Live Tables işlem hatlarınızla Unity Catalog kullanma

Ek kaynaklar