Регистрация облачного источника данных в качестве глобальной таблицы в Databricks без копирования

#apache-spark #azure-storage #databricks #azure-databricks #delta-lake

#apache-spark #azure-хранилище #databricks #azure-databricks #дельта-озеро

Вопрос:

Учитывая, что у меня есть дельта-таблица в хранилище Azure:

 wasbs://mycontainer@myawesomestorage.blob.core.windows.net/mydata
 

Это доступно в моей среде Databricks. Теперь я хочу, чтобы эти данные были доступны через глобальные таблицы, автоматически загружались во все кластеры и отображались в разделе «Данные».

Я мог бы легко сделать это путем копирования:

 spark.read
  .load("wasbs://mycontainer@myawesomestorage.blob.core.windows.net/mydata")
  .write.saveAsTable("my_new_table")
 

Но это дорого, и мне нужно будет время от времени запускать его (однако структурированная потоковая передача помогла бы). Но возможно ли зарегистрировать источник в качестве глобальной таблицы напрямую, без необходимости копировать все файлы?

Ответ №1:

Вы можете использовать инструкцию CREATE TABLE USING в ячейке блокнота databricks:

 %sql

CREATE TABLE IF NOT EXISTS default.my_new_table 
  USING DELTA 
  LOCATION "wasbs://mycontainer@myawesomestorage.blob.core.windows.net/mydata"
 

Таблица my_new_table должна появиться в вашей базе данных по умолчанию на вкладке databricks data.

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

1. Это было то, что я искал. Спасибо 🙂