Recursos e limitações não suportados para tabelas híbridas¶
As orientações a seguir sobre recursos e limitações não suportados se aplicam a tabelas híbridas e estão sujeitas a alterações.
Recursos sem suporte¶
Tabelas híbridas não oferecem suporte a:
Limitações¶
- Nuvens e regiões
As tabelas híbridas estão disponíveis apenas na versão preliminar pública em regiões públicas selecionadas do Amazon Web Services (AWS):
Região da nuvem
ID da região da nuvem
US West (Oregon)
us-west-2
US East (Ohio)
us-east-2
US East (N. Virginia)
us-east-1
EU (Irlanda)
eu-west-1
EU (Frankfurt)
eu-central-1
Asia Pacific (Tokyo)
ap-northeast-1
Asia Pacific (Sydney)
ap-southeast-2
As tabelas híbridas não estão disponíveis no Azure ou no Google Cloud Platform (GCP).
As tabelas híbridas não estão disponíveis em regiões SnowGov.
As tabelas híbridas não estão disponíveis para contas de avaliação.
Se você for cliente do Virtual Private Snowflake (VPS), entre em contato com o suporte Snowflake para saber como ativar tabelas híbridas para sua conta.
- Chaves de clustering
As chaves de clustering não são suportadas em tabelas híbridas. Para obter mais informações, consulte Chaves de clustering e tabelas clusterizadas. Os dados em tabelas híbridas são ordenados pela chave primária.
- Consistência
Por padrão, as tabelas híbridas usam um modelo de consistência baseado em sessão onde as operações de leitura na sessão retornam os dados mais recentes das operações de gravação na mesma sessão. Pode haver alguma desatualização (menos de 100ms) para alterações feitas fora da sessão. Para evitar a desatualização, defina
READ_LATEST_WRITES = true
no nível da instrução ou da sessão. Observe que isso pode gerar alguma sobrecarga de latência de alguns milissegundos.
- Restrições
Embora as restrições de chave primária, exclusiva e de chave estrangeira sejam aplicadas em tabelas híbridas, as seguintes limitações se aplicam:
As restrições só podem ser definidas na criação da tabela.
As restrições são impostas no nível da linha.
As restrições não são impostas no nível da instrução ou da transação (ou seja, restrições diferidas).
Você não pode alterar uma coluna para ser exclusiva.
As seguintes limitações adicionais se aplicam a chaves estrangeiras:
As restrições de chave estrangeira são suportadas apenas entre tabelas híbridas pertencentes ao mesmo banco de dados.
A tabela referenciada de uma restrição de chave estrangeira não pode ser truncada enquanto existir o relacionamento de chave estrangeira.
As restrições de chave estrangeira não oferecem suporte à correspondência parcial.
As restrições de chave estrangeira não oferecem suporte ao comportamento adiável.
As restrições de chave estrangeira oferecem suporte a apenas comportamentos RESTRICT e NO ACTION para operações DELETE e UPDATE.
As restrições de chave estrangeira são impostas no nível da instrução.
- COPY
Ao usar COPY INTO uma tabela híbrida, ABORT_STATEMENT é a única opção suportada para ON_ERROR. A configuração ON_ERROR=SKIP_FILE retornará um erro. Para obter mais informações, consulte Carregamento de dados.
- Tamanho dos dados
Você está limitado a armazenar 100GB dados em tabelas híbridas na sua conta. Consulte Cotas e limitação para obter mais informações.
- Comandos DML
Ao usar comandos DML para alterar um pequeno número de linhas, otimize o desempenho usando instruções INSERT, UPDATE ou DELETE em vez de MERGE.
- Índices
Embora os índices secundários sejam suportados, os seguintes recursos de índice não são suportados atualmente:
Adição de uma coluna para fazer parte de um índice.
Criação de um índice em coluna(s) de tipo de dados semiestruturados (ARRAY, OBJECT, VARIANT).
Você não pode modificar um índice em uma tabela híbrida existente.
Para usar um índice secundário em uma tabela híbrida, você deve usar uma função que receba o privilégio SELECT na tabela. Se você tiver acesso apenas a outros objetos além da própria tabela híbrida, não poderá usar índices secundários.
As colunas TIMESTAMP são suportadas. No entanto, comparações (por exemplo, predicados WHERE) com colunas TIMESTAMP que fazem parte de uma chave composta em uma tabela ou índice base não são suportadas atualmente e causam um erro.
- Carregamento de dados
É recomendado usar CREATE TABLE … AS SELECT para carregamento em massa de dados em uma tabela híbrida. Esta opção é otimizada para desempenho e é aproximadamente 10 vezes mais rápida que outras opções, como COPY ou INSERT INTO… SELECT, ao carregar vários milhões de registros.
Consulte Carregamento de dados para obter mais informações.
- Aplicativos nativos
Você pode incluir tabelas híbridas em um Snowflake Native App. No entanto, as tabelas híbridas não podem ser compartilhadas do provedor para o consumidor. Os Native Apps podem criar tabelas híbridas na conta do consumidor e podem ler e gravar nessas tabelas híbridas. Você também pode expor tabelas híbridas a funções de aplicativo para que possam ser consultadas diretamente por usuários consumidores.
Você não pode criar uma tabela híbrida em uma conta de provedor nem incluir essa tabela híbrida em uma exibição compartilhada por meio do aplicativo nativo.
- Periodic Rekeying
Você não poderá usar tabelas híbridas se sua conta Snowflake estiver habilitada para usar rechaveamento periódico. Se o rechaveamento periódico estiver ativado em sua conta e você quiser usar tabelas híbridas, deverá usar um comando ALTER ACCOUNT para definir o parâmetro PERIODIC_DATA_REKEYING como
FALSE
.
- Cotas e limitação
O uso de tabelas híbridas é restrito por cotas para garantir a disponibilidade equitativa de recursos compartilhados, garantir qualidade de serviço consistente e reduzir picos de uso. Por padrão, essas cotas são impostas à sua conta Snowflake no nível da conta e são compartilhadas por todos os bancos de dados da sua conta.
Cota
Padrão
Notas
Armazenamento híbrido
100GB
A cota de armazenamento híbrido controla a quantidade de dados que você pode armazenar em tabelas híbridas. Se você exceder a cota de armazenamento, as operações WRITE que adicionam dados a quaisquer tabelas híbridas serão temporariamente bloqueadas até que seu consumo de armazenamento híbrido volte a ficar abaixo da cota por meio da exclusão de dados.
Solicitações de tabelas híbridas
Aproximadamente 1.000 operações por segundo
A cota de solicitação de tabela híbrida controla a taxa na qual você pode ler e gravar em tabelas híbridas. Você deve conseguir até 1.000 operações por segundo em tabelas híbridas para uma carga de trabalho balanceada que consiste em 80% de leituras de pontos e 20% de gravações de pontos. Você pode identificar a limitação usando o exemplo em Exibição AGGREGATE_QUERY_HISTORY.
Se você receber um erro ou estiver limitado por atingir um limite de cota, modifique sua carga de trabalho para permanecer abaixo do limite de cota. Se você tiver uma carga de trabalho que exija uma cota de armazenamento ou taxa de transferência mais alta, entre em contato com o suporte Snowflake para discutir um possível aumento do limite de cota. Para cargas de trabalho com requisitos de capacidade consistentes conhecidos, seus bancos de dados individuais podem ser isolados para que você possa ter alocações de cotas separadas do restante da sua conta Snowflake.
- Replicação
A replicação de tabelas híbridas não é suportada atualmente. Se um banco de dados primário contiver uma tabela híbrida, a operação de atualização falhará.
- SQL API
A SQL API não é compatível com tabelas híbridas. O uso de SQL API pode produzir erros ou resultados inesperados em consultas em dados armazenados em tabelas híbridas.
- Taxa de transferência
Você pode executar até aproximadamente 1.000 operações por segundo em tabelas híbridas em sua conta para uma carga de trabalho de leitura/gravação balanceada de 80%/20%. Se você exceder esse limite, o Snowflake poderá reduzir sua produtividade. Consulte Cotas e limitação para obter mais informações.
- Transações
Para tabelas híbridas, o escopo da transação é o banco de dados no qual reside a tabela híbrida. Todas as tabelas híbridas de uma transação devem residir no mesmo banco de dados; tabelas padrão do Snowflake na mesma transação não são afetadas por esta restrição e podem residir em bancos de dados diferentes.
- Tri-Secret Secure
Você não poderá usar tabelas híbridas se sua conta Snowflake estiver habilitada para usar Tri-Secret Secure. Antes de usar tabelas híbridas, verifique se sua conta Snowflake está habilitada para Tri-Secret Secure entrando em contato com o suporte Snowflake.
- UNDROP
UNDROP não é compatível com tabelas híbridas. Adicionalmente:
UNDROP SCHEMA e UNDROP DATABASE é bem-sucedido para entidades que contêm tabelas híbridas, mas essas tabelas híbridas e suas restrições e índices associados não podem ser restaurados.
A coluna DELETED em Exibição TABLES exibe o horário da exclusão como o horário UNDROP da entidade pai.
Exibição ACCESS_HISTORY contém uma entrada para DROP/UNDROP da entidade pai, não das tabelas híbridas.