Delta canlı tabloları hızlı başlangıç

Önemli

Bu özellik Genel Önizlemededir. Erişim isteğinde bulunmak için Azure Databricks temsilcinizle iletişime geçin.

Azure Databricks bir not defteri kullanarak bir Delta canlı tablo işlem hattı kolayca oluşturabilir ve çalıştırabilirsiniz. Bu makalede, bir veri kümesindeki bir Delta canlı tablo işlem hattı kullanılarak Vikümi tıklama akış verisi içeren bir veri kümesi

  • Ham JSON tıklama akışı verilerini bir tabloya okuyun.
  • Ham veri tablosundan kayıtları okuyun ve Delta canlı tablo beklentilerini kullanarak Temizleme verilerinin bulunduğu yeni bir tablo oluşturun.
  • Türetilmiş veri kümeleri oluşturan değişim canlı tabloları sorguları yapmak için temizleme verileri tablosundaki kayıtları kullanın.

Bu hızlı başlangıçta şunları yapmanız gerekir:

  1. Yeni bir not defteri oluşturun ve ardışık düzeni uygulamak için kodu ekleyin.
  2. Not defterini kullanarak yeni bir işlem hattı işi oluşturun.
  3. İşlem hattı işinin bir güncelleştirmesini başlatın.
  4. İşlem hattı işinin sonuçlarını görüntüleyin.

Gereksinimler

Bir işlem hattı başlatmak için küme oluşturma izinleriniz olmalıdır. Delta canlı tabloları çalışma zamanı, işlem hattınızı çalıştırmadan önce bir küme oluşturur ve doğru izinleriniz yoksa başarısız olur.

Not defteri oluşturma

Delta canlı tabloları ardışık düzenini çalıştırmak için örnek bir not defteri kullanabilir veya yeni bir not defteri oluşturabilirsiniz:

  1. Azure Databricks giriş sayfanıza gidin ve boş Not Defteri Oluştur' u seçin.

  2. Not Defteri Oluştur iletişim kutusunda Not defterinize bir ad verin ve varsayılan dil açılan menüsünden Python veya SQL ' i seçin. Küme kümesini varsayılan değere bırakabilirsiniz. Delta canlı tabloları çalışma zamanı, işlem hattınızı çalıştırmadan önce bir küme oluşturur.

  3. Oluştur’a tıklayın.

  4. Python veya SQL kod örneğini kopyalayın ve yeni Not defterinize yapıştırın. Örnek kodu, Not defterinin veya birden çok hücrenin tek bir hücresine ekleyebilirsiniz.

    Not

    İşlem hattınızı işler Kullanıcı arabiriminin ardışık düzen sekmesinden başlatmanız gerekir.  İşlem hattınızı çalıştırmak Için Çalıştır simgesine tıkladığınızda bir hata döndürülür.

Kod örneği

Python

import dlt
from pyspark.sql.functions import *
from pyspark.sql.types import *

json_path = "/databricks-datasets/wikipedia-datasets/data-001/clickstream/raw-uncompressed-json/2015_2_clickstream.json"
@dlt.create_table(
  comment="The raw wikipedia click stream dataset, ingested from /databricks-datasets.",
  table_properties={
    "quality": "bronze"
  }
)
def clickstream_raw():
  return (
    spark.read.json(json_path)
  )

@dlt.create_table(
  comment="Wikipedia clickstream dataset with cleaned-up datatypes / column names and quality expectations.",
  table_properties={
    "quality": "silver"
  }
)
@dlt.expect("valid_current_page", "current_page_id IS NOT NULL AND current_page_title IS NOT NULL")
@dlt.expect_or_fail("valid_count", "click_count > 0")
def clickstream_clean():
  return (
    dlt.read("clickstream_raw")
      .withColumn("current_page_id", expr("CAST(curr_id AS INT)"))
      .withColumn("click_count", expr("CAST(n AS INT)"))
      .withColumn("previous_page_id", expr("CAST(prev_id AS INT)"))
      .withColumnRenamed("curr_title", "current_page_title")
      .withColumnRenamed("prev_title", "previous_page_title")
      .select("current_page_id", "current_page_title", "click_count", "previous_page_id", "previous_page_title")
  )

