Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
Aplica-se a:
Databricks SQL
Permite executar qualquer uma das seguintes ações:
- Adicione, altere ou elimine um horário ou gatilho para atualizar uma tabela de streaming existente. Se não houver agendamento ou gatilho, o objeto precisará ser atualizado manualmente para refletir os dados mais recentes.
- Adicione, altere ou retire um filtro de linhas para uma tabela de streaming existente.
- Definir ou desativar etiquetas para uma tabela de streaming existente.
- Mude as propriedades das colunas de uma tabela de streaming existente, incluindo máscaras, tags e comentários.
Nota
Alterar um conjunto de dados criado por pipeline de formas que contradizem o SQL definidor pode fazer com que algumas alterações sejam revertidas. Veja Utilizar ALTER comandos com Lakeflow Spark Declarative Pipelines.
Sintaxe
ALTER STREAMING TABLE table_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 tabela de streaming para alterar a definição de. O nome não deve incluir uma especificação temporal.
Horário
Adicione ou altere uma
SCHEDULEinstrução ouTRIGGERna tabela.Nota
Não podes modificar o cronograma de uma tabela de streaming criada com Lakeflow Spark Declarative Pipelines com este comando. Utilize o editor de pipelines.
SCHEDULE [ REFRESH ] schedule_clauseEVERY number { HOUR | HOURS | DAY | DAYS | WEEK | WEEKS }Para programar uma atualização que ocorre periodicamente, use a sintaxe
EVERY. Se a sintaxeEVERYfor especificada, a tabela de streaming ou a vista materializada será atualizada periodicamente no intervalo definido 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 Nota
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 quartz . São aceites time_zone_values válidos.
AT TIME ZONE LOCALnão é suportado.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 versão Beta.Define a tabela para atualizar 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 de origem devem ser tabelas Delta externas ou geridas (incluindo vistas materializadas ou tabelas de streaming) ou vistas geridas cujas dependências são limitadas a tipos de tabela suportados.
Habilitar eventos de arquivo pode tornar os gatilhos mais eficientes e aumenta alguns dos limites nas atualizações de gatilho.
A
trigger_intervalé uma instrução INTERVAL que é de pelo menos 1 minuto.TRIGGER ON UPDATEtem as seguintes limitações:- No máximo 10 fontes de dados upstream por tabela de streaming ao usar TRIGGER ON UPDATE.
- Máximo de 1000 tabelas de streaming ou visualizações materializadas podem ser especificadas com TRIGGER ON UPDATE.
- O
AT MOST EVERYpadrão da cláusula é de 1 minuto e não pode ser inferior a 1 minuto.
DROP SCHEDULERemove um horário da tabela de streaming.
ALTER COLUMN clauseVer cláusula ALTERCOLUMN.
-
Aplica-se a:
Databricks SQL
Databricks Runtime 16.2 e superiorAdiciona uma função de filtro de linha à tabela de streaming. Todas as consultas subsequentes à tabela de streaming recebem um subconjunto das linhas onde a função é avaliada como booleana
TRUE. Isso pode ser útil para fins de controle de acesso refinado, onde a função pode inspecionar a identidade ou as associações de grupo do usuário que invoca para determinar se determinadas linhas devem ser filtradas.Os filtros de linhas adicionados após a criação só se propagam para as tabelas a jusante após a próxima atualização. Para pipelines contínuos, é necessário reiniciar o pipeline.
DROP ROW FILTERAplica-se a:
Databricks SQL
Databricks Runtime 16.2 e superiorDescarta o filtro de linha da tabela de streaming, se houver. Consultas futuras retornam todas as linhas da tabela sem qualquer filtragem automática.
SET TAGS ( { tag_name = tag_value } [, ...] )Aplica-se a:
Databricks SQL
Databricks Runtime 16.3 e superiorAplique etiquetas à tabela de streaming. Você precisa ter
APPLY TAGpermissão para adicionar tags à tabela de streaming.tag_nameUm literal
STRING. Devetag_nameser único dentro da tabela de streaming.tag_valueUm literal
STRING.
UNSET TAGS ( tag_name [, ...] )Aplica-se a:
Databricks SQL
Databricks Runtime 16.3 e superiorRemova as tags da tabela de fluxo. Você precisa ter
APPLY TAGpermissão para remover tags da tabela de streaming.tag_nameUm literal
STRING. Devetag_nameser único dentro da tabela de streaming.
Cláusula ALTER COLUMN
Altera uma propriedade ou a posição 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 commentAplica-se a:
Databricks SQL
Databricks Runtime 16.2 e superiorAltera a descrição da
column_namecoluna.commenttem de ser umSTRINGliteral.SETCláusula MASKAplica-se a:
Databricks SQL
Databricks Runtime 16.2 e superiorAdiciona uma função de máscara de coluna para anonimizar dados sensíveis. Todas as consultas subsequentes dessa coluna receberão o resultado da avaliação dessa função sobre a coluna no lugar do valor original da coluna. Isso pode ser útil para fins de controle de acesso refinado, onde a função pode inspecionar a identidade ou as associações de grupo do usuário que invoca para determinar se o valor deve ser redigido.
As máscaras de coluna adicionadas após a criação só se propagam para as tabelas a jusante após a atualização seguinte. Para pipelines contínuos, é necessário reiniciar o pipeline.
DROP MASKAplica-se a:
Databricks SQL
Databricks Runtime 16.2 e superiorRemova a máscara de coluna desta coluna, se houver. Consultas futuras desta coluna receberão os valores originais da coluna.
SET TAGS ( { tag_name = tag_value } [, ...] )Aplica-se a:
Databricks SQL
Databricks Runtime 16.3 e superiorAplique etiquetas à coluna. Você precisa ter
APPLY TAGpermissão para adicionar tags à coluna.tag_name
Um literal
STRING. Otag_namedeve ser exclusivo dentro da tabela ou coluna.tag_value
Um literal
STRING.
UNSET TAGS ( tag_name [, ...] )Aplica-se a:
Databricks SQL
Databricks Runtime 16.3 e superiorRemova as etiquetas dadas da coluna. Você precisa ter
APPLY TAGpermissão para remover tags da coluna.tag_name
Um literal
STRING. Otag_namedeve ser exclusivo dentro da tabela ou coluna.
Exemplos
-- Adds a schedule to refresh the streaming table whenever its upstream data gets updated.
> ALTER STREAMING TABLE my_st
ADD TRIGGER ON UPDATE;
-- Alters the schedule to refresh the streaming table when its upstream data
-- gets updated, with no more than one update per hour.
> ALTER STREAMING TABLE my_st
ALTER TRIGGER ON UPDATE AT MOST EVERY INTERVAL 1 hour;
-- Alters the schedule to run every one hour.
> ALTER STREAMING TABLE my_st
ALTER SCHEDULE EVERY 1 HOUR;
-- Alters the schedule to refresh the streaming table once a day
-- at midnight in Los Angeles
> ALTER STREAMING TABLE my_st
ALTER SCHEDULE CRON '0 0 0 * * ? *' AT TIME ZONE 'America/Los_Angeles';
-- Drops the schedule for a streaming table
> ALTER STREAMING TABLE my_st
DROP SCHEDULE;
-- Adds a column comment
> ALTER STREAMING TABLE my_st
ALTER COLUMN column_name COMMENT 'test'