Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Questo articolo fornisce esempi di sintassi relativi all'uso di Apache Spark per eseguire query sui dati condivisi con OpenSharing. Usare la deltasharing parola chiave come opzione di formato per le operazioni del dataframe.
Altre opzioni per l'esecuzione di query sui dati condivisi
È anche possibile creare query che usano nomi di tabella condivisi nei cataloghi OpenSharing registrati nel metastore, ad esempio quelli negli esempi seguenti:
SQL
SELECT * FROM shared_table_name
Python
spark.read.table("shared_table_name")
Per altre informazioni sulla configurazione di OpenSharing in Azure Databricks ed esecuzione di query sui dati usando nomi di tabella condivisi, vedere Leggere i dati condivisi con Databricks-to-Databricks OpenSharing (per i destinatari).
È possibile usare Structured Streaming per elaborare i record nelle tabelle condivise in modo incrementale. Per usare Structured Streaming, è necessario abilitare la condivisione della cronologia per la tabella. Vedete ALTER SHARE. La condivisione della cronologia richiede Databricks Runtime 12.2 LTS o versione successiva.
Se nella tabella condivisa è abilitato il feed di dati delle modifiche nella tabella Delta di origine e la cronologia è abilitata per la condivisione, è possibile usare il feed di dati delle modifiche quando si legge una condivisione OpenSharing con Structured Streaming o operazioni batch. Vedi Usa il feed dei dati di modifica in Azure Databricks.
Leggi con la parola chiave del formato OpenSharing
La deltasharing parola chiave è supportata per le operazioni di lettura del dataframe Apache Spark, come illustrato nell'esempio seguente:
df = (spark.read
.format("deltasharing")
.load("<profile-path>#<share-name>.<schema-name>.<table-name>")
)
Leggere il feed delle modifiche ai dati per le tabelle condivise di OpenSharing
Per le tabelle in cui la cronologia è condivisa e il feed di dati delle modifiche è abilitato, è possibile leggere i record del feed di dati delle modifiche utilizzando i DataFrame di Apache Spark. La condivisione della cronologia richiede Databricks Runtime 12.2 LTS o versione successiva.
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>")
)
Leggere tabelle condivise OpenSharing con Structured Streaming
Per le tabelle con cronologia condivisa, è possibile usare la tabella condivisa come origine per Structured Streaming. La condivisione della cronologia richiede Databricks Runtime 12.2 LTS o versione successiva.
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>")
)