ALTER SHARE
Область применения: Databricks SQL Databricks Runtime 10.4 LTS и более поздней версии каталога Unity
Добавляет, изменяет или удаляет схемы, таблицы, материализованные представления или представления из общей папки. Переименовывает общую папку. Передает владение общим ресурсом новому субъекту.
Необходимые разрешения:
- Чтобы обновить владельца общей папки, необходимо быть одним из следующих: администратор хранилища метаданных, владелец объекта общей папки или пользователь с правами и
USE SHARE
SET SHARE PERMISSION
правами. - Чтобы обновить имя общей папки, необходимо быть администратором хранилища метаданных (или пользователем с привилегией) и владельцем
CREATE_SHARE
общего ресурса. - Чтобы добавить таблицы или представления, необходимо быть владельцем объекта общего ресурса, иметь
USE SCHEMA
в схеме, содержащей таблицу или представление, а такжеSELECT
привилегии в таблице или представлении. Вы должны поддерживать привилегию до тех пор, пока вы хотите предоставить общийSELECT
доступ к таблице или представлению. - Чтобы обновить другие свойства общего ресурса, необходимо быть владельцем.
Синтаксис
ALTER SHARE share_name
{ alter_add_materialized_view |
REMOVE MATERIALIZED VIEW mat_view_name |
alter_add_table |
REMOVE TABLE table_name |
alter_add_schema |
REMOVE SCHEMA schema_name |
alter_add_view |
REMOVE VIEW view_name |
alter_add_model |
REMOVE MODEL model_name |
RENAME TO to_share_name |
[ SET ] OWNER TO principal }
alter_add_materialized_view
{ { ALTER | ADD } MATERIALIZED VIEW mat_view_name [ COMMENT comment ] [ AS mat_view_share_name ]
alter_add_table
{ { ALTER | ADD } [ TABLE ] table_name [ COMMENT comment ]
[ PARTITION clause ] [ AS table_share_name ]
[ WITH HISTORY | WITHOUT HISTORY ] }
alter_add_schema
{ { ALTER | ADD } SCHEMA schema_name [ COMMENT comment ]
alter_add_view
{ { ALTER | ADD } VIEW view_name [ COMMENT comment ] [ AS view_share_name ]
alter_add_model
{ { ALTER | ADD } VIEW model_name [ COMMENT comment ] [ AS model_share_name ]
Примечание.
WITH HISTORY | WITHOUT HISTORY
поддерживается в Databricks Runtime 12.2 LTS и выше. Для выполнения Databricks версии 11.1–12.0 требуется указывать WITH CHANGE DATA FEED [ START VERSION version ] ]
вместо WITH HISTORY
него.
WITH CHANGE DATA FEED
не рекомендуется к использованию.
Обратите внимание также, что если в дополнение к выполнению запросов на поездки и потоковых операций чтения, вы хотите, чтобы клиенты могли запрашивать веб-канал изменений таблицы (CDF) с помощью функции table_changes() необходимо включить CDF в таблице , прежде чем делиться ею WITH HISTORY
(или WITH CHANGE DATA FEED
).
Параметры
-
Имя общего ресурса, который нужно изменить.
alter_add_materialized_view
Область применения: Databricks SQL Databricks Runtime 13.3 LTS и выше
Внимание
Доступна закрытая предварительная версия этой функции. Чтобы опробовать ее, обратитесь к своему контактному лицу Azure Databricks.
Добавляет материализованное представление в общую папку или изменяет существующее общее материализованное представление. Для выполнения этой инструкции необходимо быть владельцем общей папки и иметь
SELECT
привилегии в материализованном представлении.ADD MATERIALIZED VIEW
mat_view_nameОпределяет материализованное представление, которое нужно добавить. Если материализованное представление не найдено, Azure Databricks вызывает ошибку TABLE_OR_VIEW_NOT_FOUND .
ALTER MATERIALIZED VIEW
mat_view_nameОпределяет материализованное представление, которое необходимо изменить. Если материализованное представление еще не является частью общей папки, Azure Databricks вызывает ошибку.
COMMENT comment
Необязательный
STRING
литерал, присоединенный к материализованной общей папке представления в качестве комментария.-
При необходимости предоставляет материализованное представление под другим именем. Имя может быть квалифицировано с именем схемы. Если не
mat_view_share_name
указано, материализованное представление известно под собственным именем.Если общее имя уже существует, Azure Databricks вызывает ошибку.
REMOVE MATERIALIZED VIEW
mat_view_nameОбласть применения: Databricks SQL Databricks Runtime 13.3 LTS и выше
Удалите материализованное представление,
mat_view_name
определенное из общей папки. Для выполнения этой инструкции необходимо быть владельцем общей папки.alter_add_table
Добавляет таблицу или секции таблицы в общую папку или изменяет существующую общую таблицу. Для выполнения этой инструкции необходимо быть владельцем общей папки и иметь привилегию
SELECT
в таблице.ADD [ TABLE ]
table_nameОпределяет таблицу, которую необходимо добавить. Таблица не должна находиться в каталоге Unity. Если не удается найти таблицу Azure Databricks, возникает ошибка TABLE_OR_VIEW_NOT_FOUND .
ALTER [ TABLE ]
table_nameОпределяет таблицу, которая будет изменена. Если таблица еще не входит в общую папку Azure Databricks, возникает ошибка.
COMMENT comment
Необязательный
STRING
литерал, присоединенный к общей папке таблицы в качестве комментария.-
Одна или несколько секций таблицы, которые необходимо добавить. Ключи секций должны соответствовать структуре секций в таблице и быть связаны со значениями. Если значение
PARTITION clause
отсутствует,ADD TABLE
добавляет таблицу целиком.Чтобы секционировать по ссылке на свойства получателя, используйте синтаксис:
PARTITION (column_name = CURRENT_RECIPIENT().<property-key>)
Секционирование по свойствам получателя применяется к: Databricks SQL Databricks Runtime 12.2 LTS и выше.
-
При необходимости предоставляет таблицу под другим именем. Имя можно уточнить с помощью имени базы данных (схемы). Если значение
table_share_name
не указано, для таблицы будет использоваться ее собственное имя. WITH HISTORY
илиWITHOUT HISTORY
Область применения: Databricks SQL Databricks Runtime 12.2 LTS и более поздних версий.
Если
WITH HISTORY
задано, поделитесь таблицей с полным журналом, позволяя получателям выполнять запросы на поездки по времени. Затем можно ссылаться на общую таблицу с помощью ВЕРСИИ AS И TIMESTAMP AS.Если в дополнение к выполнению запросов на поездки и потоковых операций чтения, вы хотите, чтобы клиенты могли запрашивать веб-канал изменений таблицы (CDF) с помощью функции table_changes() необходимо включить CDF в таблице , прежде чем поделиться ею
WITH HISTORY
.Поведение по умолчанию —
WITHOUT HISTORY
это .
REMOVE TABLE
table_nameУдалите таблицу, указанную
table_name
, из общей папки. Для выполнения этой инструкции необходимо быть владельцем общей папки.alter_add_schema
Область применения: Databricks SQL Databricks Runtime 13.3 LTS и выше
Добавляет схему в общую папку или изменяет существующую общую схему. Для выполнения этой инструкции необходимо быть владельцем общей папки и схемы.
ADD SCHEMA
schema_nameОпределяет добавляемую схему. Если схема не найдена, Azure Databricks вызывает ошибку SCHEMA_NOT_FOUND .
ALTER SCHEMA
schema_nameОпределяет измененную схему. Если схема еще не является частью общей папки, Azure Databricks вызывает ошибку.
COMMENT comment
Необязательный
STRING
литерал, присоединенный к общей папке схемы в качестве комментария.
REMOVE SCHEMA
schema_nameУдалите схему, определяемую
schema_name
из общей папки. Для выполнения этой инструкции необходимо быть владельцем общей папки.alter_add_view
Область применения: Databricks SQL Databricks Runtime 13.3 LTS и выше
Добавляет представление в общую папку или изменяет существующее общее представление. Для выполнения этой инструкции необходимо быть владельцем общей папки и иметь
SELECT
привилегии в представлении.ADD VIEW
view_nameОпределяет добавляемое представление. Если представление не удается найти Azure Databricks, возникает ошибка TABLE_OR_VIEW_NOT_FOUND .
ALTER VIEW
view_nameОпределяет представление, которое нужно изменить. Если представление еще не входит в общую папку Azure Databricks, возникает ошибка.
COMMENT comment
Необязательный
STRING
литерал, присоединенный к общей папке представления в качестве комментария.-
При необходимости предоставляет представление под другим именем. Имя может быть квалифицировано с именем схемы. Если не
view_share_name
указано, представление известно под собственным именем.Если общее имя уже существует, Azure Databricks вызывает ошибку.
REMOVE VIEW
view_nameУдалите представление,
view_name
определенное из общей папки. Для выполнения этой инструкции необходимо быть владельцем общей папки.alter_add_model
Область применения: Databricks SQL Databricks Runtime 14.0 и более поздних версий
Добавляет модель в общую папку или изменяет существующую общую модель. Для выполнения этой инструкции необходимо быть владельцем общей папки и иметь
EXECUTE
права на модель.ADD MODEL
model_nameОпределяет добавленную модель. Если модель не удается найти Azure Databricks, возникает ошибка RESOURCE_DOES_NOT_EXIST.
ALTER MODEL
model_nameОпределяет модель, которая будет изменена. Если модель еще не входит в общую папку Azure Databricks, возникает ошибка.
COMMENT comment
Необязательный
STRING
литерал, присоединенный к общей папке модели в качестве комментария.-
При необходимости предоставляет модель под другим именем. Имя может быть квалифицировано с именем схемы. Если не
model_share_name
указано, модель известна под собственным именем.Если общее имя уже существует, Azure Databricks вызывает ошибку.
REMOVE MODEL
model_nameУдалите модель,
model_name
определяемую из общей папки. Для выполнения этой инструкции необходимо быть владельцем общей папки.RENAME TO
to_share_nameОбласть применения: Databricks SQL Databricks Runtime 11.3 LTS и выше
Переименовывает общую папку. Это имя должно быть уникальным среди всех общих папок в хранилище метаданных. Для выполнения этой инструкции необходимо быть владельцем общей папки и иметь привилегию
CREATE SHARE
в хранилище метаданных.[ SET ] OWNER TO
principalПередает права владения общей папкой субъекту
principal
. Для выполнения этой инструкции необходимо быть владельцем общей папки.Область применения: Databricks SQL Databricks Runtime 11.3 LTS и выше
SET
разрешено в качестве необязательного ключевого слова.
Примеры
-- Creates a share named `some_share`.
> CREATE SHARE some_share;
-- Add a table to the share.
> ALTER SHARE some_share
ADD TABLE my_schema.my_tab
COMMENT 'some comment'
PARTITION(c1_int = 5, c2_date LIKE '2021%')
AS shared_schema.shared_tab;
-- Add a schema to the share.
> ALTER SHARE some_share
ADD SCHEMA some_schema
COMMENT 'some comment';
-- Add a view to the share.
> ALTER SHARE some_share
ADD VIEW my_schema.my_view
COMMENT 'some comment'
AS shared_schema.shared_view;
-- Add a materialized view to the share.
> ALTER SHARE some_share
ADD MATERIALIZED VIEW my_schema.my_mat_view
COMMENT 'some comment'
AS shared_schema.shared_mat_view;
-- Share a table with history
> ALTER SHARE share ADD TABLE table1 WITH HISTORY;
> ALTER SHARE share ADD TABLE table2 WITHOUT HISTORY;
> SHOW ALL IN SHARE share;
Name type ... history_sharing ...
------ ------ ... ----------------
Table1 TABLE ... ENABLED ...
Table2 TABLE ... DISABLED ...
-- Remove the table again
> ALTER SHARE some_share
REMOVE TABLE shared_schema.shared_tab;
-- Remove the schema again
> ALTER SHARE some_share
REMOVE SCHEMA some_schema;
-- Remove a view again
> ALTER SHARE some_share
REMOVE VIEW shared_schema.shared_view;
-- Rename a share
> ALTER SHARE some_share
RENAME TO new_share;
-- Change ownership of the share
> ALTER SHARE some_share
OWNER TO `alf@melmak.et`