Compartilhar via


ALTER MATERIALIZED VIEW

Aplica-se a:marca de seleção positiva 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 visualização ou em suas colunas, use COMMENT ON.

Sintaxe

ALTER MATERIALIZED VIEW view_name
  { schedule }

schedule
  {
    { ADD | ALTER } SCHEDULE [ REFRESH ]
      schedule_clause |
    DROP SCHEDULE
  }

  schedule_clause
    { EVERY number { HOUR | HOURS | DAY | DAYS | WEEK | WEEKS } |
    CRON cron_string [ AT TIME ZONE timezone_id ] }

Parâmetros

  • SCHEDULE [ REFRESH ] schedule_clause

    Permite que você adicione um agendamento ou altere o agendamento de uma exibição materializada.

    • EVERY number { HOUR | HOURS | DAY | DAYS | WEEK | WEEKS }

      Para agendar uma atualização que ocorre periodicamente, use EVERY a sintaxe. Se EVERY a sintaxe for especificada, a tabela de streaming ou a exibição materializada será atualizada periodicamente no intervalo especificado com base no valor fornecido, como HOUR, HOURS, DAY, DAYS, , WEEKou WEEKS. A tabela a seguir lista os valores inteiros aceitos para number.

      Time unit 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 ZONE estiver ausente, o fuso horário da sessão será usado. Se AT TIME ZONE estiver ausente e o fuso horário da sessão não estiver definido, um erro será lançado. SCHEDULE é semanticamente equivalente a SCHEDULE REFRESH.

Exemplos


  -- Adds a schedule to refresh a materialized view once a day
  -- at midnight in Los Angeles
  > ALTER MATERIALIZED VIEW my_mv
      ADD SCHEDULE CRON '0 0 0 * * ? *' AT TIME ZONE 'America/Los_Angeles';

  -- Alters the schedule to run every 15 minutes for a materialized view
  > ALTER MATERIALIZED VIEW my_mv
      ALTER SCHEDULE EVERY 15 MINUTES;

  -- Drops the schedule for a materialized view
  > ALTER MATERIALIZED VIEW my_mv
      DROP SCHEDULE;