A E/S gerenciada oferece suporte aos seguintes recursos para o BigQuery:
- Criação de tabelas dinâmicas
- Destinos dinâmicos
- Para leituras, o conector usa a API BigQuery Storage Read.
Para gravações, o conector usa os seguintes métodos do BigQuery:
- Se a origem for ilimitada e o Dataflow estiver usando o processamento de streaming exatamente uma vez, o conector fará gravações no BigQuery usando a API BigQuery Storage Write com semântica de entrega exatamente uma vez.
- Se a origem não for limitada e o Dataflow estiver usando o processamento de streaming pelo menos uma vez, o conector fará gravações no BigQuery usando a API BigQuery Storage Write com semântica de entrega pelo menos uma vez.
- Se a origem for limitada, o conector usará carregamentos de arquivos do BigQuery.
Requisitos
Os seguintes SDKs são compatíveis com E/S gerenciada para BigQuery:
- SDK do Apache Beam para Java versão 2.61.0 ou mais recente
- SDK do Apache Beam para Python versão 2.61.0 ou mais recente
Configuração
A E/S gerenciada para BigQuery é compatível com os seguintes parâmetros de configuração:
BIGQUERY
Ler
Configuração | Tipo | Descrição |
---|---|---|
kms_key |
str
|
Use essa chave do Cloud KMS para criptografar seus dados |
consulta |
str
|
A consulta SQL a ser executada para ler da tabela do BigQuery. |
row_restriction |
str
|
Leia somente as linhas que correspondem a esse filtro, que precisa ser compatível com o SQL padrão do Google. Isso não é compatível com a leitura por consulta. |
campos |
list[str]
|
Leia apenas os campos (colunas) especificados de uma tabela do BigQuery. Os campos podem não ser retornados na ordem especificada. Se nenhum valor for especificado, todos os campos serão retornados. Exemplo: "col1, col2, col3" |
tabela |
str
|
O nome totalmente qualificado da tabela do BigQuery de onde ler. Formato: [${PROJECT}:]${DATASET}.${TABLE} |
BIGQUERY
Gravar
Configuração | Tipo | Descrição |
---|---|---|
table |
str
|
A tabela do BigQuery em que a gravação será feita. Formato: [${PROJECT}:]${DATASET}.${TABLE} |
drop |
list[str]
|
Uma lista de nomes de campos a serem descartados do registro de entrada antes da gravação. É mutuamente exclusivo com "keep" e "only". |
keep |
list[str]
|
Uma lista de nomes de campos a serem mantidos no registro de entrada. Todos os outros campos são descartados antes da gravação. É mutuamente exclusivo com "drop" e "only". |
kms_key |
str
|
Use essa chave do Cloud KMS para criptografar seus dados |
apenas |
str
|
O nome de um único campo de registro que precisa ser gravado. É mutuamente exclusivo com "keep" e "drop". |
triggering_frequency_seconds |
int64
|
Determina a frequência com que o progresso é "confirmado" no BigQuery. O padrão é a cada 5 segundos. |
A seguir
Para mais informações e exemplos de código, consulte os seguintes tópicos: