Anteckning
Åtkomst till den här sidan kräver auktorisering. Du kan prova att logga in eller ändra kataloger.
Åtkomst till den här sidan kräver auktorisering. Du kan prova att ändra kataloger.
Den här artikeln innehåller syntaxexempel på hur du använder Apache Spark för att göra förfrågningar om data som delas med Delta Sharing. Använd nyckelordet deltasharing
som formatalternativ för DataFrame-åtgärder.
Andra alternativ för att fråga efter delade data
Du kan också skapa frågor som använder delade tabellnamn i deltadelningskataloger som är registrerade i metaarkivet, till exempel de i följande exempel:
SQL
SELECT * FROM shared_table_name
Python
spark.read.table("shared_table_name")
Mer information om hur du konfigurerar deltadelning i Azure Databricks och frågar efter data med hjälp av delade tabellnamn finns i Läsa data som delas med Databricks-till-Databricks Delta Sharing (för mottagare).
Du kan använda Structured Streaming för att bearbeta poster i delade tabeller stegvis. Om du vill använda Structured Streaming måste du aktivera historikdelning för tabellen. Se ALTER SHARE. Historikdelning kräver Databricks Runtime 12.2 LTS eller senare.
Om den delade tabellen har aktiverat ändringsdataflöde i Delta-källtabellen och historiken är aktiverad på resursen kan du använda ändringsdataflöde när du läser en Delta-resurs med strukturerad direktuppspelning eller batchåtgärder. Se Använda Delta Lake-ändringsdataflöde i Azure Databricks.
Läs med nyckelordet Delta Sharing-format
Nyckelordet deltasharing
stöds för Apache Spark DataFrame-läsåtgärder, enligt följande exempel:
df = (spark.read
.format("deltasharing")
.load("<profile-path>#<share-name>.<schema-name>.<table-name>")
)
Läsa ändringsdataflöde för delade deltatabeller
För tabeller som har historiken delad och ändringsdatafeed aktiverad kan du läsa ändringsdataflödesposter med Apache Spark DataFrames. Historikdelning kräver Databricks Runtime 12.2 LTS eller senare.
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>")
)
Läsa Delta Sharing-delade tabeller med strukturerad strömning
För tabeller som har delad historik kan du använda den delade tabellen som källa för strukturerad direktuppspelning. Historikdelning kräver Databricks Runtime 12.2 LTS eller senare.
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>")
)