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.
Use o Streaming Estruturado com o Catálogo do Unity para gerenciar a governança de dados para suas cargas de trabalho incrementais e de streaming no Azure Databricks. Este documento descreve a funcionalidade com suporte e sugere as práticas recomendadas para usar o Catálogo do Unity e o Streaming Estruturado juntos.
Quais funcionalidades do Structured Streaming são suportadas pelo Unity Catalog?
O Catálogo do Unity não adiciona limites explícitos para fontes e coletores de Streaming Estruturados disponíveis no Azure Databricks. O modelo de governança de dados do Catálogo do Unity permite transmitir dados de tabelas gerenciadas e externas no Catálogo do Unity. Você também pode usar locais externos gerenciados pelo Catálogo do Unity para interagir com dados usando URIs de armazenamento de objetos. Você pode gravar em tabelas externas usando nomes de tabela ou caminhos de arquivo. Você deve interagir com tabelas gerenciadas no Catálogo do Unity usando o nome da tabela.
Use locais externos gerenciados pelo Catálogo do Unity ao especificar caminhos para pontos de verificação de streaming estruturados. Para saber mais sobre como conectar o armazenamento com segurança ao Catálogo do Unity, consulte Conectar-se ao armazenamento de objetos de nuvem usando o Catálogo do Unity.
Qual funcionalidade de Streaming Estruturado não tem suporte no Catálogo do Unity?
Não há suporte para o modo de processamento contínuo do Apache Spark. Consulte Processamento contínuo no Guia de programação de streaming estruturado do Spark.
Para obter uma lista de recursos de Streaming Estruturado que não têm suporte no Catálogo do Unity com base no modo de acesso de computação, consulte limitações de streaming e streaming e requisitos de exibição materializados na computação dedicada.
Ler uma visualização do Unity Catalog como um fluxo
No Databricks Runtime 14.1 e superior, você pode usar o Streaming Estruturado para executar leituras de streaming de exibições registradas no Catálogo do Unity. O Azure Databricks só dá suporte a leitura contínua de exibições definidas em tabelas Delta.
Para ler uma visão com Streaming Estruturado, forneça o identificador para a visão ao método .table(), como no exemplo a seguir:
df = (spark.readStream
.table("demoView")
)
Os usuários precisam ter privilégios SELECT no catálogo de destino.
Opções com suporte para configurar leituras de streaming em visualizações
Há suporte para as seguintes opções ao configurar leituras de streaming em views:
maxFilesPerTriggermaxBytesPerTriggerignoreDeletesskipChangeCommitswithEventTimeOrderstartingTimestampstartingVersion
O leitor de streaming aplica essas opções aos arquivos e metadados que definem as tabelas Delta subjacentes.
Importante
Leituras em visualizações definidas com UNION ALL não dão suporte às opções withEventTimeOrder e startingVersion.
Operações com suporte em visualizações de origem
Nem todas as exibições dão suporte a leituras de streaming. Operações sem suporte em exibições de origem incluem agregações e classificação.
A lista a seguir fornece descrições e definições de exibição de exemplo para operações com suporte:
Projeto
Descrição: controla permissões no nível da coluna
Operador:
SELECT... FROM...Exemplo de instruções :
CREATE VIEW project_view AS SELECT id, value FROM source_table
Filtro
Descrição: controla as permissões de nível de linha
Operador:
WHERE...Exemplo de instruções :
CREATE VIEW filter_view AS SELECT * FROM source_table WHERE value > 100
Unir tudo
Descrição: Resultados de várias tabelas
Operador:
UNION ALLExemplo de instruções :
CREATE VIEW union_view AS SELECT id, value FROM source_table1 UNION ALL SELECT * FROM source_table2
Observação
Não é possível modificar a definição da visão para adicionar ou alterar as tabelas referenciadas na visão e manter o mesmo ponto de verificação de streaming.
Limitações
As seguintes limitações se aplicam:
Você só pode fazer streaming de exibições apoiadas por tabelas Delta. Não há suporte para exibições definidas em relação a outras fontes de dados.
Você deve registrar visualizações com o Unity Catalog.
A seguinte exceção será exibida se você fizer a transmissão em uma exibição com um operador sem suporte:
UnsupportedOperationException: [UNEXPECTED_OPERATOR_IN_STREAMING_VIEW] Unexpected operator <operator> in the CREATE VIEW statement as a streaming source. A streaming view query must consist only of SELECT, WHERE, and UNION ALL operations.A seguinte exceção será exibida se você fornecer opções sem suporte:
AnalysisException: [UNSUPPORTED_STREAMING_OPTIONS_FOR_VIEW.UNSUPPORTED_OPTION] Unsupported for streaming a view. Reason: option <option> is not supported.