Таблица снежинок как внешняя таблица в метасторе улья баз данных

#python #apache-spark #snowflake-cloud-data-platform #databricks #azure-data-lake-gen2

Вопрос:

Кто-нибудь знает, можно ли установить таблицу снежинок в качестве внешней таблицы в метасторе databricks hive?

Я работаю над проектом, в котором у нас есть несколько таблиц в Azure Data Lake Gen 2, и мы управляем ими из баз данных. Чтобы иметь возможность запрашивать таблицы из баз данных, необходимо добавить их в существующую базу данных в метасторе databricks hive. Синтаксис выглядит следующим образом:

CREATE TABLE IF NOT EXISTS lt;DATABASEgt;.lt;TABLE_NAMEgt; USING DELTA LOCATION lt;PATH_TO_TABLEgt;

Теперь мне нужно сделать то же самое с некоторыми таблицами, которые у нас есть в snowflake. Я могу переносить таблицы в базы данных с помощью spark connector.

 sfOptions = {  "sfURL" : "lt;accountgt;.snowflakecomputing.com",  "sfUser" : "lt;usergt;",  "sfPassword" : "lt;passwordgt;",  "sfDatabase" : "lt;databasegt;",  "sfRole": "lt;rolegt;",  "sfWarehouse" : "lt;clustergt;" }   df = spark.read.format("net.snowflake.spark.snowflake")  .option("column_mapping","name")  .options(**sfOptions)   .option('dbtable', "lt;schemagt;.lt;table_namegt;").load()   

Я также могу запрашивать таблицы снежинок из баз данных с помощью python snowflake connector следующим образом:

 import snowflake.connector  # Set options below sfOptions = {  "account" : "lt;accountgt;",  "user" : "lt;usergt;",  "password" : "lt;passwordgt;",  "database" : "lt;databasegt;",  "role": "lt;rolegt;",  "warehouse" : "lt;warehousegt;" }   ctx = snowflake.connector.connect(**sfOptions) cs = ctx.cursor()  cs.execute(query)   

Но то, что мне нужно сделать, немного отличается. Мне нужно использовать таблицы snowflake в качестве внешних таблиц databricks, потому что я хочу объединить их с таблицами delta lake, запрашивая непосредственно из записной книжки databricks.

Заранее спасибо.

Комментарии:

1. под «запросом непосредственно из записной книжки databricks» вы подразумеваете написание %sql и чтение таблицы снежинок напрямую?

2. Да, именно так.