@dlt.create_table(
  comment="A table of the most common pages that link to the Apache Spark page.",
  table_properties={
    "quality": "gold"
  }
)
def top_spark_referrers():
  return (
    dlt.read("clickstream_clean")
      .filter(expr("current_page_title == 'Apache_Spark'"))
      .withColumnRenamed("previous_page_title", "referrer")
      .sort(desc("click_count"))
      .select("referrer", "click_count")
      .limit(10)
  )

@dlt.create_table(
  comment="A list of the top 50 pages by number of clicks.",
  table_properties={
    "quality": "gold"
  }
)
def top_pages():
  return (
    dlt.read("clickstream_clean")
      .groupBy("current_page_title")
      .agg(sum("click_count").alias("total_clicks"))
      .sort(desc("total_clicks"))
      .limit(50)
  )

SQL

CREATE LIVE TABLE clickstream_raw
COMMENT "The raw wikipedia click stream dataset, ingested from /databricks-datasets."
TBLPROPERTIES ("quality" = "bronze")
AS SELECT * FROM json.`/databricks-datasets/wikipedia-datasets/data-001/clickstream/raw-uncompressed-json/2015_2_clickstream.json`

CREATE LIVE TABLE clickstream_clean(
  CONSTRAINT valid_current_page EXPECT (current_page_id IS NOT NULL and current_page_title IS NOT NULL),
  CONSTRAINT valid_count EXPECT (click_count > 0) ON VIOLATION FAIL UPDATE
)
COMMENT "Wikipedia clickstream dataset with cleaned-up datatypes / column names and quality expectations."
TBLPROPERTIES ("quality" = "silver")
AS SELECT
  CAST (curr_id AS INT) AS current_page_id,
  curr_title AS current_page_title,
  CAST(n AS INT) AS click_count,
  CAST (prev_id AS INT) AS previous_page_id,
  prev_title AS previous_page_title
FROM live.clickstream_raw

CREATE LIVE TABLE top_spark_referers
COMMENT "A table of the most common pages that link to the Apache Spark page."
TBLPROPERTIES ("quality" = "gold")
AS SELECT
  previous_page_title as referrer,
  click_count
FROM live.clickstream_clean
WHERE current_page_title = 'Apache_Spark'
ORDER BY click_count DESC
LIMIT 10

CREATE LIVE TABLE top_pages
COMMENT "A list of the top 50 pages by number of clicks."
TBLPROPERTIES ("quality" = "gold")
AS SELECT
  current_page_title,
  SUM(click_count) as total_clicks
FROM live.clickstream_clean
GROUP BY current_page_title
ORDER BY 2 DESC
LIMIT 50

İşlem hattı oluşturma

Delta canlı tablolar Not defterini kullanarak yeni bir işlem hattı oluşturmak için:

  1. Kenar çubuğunda Işler simge işleri ' ne tıklayın , işlem hatları sekmesine tıklayın ve işlem hattı oluştur' a tıklayın.
  2. İşlem hattına bir ad verin ve Not defterinin tam yolunu girin.
  3. İsteğe bağlı olarak, ardışık düzendeki çıkış verileri için bir depolama konumu girin. Depolama konumunu boş bırakırsanız sistem varsayılan bir konum kullanır.
  4. İşlem hattı modu için tetiklendi ' ı seçin.
  5. Oluştur’a tıklayın.

İşlem hattı oluşturma

Oluştur' a tıkladıktan sonra sistem ardışık düzen ayrıntıları sayfasını görüntüler. Ardışık düzen sekmesinde işlem hattı adına tıklayarak işlem hattınızı da erişebilirsiniz.

İşlem hattını başlatma

Yeni işlem hattı için bir güncelleştirme başlatmak üzere Delta canlı tabloları Başlangıç simgesi düğmesine basın. Sistem, işlem hattının başlatıldığını onaylayan bir ileti döndürür.

Ardışık düzeni Başlat

