Criar e consultar tabelas de metastore no Spark
É possível consultar tabelas Apache Spark Iceberg em um notebook do BigQuery usando mecanismos de código aberto, como o Spark. Essas tabelas são tabelas Iceberg normais com metadados armazenados no metastore do BigQuery. A mesma tabela pode ser consultada no BigQuery e no Spark.
Antes de começar
- Crie uma tabela Iceberg ao usar o Spark em um notebook do BigQuery. O esquema da tabela é armazenado na metastore do BigQuery. Por exemplo, é possível criar a tabela com um notebook do BigQuery, o Dataproc, o Dataproc sem servidor ou uma procedura armazenada.
Considerações
- No momento, somente as tabelas Iceberg são compatíveis.
Ao executar as consultas, mapeie os nomes de namespace e de banco de dados como nomes de conjuntos de dados do BigQuery. A tabela a seguir lista os mapeamentos de chaves aplicáveis a serem usados:
Código aberto BigQuery Namespace Conjunto de dados do BigQuery Banco de dados Conjunto de dados do BigQuery Tabela (particionada ou não) Tabela do BigQuery
Conferir e consultar uma tabela
Depois de criar seus recursos do BigQuery no Spark, você pode acessá-los e consultar no console do Google Cloud . O exemplo a seguir mostra as etapas gerais para consultar uma tabela de metastore usando o Spark interativo:
Use o catálogo personalizado do Iceberg:
USE `CATALOG_NAME`;
Substitua:
CATALOG_NAME
: o nome do catálogo do Spark que você está usando com o job SQL.
Para criar um namespace:
CREATE NAMESPACE IF NOT EXISTS NAMESPACE_NAME;
Substitua:
NAMESPACE_NAME
: o nome do namespace que faz referência à tabela do Spark.
Use o namespace criado:
USE NAMESPACE_NAME;
Crie uma tabela de iceberg:
CREATE TABLE TABLE_NAME (id int, data string) USING ICEBERG;
Substitua:
TABLE_NAME
: um nome para a tabela Iceberg.
Insira uma linha da tabela:
INSERT INTO TABLE_NAME VALUES (1, "first row");
Use o console do Google Cloud para fazer o seguinte:
SELECT * FROM `TABLE_NAME`;
A seguir
- Configure outros recursos do Metastore do BigQuery.