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

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:

  1. 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.
  2. 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.
  3. Use o namespace criado:

    USE NAMESPACE_NAME;
  4. Crie uma tabela de iceberg:

    CREATE TABLE TABLE_NAME (id int, data string) USING ICEBERG;

    Substitua:

    • TABLE_NAME: um nome para a tabela Iceberg.
  5. Insira uma linha da tabela:

    INSERT INTO TABLE_NAME VALUES (1, "first row");
  6. Use o console do Google Cloud para fazer o seguinte:

     SELECT * FROM `TABLE_NAME`;

A seguir