Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se a:
SQL do Databricks
Altera os metadados associados à exibição.
Permite que você execute qualquer uma das seguintes ações:
- Adicione uma agenda para atualizar uma exibição materializada existente.
- Altere um agendamento de atualização existente para uma exibição materializada.
- Remova a agenda de atualização para uma exibição materializada. Se a agenda for descartada, o objeto precisará ser atualizado manualmente para refletir os dados mais recentes.
Para adicionar ou alterar um comentário em uma exibição materializada, use COMMENT ON.
Observação
Alterar um conjunto de dados criado por pipeline de maneiras que contradizem o SQL definidor pode fazer com que algumas alterações sejam revertidas. Consulte Usando ALTER comandos com Pipelines Declarativos do Lakeflow Spark.
Sintaxe
ALTER MATERIALIZED VIEW view_name
{
{ ADD | ALTER } schedule |
DROP SCHEDULE |
ALTER COLUMN column_clause |
SET ROW FILTER clause |
DROP ROW FILTER |
SET TAGS clause |
UNSET TAGS clause }
schedule
{ SCHEDULE [ REFRESH ] schedule_clause |
TRIGGER ON UPDATE [ AT MOST EVERY trigger_interval ] }
schedule_clause
{ EVERY number { HOUR | HOURS | DAY | DAYS | WEEK | WEEKS } |
CRON cron_string [ AT TIME ZONE timezone_id ] }
column_clause
column_identifier
{ COMMENT clause |
SET MASK clause |
DROP MASK |
SET TAGS clause |
UNSET TAGS clause }
Parâmetros
-
O nome da exibição materializada da qual alterar a definição. O nome não deve incluir uma especificação temporal.
horário
Adicione ou altere uma
SCHEDULEinstrução naTRIGGERexibição materializada.Observação
Você não pode modificar o agendamento de uma exibição materializada criada com o Lakeflow Spark Declarative Pipelines com este comando. Use o editor de pipeline.
SCHEDULE [ REFRESH ] schedule_clauseEVERY number { HOUR | HOURS | DAY | DAYS | WEEK | WEEKS }Para agendar uma atualização que ocorre periodicamente, use
EVERYa sintaxe. SeEVERYa sintaxe for especificada, a tabela de streaming ou a exibição materializada será atualizada periodicamente no intervalo especificado com base no valor fornecido, comoHOUR,HOURS,DAY,DAYS, ,WEEKouWEEKS. A tabela a seguir lista os valores inteiros aceitos paranumber.Unidade de tempo Valor inteiro HOUR or HOURS<1 = H <= 72 DAY or DAYS<1 = D <= 31 WEEK or WEEKS<1 = W <= 8 Observação
As formas singular e plural da unidade de tempo incluída são semanticamente equivalentes.
CRON cron_string [ AT TIME ZONE timezone_id ]Para agendar uma atualização usando um valor cron de quartzo. São aceites time_zone_values válidas. Não há suporte para
AT TIME ZONE LOCAL.Se
AT TIME ZONEestiver ausente, o fuso horário da sessão será usado. SeAT TIME ZONEestiver ausente e o fuso horário da sessão não estiver definido, um erro será lançado.SCHEDULEé semanticamente equivalente aSCHEDULE REFRESH.
TRIGGER ON UPDATE [ AT MOST EVERY trigger_interval ]Importante
O
TRIGGER ON UPDATErecurso está em Beta.Define a exibição materializada a ser atualizada quando uma fonte de dados upstream é atualizada, no máximo uma vez a cada minuto. Defina um valor para
AT MOST EVERYexigir pelo menos um tempo mínimo entre as atualizações.As fontes de dados upstream devem ser tabelas Delta externas ou gerenciadas (incluindo exibições materializadas ou tabelas de streaming) ou exibições gerenciadas cujas dependências são limitadas a tipos de tabela compatíveis.
Habilitar eventos de arquivo pode tornar os gatilhos com mais desempenho e aumenta alguns dos limites de atualizações de gatilho.
A
trigger_intervalinstrução INTERVAL é de pelo menos 1 minuto.TRIGGER ON UPDATEtem as seguintes limitações- Não mais do que 10 fontes de dados upstream por exibição materializada ao usar TRIGGER ON UPDATE.
- No máximo 1000 tabelas de streaming ou exibições materializadas podem ser especificadas com TRIGGER ON UPDATE.
- A
AT MOST EVERYcláusula tem o padrão de 1 minuto e não pode ter menos de 1 minuto.
DROP SCHEDULERemove um agendamento da visão materializada.
ALTER COLUMN clauseConsulte a cláusula ALTERCOLUMN.
Cláusula
SETROW FILTERImportante
Esse recurso está em Visualização Pública.
Adiciona uma função de filtro de linha à exibição materializada. Todas as consultas subsequentes à exibição materializada recebem um subconjunto das linhas em que a função é avaliada como booliana
TRUE. Isso pode ser útil para fins de controle de acesso refinado, em que a função pode inspecionar a identidade ou as associações de grupo do usuário que a invocou para determinar se deseja filtrar algumas linhas.Filtros de linha adicionados após a criação só se propagam para tabelas downstream após a próxima atualização. Para pipelines contínuos, isso requer uma reinicialização do pipeline.
DROP ROW FILTERImportante
Esse recurso está em Visualização Pública.
Descarta o filtro de linha da exibição materializada, se houver. Consultas futuras retornarão todas as linhas da tabela sem nenhuma filtragem automática.
SET TAGS ( { tag_name = tag_value } [, ...] )Importante
Esse recurso está em Visualização Pública.
Aplique tags à visão materializada. Você precisa ter
APPLY TAGpermissão para adicionar tags à visão materializada.tag_nameUm literal
STRING. Otag_namedeve ser exclusivo dentro da visão materializada ou coluna.tag_valueUm literal
STRING.
UNSET TAGS ( tag_name [, ...] )Importante
Esse recurso está em Visualização Pública.
Remova tags da visão materializada. Você precisa ter
APPLY TAGpermissão para remover tags da visão materializada.tag_nameUm literal
STRING. Otag_namedeve ser exclusivo dentro da visão materializada ou coluna.
Cláusula ALTER COLUMN
Importante
Esse recurso está em Visualização Pública.
Altera uma propriedade ou o local de uma coluna.
Sintaxe
ALTER COLUMN
column_identifier
{ COMMENT comment |
SET MASK mask_clause |
DROP MASK |
SET TAGS clause |
UNSET TAGS clause }
Parâmetros
-
O nome da coluna a ser alterada.
COMMENT commentAltera a descrição da coluna
column_name.commentdeve ser uma literal deSTRING.SETCláusula MASKAdiciona uma função para mascarar colunas e anonimizar dados sensíveis. Todas as consultas subsequentes dessa coluna receberão o resultado da aplicação dessa função na coluna, em substituição ao valor original da coluna. Isso pode ser útil para fins de controle de acesso detalhado, em que a função pode inspecionar a identidade ou as associações de grupo do usuário que a invoca para determinar se o valor deve ser redigido.
Máscaras de coluna adicionadas após a criação só se propagam para tabelas downstream após a próxima atualização. Para pipelines contínuos, isso requer uma reinicialização do pipeline.
DROP MASKRemove a máscara de coluna desta coluna, se houver. Consultas futuras dessa coluna receberão os valores originais dessa coluna.
SET TAGS ( { tag_name = tag_value } [, ...] )Aplicar marcas à coluna. Você precisa ter a permissão
APPLY TAGpara adicionar marcas à coluna.nome_da_tag
Um literal
STRING. Otag_namedeve ser exclusivo na tabela ou coluna.tag_value
Um literal
STRING.
UNSET TAGS ( tag_name [, ...] )Remova as etiquetas fornecidas da coluna. Você precisa ter a permissão
APPLY TAGpara remover marcas da coluna.nome_da_tag
Um literal
STRING. Otag_namedeve ser exclusivo na tabela ou coluna.
Exemplos
-- Adds a schedule to refresh the materialized view whenever its upstream data gets updated.
> ALTER MATERIALIZED VIEW my_mv
ADD TRIGGER ON UPDATE;
-- Alters the schedule to refresh the materialized view when its upstream data
-- gets updated, and make sure the update frequency is no more than 1 update
-- per hour.
> ALTER MATERIALIZED VIEW my_mv
ALTER TRIGGER ON UPDATE AT MOST EVERY INTERVAL 1 hour;
-- Alters the schedule to run every two hours for a materialized view
> ALTER MATERIALIZED VIEW my_mv
ALTER SCHEDULE EVERY 2 HOURS;
-- Alters the schedule to refresh a materialized view once a day
-- at midnight in Los Angeles
> ALTER MATERIALIZED VIEW my_mv
ALTER SCHEDULE CRON '0 0 0 * * ? *' AT TIME ZONE 'America/Los_Angeles';
-- Drops the schedule for a materialized view
> ALTER MATERIALIZED VIEW my_mv
DROP SCHEDULE;
-- Adds a column comment
> ALTER MATERIALIZED VIEW my_mv
ALTER COLUMN my_column_name COMMENT 'test'