Este documento mostra como criar uma tabela Apache Iceberg com metadados no metastore do BigLake através do serviço Dataproc Jobs, da CLI do Spark SQL ou da interface Web do Zeppelin em execução num cluster do Dataproc.
Antes de começar
Se ainda não o fez, crie um Google Cloud projeto, um contentor do Cloud Storage e um cluster do Dataproc.
Configure o seu projeto
- Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Dataproc, BigQuery, and Cloud Storage APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles. -
Install the Google Cloud CLI.
-
Se estiver a usar um fornecedor de identidade (IdP) externo, tem primeiro de iniciar sessão na CLI gcloud com a sua identidade federada.
-
Para inicializar a CLI gcloud, execute o seguinte comando:
gcloud init
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator
(
roles/resourcemanager.projectCreator
), which contains theresourcemanager.projects.create
permission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
-
Enable the Dataproc, BigQuery, and Cloud Storage APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin
), which contains theserviceusage.services.enable
permission. Learn how to grant roles. -
Install the Google Cloud CLI.
-
Se estiver a usar um fornecedor de identidade (IdP) externo, tem primeiro de iniciar sessão na CLI gcloud com a sua identidade federada.
-
Para inicializar a CLI gcloud, execute o seguinte comando:
gcloud init
Crie um contentor do Cloud Storage no seu projeto.
- In the Google Cloud console, go to the Cloud Storage Buckets page.
- Click Create.
- On the Create a bucket page, enter your bucket information. To go to the next
step, click Continue.
-
In the Get started section, do the following:
- Enter a globally unique name that meets the bucket naming requirements.
- To add a
bucket label,
expand the Labels section ( ),
click add_box
Add label, and specify a
key
and avalue
for your label.
-
In the Choose where to store your data section, do the following:
- Select a Location type.
- Choose a location where your bucket's data is permanently stored from the Location type drop-down menu.
- If you select the dual-region location type, you can also choose to enable turbo replication by using the relevant checkbox.
- To set up cross-bucket replication, select
Add cross-bucket replication via Storage Transfer Service and
follow these steps:
Set up cross-bucket replication
- In the Bucket menu, select a bucket.
In the Replication settings section, click Configure to configure settings for the replication job.
The Configure cross-bucket replication pane appears.
- To filter objects to replicate by object name prefix, enter a prefix that you want to include or exclude objects from, then click Add a prefix.
- To set a storage class for the replicated objects, select a storage class from the Storage class menu. If you skip this step, the replicated objects will use the destination bucket's storage class by default.
- Click Done.
-
In the Choose how to store your data section, do the following:
- Select a default storage class for the bucket or Autoclass for automatic storage class management of your bucket's data.
- To enable hierarchical namespace, in the Optimize storage for data-intensive workloads section, select Enable hierarchical namespace on this bucket.
- In the Choose how to control access to objects section, select whether or not your bucket enforces public access prevention, and select an access control method for your bucket's objects.
-
In the Choose how to protect object data section, do the
following:
- Select any of the options under Data protection that you
want to set for your bucket.
- To enable soft delete, click the Soft delete policy (For data recovery) checkbox, and specify the number of days you want to retain objects after deletion.
- To set Object Versioning, click the Object versioning (For version control) checkbox, and specify the maximum number of versions per object and the number of days after which the noncurrent versions expire.
- To enable the retention policy on objects and buckets, click the Retention (For compliance) checkbox, and then do the following:
- To enable Object Retention Lock, click the Enable object retention checkbox.
- To enable Bucket Lock, click the Set bucket retention policy checkbox, and choose a unit of time and a length of time for your retention period.
- To choose how your object data will be encrypted, expand the Data encryption section (Data encryption method. ), and select a
- Select any of the options under Data protection that you
want to set for your bucket.
-
In the Get started section, do the following:
- Click Create.
Crie um cluster do Dataproc. Para poupar recursos e custos, pode criar um cluster Dataproc de nó único para executar os exemplos apresentados neste documento.
A sub-rede na região onde o cluster é criado tem de ter o acesso privado à Google (PGA) ativado.
.Se quiser executar o exemplo da interface Web do Zeppelin neste guia, tem de usar ou criar um cluster do Dataproc com o componente opcional do Zeppelin ativado.
Conceda funções a uma conta de serviço personalizada (se necessário): por predefinição, as VMs do cluster do Dataproc usam a conta de serviço predefinida do Compute Engine para interagir com o Dataproc. Se quiser especificar uma conta de serviço personalizada quando criar o cluster, esta tem de ter a função Dataproc Worker (
roles/dataproc.worker
) ou uma função personalizada com as autorizações da função Worker necessárias.Numa janela de terminal local ou no Cloud Shell, use um editor de texto, como o
vi
ou onano
, para copiar os seguintes comandos para um ficheiroiceberg-table.sql
e, em seguida, guarde o ficheiro no diretório atual.USE CATALOG_NAME; CREATE NAMESPACE IF NOT EXISTS example_namespace; USE example_namespace; DROP TABLE IF EXISTS example_table; CREATE TABLE example_table (id int, data string) USING ICEBERG LOCATION 'gs://BUCKET/WAREHOUSE_FOLDER'; INSERT INTO example_table VALUES (1, 'first row'); ALTER TABLE example_table ADD COLUMNS (newDoubleCol double); DESCRIBE TABLE example_table;
Substitua o seguinte:
- CATALOG_NAME: nome do catálogo do Iceberg.
- BUCKET e WAREHOUSE_FOLDER: contentor do Cloud Storage e pasta usados para o armazém do Iceberg.
Use a CLI gcloud para copiar o ficheiro local
iceberg-table.sql
para o seu contentor no Cloud Storage.gcloud storage cp iceberg-table.sql gs://BUCKET/
Numa janela de terminal local ou no Cloud Shell, execute o seguinte comando
curl
para transferir o ficheiro JARiceberg-spark-runtime-3.5_2.12-1.6.1
para o diretório atual.curl -o iceberg-spark-runtime-3.5_2.12-1.6.1.jar https://storage-download.googleapis.com/maven-central/maven2/org/apache/iceberg/iceberg-spark-runtime-3.5_2.12/1.6.1/iceberg-spark-runtime-3.5_2.12-1.6.1.jar
Usa a CLI gcloud para copiar o ficheiro JAR
iceberg-spark-runtime-3.5_2.12-1.6.1
local do diretório atual para o seu contentor no Cloud Storage.gcloud storage cp iceberg-spark-runtime-3.5_2.12-1.6.1.jar gs://BUCKET/
Execute o seguinte comando gcloud dataproc jobs submit spark-sql localmente numa janela de terminal local ou no Cloud Shell para enviar a tarefa Spark SQL para criar a tabela Iceberg.
gcloud dataproc jobs submit spark-sql \ --project=PROJECT_ID \ --cluster=CLUSTER_NAME \ --region=REGION \ --jars="gs://BUCKET/1.6.1/iceberg-spark-runtime-3.5_2.12-1.6.1.jar,gs://spark-lib/bigquery/iceberg-bigquery-catalog-1.6.1-1.0.1-beta.jar" \ --properties="spark.sql.catalog.CATALOG_NAME=org.apache.iceberg.spark.SparkCatalog,spark.sql.catalog.CATALOG_NAME.catalog-impl=org.apache.iceberg.gcp.bigquery.BigQueryMetastoreCatalog,spark.sql.catalog.CATALOG_NAME.gcp_project=PROJECT_ID,spark.sql.catalog.CATALOG_NAME.gcp_location=LOCATION,spark.sql.catalog.CATALOG_NAME.warehouse=gs://BUCKET/WAREHOUSE_FOLDER" \ -f="gs://BUCKETiceberg-table.sql"
Notas:
- PROJECT_ID: o ID do seu Google Cloud projeto. Os IDs dos projetos estão listados na secção Informações do projeto no Google Cloud painel de controloda consola.
- CLUSTER_NAME: o nome do seu cluster do Dataproc.
- REGION: a região do Compute Engine onde o cluster está localizado.
- CATALOG_NAME: nome do catálogo do Iceberg.
- BUCKET e WAREHOUSE_FOLDER: contentor do Cloud Storage e pasta usados para o armazém do Iceberg.
- LOCATION: uma localização do BigQuery suportada. A localização predefinida é "US".
--jars
: os JARs indicados são necessários para criar metadados de tabelas no metastore do BigLake.--properties
: Propriedades do catálogo.-f
: o ficheiro de tarefaiceberg-table.sql
que copiou para o seu contentor no Cloud Storage.
Veja a descrição da tabela no resultado do terminal quando a tarefa terminar.
Time taken: 2.194 seconds id int data string newDoubleCol double Time taken: 1.479 seconds, Fetched 3 row(s) Job JOB_ID finished successfully.
Para ver os metadados da tabela no BigQuery
Na Google Cloud consola, aceda à página BigQuery.
Ver metadados da tabela Iceberg.
Na Google Cloud consola, aceda a Dataproc Enviar uma tarefa.
Aceda à página Envie um trabalho e, de seguida, preencha os seguintes campos:
- ID da tarefa: aceite o ID sugerido ou insira o seu próprio ID.
- Região: selecione a região onde o cluster está localizado.
- Cluster: selecione o seu cluster.
- Tipo de serviço: selecione
SparkSql
. - Tipo de origem da consulta: selecione
Query file
. - Ficheiro de consulta: inserir
gs://BUCKET/iceberg-table.sql
- Ficheiros JAR: insira o seguinte:
gs://BUCKET/iceberg-spark-runtime-3.5_2.12-1.6.1.jar,gs://spark-lib/bigquery/iceberg-bigquery-catalog-1.6.1-1.0.1-beta.jar
- Propriedades: clique em
key
value
e, de seguida, copie os seguintes pares de chave e valor para definir cinco propriedades.# Chave Valor 1. spark.sql.catalog.CATALOG_NAME
org.apache.iceberg.spark.SparkCatalog
2. spark.sql.catalog.CATALOG_NAME.catalog-impl
org.apache.iceberg.gcp.bigquery.BigQueryMetastoreCatalog
3. spark.sql.catalog.CATALOG_NAME.gcp_project
PROJECT_ID
4. spark.sql.catalog.CATALOG_NAME.gcp_location
LOCATION
5. spark.sql.catalog.CATALOG_NAME.warehouse
gs://BUCKET/WAREHOUSE_FOLDER
Adicionar propriedade
cinco vezes para criar uma lista de cinco campos de entrada
Notas:
- CATALOG_NAME: nome do catálogo do Iceberg.
- PROJECT_ID: o ID do seu Google Cloud projeto. Os IDs dos projetos estão listados na secção Informações do projeto no painel de controlo da consola. região onde o cluster está localizado. Google Cloud
- LOCATION: uma localização do BigQuery suportada. A localização predefinida é "US".
- BUCKET e WAREHOUSE_FOLDER: contentor do Cloud Storage e pasta usados para o armazém do Iceberg.
Clique em Enviar
Para monitorizar o progresso da tarefa e ver o resultado da tarefa, aceda à página Tarefas do Dataproc na Google Cloud consola
Job ID
e, de seguida, clique emJob ID
para abrir a página Detalhes da tarefa.Para ver os metadados da tabela no BigQuery
Na Google Cloud consola, aceda à página BigQuery.
Ver metadados da tabela Iceberg.
- PROJECT_ID: o ID do seu Google Cloud projeto. Os IDs dos projetos estão listados na secção Informações do projeto no Google Cloud painel de controlo da consola.
- CLUSTER_NAME: o nome do seu cluster do Dataproc.
- REGION: a região do Compute Engine onde o cluster está localizado.
- CATALOG_NAME: nome do catálogo do Iceberg.
- BUCKET e WAREHOUSE_FOLDER: contentor do Cloud Storage e pasta usados para o armazém Iceberg. LOCATION: uma localização do BigQuery suportada. A localização predefinida é "US".
jarFileUris
: Os ficheiros JAR indicados são necessários para criar metadados de tabelas no BigQuery Metastore.properties
: Propriedades do catálogo.queryFileUri
: o ficheiro de tarefaiceberg-table.sql
que copiou para o seu contentor no Cloud Storage.Na Google Cloud consola, aceda à página BigQuery.
Ver metadados da tabela Iceberg.
Use o SSH para estabelecer ligação ao nó principal do cluster do Dataproc.
No terminal da sessão SSH, use o editor de texto
vi
ounano
para copiar os seguintes comandos para um ficheiroiceberg-table.sql
.SET CATALOG_NAME = `CATALOG_NAME`; SET BUCKET = `BUCKET`; SET WAREHOUSE_FOLDER = `WAREHOUSE_FOLDER`; USE `${CATALOG_NAME}`; CREATE NAMESPACE IF NOT EXISTS `${CATALOG_NAME}`.example_namespace; DROP TABLE IF EXISTS `${CATALOG_NAME}`.example_namespace.example_table; CREATE TABLE `${CATALOG_NAME}`.example_namespace.example_table (id int, data string) USING ICEBERG LOCATION 'gs://${BUCKET}/${WAREHOUSE_FOLDER}'; INSERT INTO `${CATALOG_NAME}`.example_namespace.example_table VALUES (1, 'first row'); ALTER TABLE `${CATALOG_NAME}`.example_namespace.example_table ADD COLUMNS (newDoubleCol double); DESCRIBE TABLE `${CATALOG_NAME}`.example_namespace.example_table;
Substitua o seguinte:
- CATALOG_NAME: nome do catálogo do Iceberg.
- BUCKET e WAREHOUSE_FOLDER: contentor do Cloud Storage e pasta usados para o armazém do Iceberg.
No terminal da sessão SSH, execute o seguinte comando
spark-sql
para criar a tabela Iceberg.spark-sql \ --packages org.apache.iceberg:iceberg-spark-runtime-3.5_2.12:1.6.1 \ --jars https://storage-download.googleapis.com/maven-central/maven2/org/apache/iceberg/iceberg-spark-runtime-3.5_2.12/1.6.1/iceberg-spark-runtime-3.5_2.12-1.6.1.jar,gs://spark-lib/bigquery/iceberg-bigquery-catalog-1.6.1-1.0.1-beta.jar \ --conf spark.sql.catalog.CATALOG_NAME=org.apache.iceberg.spark.SparkCatalog \ --conf spark.sql.catalog.CATALOG_NAME.catalog-impl=org.apache.iceberg.gcp.bigquery.BigQueryMetastoreCatalog \ --conf spark.sql.catalog.CATALOG_NAME.gcp_project=PROJECT_ID \ --conf spark.sql.catalog.CATALOG_NAME.gcp_location=LOCATION \ --conf spark.sql.catalog.CATALOG_NAME.warehouse=gs://BUCKET/WAREHOUSE_FOLDER \ -f iceberg-table.sql
Substitua o seguinte:
- PROJECT_ID: o ID do seu Google Cloud projeto. Os IDs dos projetos estão listados na secção Informações do projeto no Google Cloud painel de controloda consola.
- LOCATION: uma localização do BigQuery suportada. A localização predefinida é "US".
Veja os metadados da tabela no BigQuery
Na Google Cloud consola, aceda à página BigQuery.
Ver metadados da tabela Iceberg.
Na Google Cloud consola, aceda à página Clusters do Dataproc.
Selecione o nome do cluster para abrir a página Detalhes do cluster.
Clique no separador Interfaces Web para apresentar uma lista de links do Component Gateway para as interfaces Web dos componentes predefinidos e opcionais instalados no cluster.
Clique no link Zeppelin para abrir a interface Web do Zeppelin.
Na interface Web do Zeppelin, clique no menu anónimo e, de seguida, clique em Interpreter para abrir a página Interpreters.
Adicione dois ficheiros JAR ao intérprete do Zeppelin Spark da seguinte forma:
- Escreva "Spark" na caixa
Search interpreters
para deslocar a página até à secção do intérprete Spark. - Clique em Editar.
Cole o seguinte no campo spark.jars:
https://storage-download.googleapis.com/maven-central/maven2/org/apache/iceberg/iceberg-spark-runtime-3.5_2.12/1.6.1/iceberg-spark-runtime-3.5_2.12-1.6.1.jar,gs://spark-lib/bigquery/iceberg-bigquery-catalog-1.6.1-1.0.1-beta.jar
Clique em Guardar na parte inferior da secção do intérprete do Spark e, de seguida, clique em OK para atualizar o intérprete e reiniciar o intérprete do Spark com as novas definições.
- Escreva "Spark" na caixa
No menu do notebook Zeppelin, clique em Criar nova nota.
Na caixa de diálogo Criar nova nota, introduza um nome para o notebook e aceite o intérprete spark predefinido. Clique em Criar para abrir o bloco de notas.
Copie o código PySpark seguinte para o bloco de notas do Zeppelin depois de preencher as variáveis.
%pyspark
from pyspark.sql import SparkSession
project_id = "PROJECT_ID" catalog = "CATALOG_NAME" namespace = "NAMESPACE" location = "LOCATION" warehouse_dir = "gs://BUCKET/WAREHOUSE_DIRECTORY"
spark = SparkSession.builder \ .appName("BigQuery Metastore Iceberg") \ .config(f"spark.sql.catalog.{catalog}", "org.apache.iceberg.spark.SparkCatalog") \ .config(f"spark.sql.catalog.{catalog}.catalog-impl", "org.apache.iceberg.gcp.bigquery.BigQueryMetastoreCatalog") \ .config(f"spark.sql.catalog.{catalog}.gcp_project", f"{project_id}") \ .config(f"spark.sql.catalog.{catalog}.gcp_location", f"{location}") \ .config(f"spark.sql.catalog.{catalog}.warehouse", f"{warehouse_dir}") \ .getOrCreate()
spark.sql(f"USE `{catalog}`;") spark.sql(f"CREATE NAMESPACE IF NOT EXISTS `{namespace}`;") spark.sql(f"USE `{namespace}`;")
\# Create table and display schema (without LOCATION) spark.sql("DROP TABLE IF EXISTS example_iceberg_table") spark.sql("CREATE TABLE example_iceberg_table (id int, data string) USING ICEBERG") spark.sql("DESCRIBE example_iceberg_table;")
\# Insert table data. spark.sql("INSERT INTO example_iceberg_table VALUES (1, 'first row');")
\# Alter table, then display schema. spark.sql("ALTER TABLE example_iceberg_table ADD COLUMNS (newDoubleCol double);")
\# Select and display the contents of the table. spark.sql("SELECT * FROM example_iceberg_table").show()Substitua o seguinte:
- PROJECT_ID: o ID do seu Google Cloud projeto. Os IDs dos projetos estão listados na secção Informações do projeto no Google Cloud painel de controloda consola.
- CATALOG_NAME e NAMESPACE: o nome do catálogo e o espaço de nomes do Iceberg combinam-se para identificar a tabela Iceberg (
catalog.namespace.table_name
). - LOCATION: uma localização do BigQuery suportada. A localização predefinida é "US".
- BUCKET e WAREHOUSE_DIRECTORY: bucket do Cloud Storage e pasta usados como diretório do armazém do Iceberg.
Clique no ícone de execução ou prima
Shift-Enter
para executar o código. Quando a tarefa estiver concluída, a mensagem de estado mostra "Spark Job Finished" e a saída apresenta o conteúdo da tabela:Veja os metadados da tabela no BigQuery
Na Google Cloud consola, aceda à página BigQuery.
Ver metadados da tabela Iceberg.
Mapeamento da base de dados de software de código aberto para o conjunto de dados do BigQuery
Tenha em atenção o seguinte mapeamento entre a base de dados de código aberto e os termos do conjunto de dados do BigQuery:
Base de dados de OSS Conjunto de dados do BigQuery Espaço de nomes, base de dados Conjunto de dados Tabela particionada ou não particionada Tabela Ver Ver Crie uma tabela Iceberg
Esta secção mostra-lhe como criar uma tabela Iceberg com metadados no metastore do BigLake enviando um código Spark SQL para o serviço Dataproc, a CLI Spark SQL e a interface Web do componente Zeppelin, que são executados num cluster Dataproc.
Tarefa do Dataproc
Pode enviar uma tarefa para o serviço Dataproc enviando a tarefa para um cluster do Dataproc através da Google Cloud consola ou da CLI do Google Cloud, ou através de um pedido REST HTTP ou de uma chamada programática gRPC do Dataproc Cloud Client Libraries para a API Dataproc Jobs.
Os exemplos nesta secção mostram como enviar uma tarefa do Spark SQL do Dataproc para o serviço do Dataproc para criar uma tabela do Iceberg com metadados no BigQuery através da CLI gcloud, da consola ou da API REST do Dataproc. Google Cloud
Prepare ficheiros de tarefas
Siga os passos abaixo para criar um ficheiro de tarefa do Spark SQL. O ficheiro contém comandos SQL do Spark para criar e atualizar uma tabela Iceberg.
Em seguida, transfira e copie o ficheiro
iceberg-spark-runtime-3.5_2.12-1.6.1
JAR para o armazenamento na nuvem.Envie a tarefa Spark SQL
Selecione um separador para seguir as instruções de envio da tarefa Spark SQL para o serviço Dataproc através da CLI gcloud, da consola ou da API REST Dataproc.Google Cloud
gcloud
Consola
Siga os passos abaixo para usar a Google Cloud consola para enviar a tarefa Spark SQL para o serviço Dataproc de modo a criar uma tabela Iceberg com metadados no metastore do BigLake.
REST
Pode usar a API Dataproc jobs.submit para enviar a tarefa Spark SQL para o serviço Dataproc para criar uma tabela Iceberg com metadados no metastore do BigLake.
Antes de usar qualquer um dos dados do pedido, faça as seguintes substituições:
Método HTTP e URL:
POST https://dataproc.googleapis.com/v1/projects/PROJECT_ID/regions/REGION/jobs:submit
Corpo JSON do pedido:
{ "projectId": "PROJECT_ID", "job": { "placement": { "clusterName": "CLUSTER_NAME" }, "statusHistory": [], "reference": { "jobId": "", "projectId": "PROJECT_ID" }, "sparkSqlJob": { "properties": { "spark.sql.catalog."CATALOG_NAME": "org.apache.iceberg.spark.SparkCatalog", "spark.sql.catalog."CATALOG_NAME".catalog-impl": "org.apache.iceberg.gcp.bigquery.BigQueryMetastoreCatalog", "spark.sql.catalog."CATALOG_NAME".gcp_project": "PROJECT_ID", "spark.sql.catalog."CATALOG_NAME".gcp_location": "LOCATION", "spark.sql.catalog."CATALOG_NAME".warehouse": "gs://BUCKET/WAREHOUSE_FOLDER" }, "jarFileUris": [ "gs://BUCKET/iceberg-spark-runtime-3.5_2.12-1.5.2.jar,gs://spark-lib/bigquery/iceberg-bigquery-catalog-1.5.2-1.0.1-beta.jar" ], "scriptVariables": {}, "queryFileUri": "gs://BUCKET/iceberg-table.sql" } } }
Para enviar o seu pedido, expanda uma destas opções:
Deve receber uma resposta JSON semelhante à seguinte:
{ "reference": { "projectId": "PROJECT_ID", "jobId": "..." }, "placement": { "clusterName": "CLUSTER_NAME", "clusterUuid": "..." }, "status": { "state": "PENDING", "stateStartTime": "..." }, "submittedBy": "USER", "sparkSqlJob": { "queryFileUri": "gs://BUCKET/iceberg-table.sql", "properties": { "spark.sql.catalog.USER_catalog": "org.apache.iceberg.spark.SparkCatalog", "spark.sql.catalog.USER_catalog.catalog-impl": "org.apache.iceberg.gcp.bigquery.BigQueryMetastoreCatalog", "spark.sql.catalog.USER_catalog.gcp_project": "PROJECT_ID", "spark.sql.catalog.USER_catalog.gcp_location": "LOCATION", "spark.sql.catalog.USER_catalog.warehouse": "gs://BUCKET/WAREHOUSE_FOLDER" }, "jarFileUris": [ "gs://BUCKET/iceberg-spark-runtime-3.5_2.12-1.5.2.jar", "gs://spark-lib/bigquery/iceberg-bigquery-catalog-1.5.2-1.0.1-beta.jar" ] }, "driverControlFilesUri": "gs://dataproc-...", "driverOutputResourceUri": "gs://dataproc-.../driveroutput", "jobUuid": "...", "region": "REGION" }
Para monitorizar o progresso da tarefa e ver o resultado da tarefa, aceda à página Tarefas do Dataproc na Google Cloud consola
Job ID
e, de seguida, clique emJob ID
para abrir a página Detalhes da tarefa.Para ver os metadados da tabela no BigQuery
CLI do Spark SQL
Os passos seguintes mostram como criar uma tabela Iceberg com metadados da tabela armazenados no metastore do BigLake através da CLI do Spark SQL executada no nó principal de um cluster do Dataproc.
Interface Web do Zeppelin
Os passos seguintes mostram como criar uma tabela Iceberg com metadados da tabela armazenados no metastore do BigLake através da interface Web do Zeppelin executada no nó principal de um cluster do Dataproc .