Wzbogacanie tabel za pomocą metadanych niestandardowych

Usługa Databricks zaleca, aby zawsze tworzyć komentarze dla tabel i kolumn w tabelach. Te komentarze można wygenerować przy użyciu sztucznej inteligencji. Zobacz Dodawanie komentarzy generowanych przez sztuczną inteligencję do obiektów katalogu Unity.

Unity Catalog umożliwia również tagowanie danych. Zobacz Stosowanie tagów do zabezpieczanych obiektów w Unity Catalog.

Rejestrowanie komunikatów dotyczących poszczególnych zatwierdzeń do tabel w polu dziennika transakcji.

Ustaw metadane zatwierdzenia zdefiniowane przez użytkownika

Określ ciągi zdefiniowane przez użytkownika jako metadane w zatwierdzeniach przy użyciu opcji DataFrameWriter userMetadata. Tej opcji można używać z dowolnym trybem zapisu, w tym append i overwrite. Te metadane zdefiniowane przez użytkownika są odczytywalne podczas operacji DESCRIBE HISTORY. Więcej informacji można znaleźć w artykule Schemat historii tabeli i metryki operacyjne.

SQL

W przypadku tabel delty:

SET spark.databricks.delta.commitInfo.userMetadata=overwrite-comment
INSERT OVERWRITE target_table SELECT * FROM data_source

W przypadku tabel Iceberg:

SET spark.databricks.iceberg.commitInfo.userMetadata=overwrite-comment
INSERT OVERWRITE target_table SELECT * FROM data_source

Python

df.write \
  .mode("overwrite") \
  .option("userMetadata", "overwrite-comment") \
  .saveAsTable("target_table")

df.write \
  .mode("append") \
  .option("userMetadata", "append-comment") \
  .saveAsTable("target_table")

userMetadata działa w dowolnym trybie zapisu, w tym overwrite i append.

Scala

df.write
  .mode("overwrite")
  .option("userMetadata", "overwrite-comment")
  .saveAsTable("target_table")

df.write
  .mode("append")
  .option("userMetadata", "append-comment")
  .saveAsTable("target_table")

userMetadata działa w dowolnym trybie zapisu, w tym overwrite i append.

Uwagi dotyczące typów obliczeniowych

W klasycznych obliczeniach można także określić metadane zatwierdzenia zdefiniowane przez użytkownika, używając kluczy konfiguracyjnych SparkSession spark.databricks.delta.commitInfo.userMetadata (Delta) lub spark.databricks.iceberg.commitInfo.userMetadata (Iceberg). Jeśli określono zarówno opcję userMetadata DataFrameWriter, jak i konfigurację SparkSession, pierwszeństwo ma opcja DataFrameWriter.

W przypadku obliczeń bezserwerowych użyj opcji userMetadata DataFrameWriter bezpośrednio. Klucze konfiguracji platformy SparkSession dla metadanych zatwierdzenia nie są obsługiwane w przypadku obliczeń bezserwerowych.