Güncelleştirmeyi başarıyla başlattıktan sonra, Delta canlı tabloları sistemi:

  1. Delta canlı tabloları sistemi tarafından oluşturulan küme yapılandırmasını kullanarak bir küme başlatır. Ayrıca, özel bir küme yapılandırmasıda belirtebilirsiniz.
  2. Mevcut olmayan herhangi bir tablo oluşturur ve şemanın mevcut tablolar için doğru olmasını sağlar.
  3. En son verileri bulunan tabloları güncelleştirir.
  4. Güncelleştirme tamamlandığında kümeyi kapatır.

İşlem hattı ayrıntıları sayfasının alt kısmındaki olay günlüğünü görüntüleyerek, güncelleştirmenin ilerlemesini izleyebilirsiniz.

İşlem hattı olay günlüğünü görüntüle

Sonuçları görüntüleme

İşlem hattı işleme ayrıntılarını görüntülemek için Delta canlı tabloları Kullanıcı arabirimini kullanabilirsiniz. Bu, işlem hattı grafiğinin ve şemaların görsel bir görünümünü içerir ve işlenen kayıt sayısı ve doğrulanamayan kayıtlar gibi işleme ayrıntılarını kaydeder.

Ardışık düzen grafiğini görüntüleme

İşlem hattınızı işleme grafı görüntülemek için Graph sekmesine tıklayın. Farenizi kullanarak  grafik panelinin sağ üst köşesindeki görünümü veya Delta canlı tabloları grafik düğmeleri simge düğmelerini ayarlayabilirsiniz.

İşlem hattı grafiğini görüntüle

Veri kümesi bilgilerini görüntüle

Veri kümesine ilişkin şema bilgilerini görüntülemek için bir veri kümesine tıklayın.

İşlem hattı şemasını görüntüle

İşleme ayrıntılarını görüntüle

İşlenen kayıt sayısı ve veri kalitesi ölçümleri dahil olmak üzere işleme ayrıntılarını görüntülemek için olay günlüğündeki bir girişi seçin ve JSON sekmesine tıklayın.

Olay günlüğü ayrıntılarını görüntüle

İşlem hattı ayarlarını görüntüleme

İşlem hattınızda oluşturulan yapılandırmayı görüntülemek için Ayarlar sekmesine tıklayın. İşlem hattı yapılandırmasını değiştirmek için Ayarları Düzenle düğmesine tıklayın. Yapılandırma ayarları hakkında ayrıntılar için bkz. Delta canlı tabloları yapılandırması .

Veri kümelerini yayımlama

Azure Databricks meta veri deposu için tabloları yayımlayarak işlem hattı çıkış verilerini sorgulama için kullanılabilir hale getirebilirsiniz:

  1. Ayarları Düzenle düğmesine tıklayın.

  2. Tablolarınız için bir veritabanı adı yapılandırmak üzere hedef ayarını ekleyin.

    Veritabanı adını Yapılandır

  3. Kaydet’e tıklayın

  4. Sağ üst köşedeki Delta canlı tabloları Başlangıç simgesi düğmesine basın.

Güncelleştirme tamamlandıktan sonra veritabanını ve tabloları görüntüleyebilir, verileri sorgulayabilir veya aşağı akış uygulamalarında verileri kullanabilirsiniz.

Vikipedi verileri sorgula

Örnek Not defterleri

Bu not defterleri, bir Delta canlı tabloları işlem hattı uygulayan Python ve SQL örnekleri sağlar:

  • Ham JSON tıklama akışı verilerini bir tabloya okuyun.
  • Ham veri tablosundan kayıtları okuyun ve Delta canlı tablo beklentilerini kullanarak Temizleme verilerinin bulunduğu yeni bir tablo oluşturun.
  • Türetilmiş veri kümeleri oluşturan değişim canlı tabloları sorguları yapmak için temizleme verileri tablosundaki kayıtları kullanın.

Delta canlı tabloları Python Not defteri 'ni kullanmaya başlama

Not defterini alma

Delta canlı tabloları SQL Not defteri 'ni kullanmaya başlama

Not defterini alma