Ler en inglés

Compartir por


Leer Las tablas compartidas de Compartir de Delta usando los marcos de datos de Apache Spark

En este artículo se proporcionan ejemplos de sintaxis de uso de Apache Spark para consultar datos compartidos mediante el Delta Sharing. Use la palabra clave deltasharing como opción de formato para las operaciones DataFrame.

Otras opciones para consultar datos compartidos

También puede crear consultas que utilicen nombres de tablas compartidas en catálogos de Delta Sharing registrados en la metastore, como los de los siguientes ejemplos:

SQL

SELECT * FROM shared_table_name

Python

spark.read.table("shared_table_name")

Para más información sobre la configuración del uso compartido de Delta en Azure Databricks y la consulta de datos mediante nombres de tabla compartidos, consulte Lectura de datos compartidos mediante Databricks-to-Databricks Delta Sharing (para destinatarios).

Puede utilizar Structured Streaming para procesar registros en tablas compartidas de forma incremental. Para usar Structured Streaming, debe habilitar el uso compartido de historial para la tabla. Consulte ALTER SHARE. El uso compartido del historial requiere Databricks Runtime 12.2 LTS o superior.

Si la tabla compartida tiene la fuente de datos de cambios habilitada en la tabla Delta de origen y el historial habilitado en el recurso compartido, puede usar la fuente de datos de cambios mientras lee un recurso compartido de Delta con transmisión estructurada u operaciones por lotes. Vea Uso de la fuente de distribución de datos de cambios de Delta Lake en Azure Databricks.

Lea con la palabra clave de formato Delta Sharing

La palabra clave deltasharing es compatible con las operaciones de lectura de DataFrame de Apache Spark, como se muestra en el ejemplo siguiente:

df = (spark.read
  .format("deltasharing")
  .load("<profile-path>#<share-name>.<schema-name>.<table-name>")
)

Leer la fuente de distribución de datos de cambios para las tablas compartidas de Delta Sharing

En el caso de las tablas que tienen habilitado el historial compartido y la fuente de distribución de datos modificados, puede leer los registros de fuente de distribución de datos modificados mediante DataFrames de Apache Spark. El uso compartido del historial requiere Databricks Runtime 12.2 LTS o superior.

df = (spark.read
  .format("deltasharing")
  .option("readChangeFeed", "true")
  .option("startingTimestamp", "2021-04-21 05:45:46")
  .option("endingTimestamp", "2021-05-21 12:00:00")
  .load("<profile-path>#<share-name>.<schema-name>.<table-name>")
)

Leer tablas compartidas de Delta Sharing usando Structured Streaming

En el caso de las tablas que tienen historial compartido, puede usar la tabla compartida como origen para Structured Streaming. El uso compartido del historial requiere Databricks Runtime 12.2 LTS o superior.

streaming_df = (spark.readStream
  .format("deltasharing")
  .load("<profile-path>#<share-name>.<schema-name>.<table-name>")
)

# If CDF is enabled on the source table
streaming_cdf_df = (spark.readStream
  .format("deltasharing")
  .option("readChangeFeed", "true")
  .option("startingTimestamp", "2021-04-21 05:45:46")
  .load("<profile-path>#<share-name>.<schema-name>.<table-name>")
)