Saltar para o conteúdo principal
Versão 3.0

Integrações — Iceberg

ChartVersion3.0.1TypeapplicationAppVersion1.10.0
CompatibilidadeKubernetes1.32+OpenShift4.19+Rancher2.10.x+

Visão geral das integrações

O chart tdp-iceberg requer acesso ao armazenamento S3-compatível (Apache Ozone S3 Gateway, MinIO ou outro endpoint S3) e ao Hive Metastore como catálogo de tabelas.

Nesta página, o foco é mostrar o que o ambiente precisa ter pronto para que os jobs de manutenção funcionem. A ativação dos jobs, frequências e comandos fica em Configuração do Iceberg.

S3 / MinIO

Os CronJobs de manutenção requerem o Secret s3-credentials com as credenciais de acesso ao S3. Crie-o antes do deploy conforme descrito em Segurança — Iceberg.

Hive Metastore

Por padrão, o catálogo Iceberg utiliza um Hive Metastore. Configure o URI de conexão via maintenance.spark.config:

maintenance:
spark:
config:
"spark.sql.catalog.iceberg.type": "hive"
"spark.sql.catalog.iceberg.uri": "thrift://<HIVE_METASTORE_SERVICE>.<NAMESPACE>.svc.cluster.local:9083"
tip

O valor típico é thrift://metastore.hive-metastore.svc.cluster.local:9083; ajuste host e namespace ao seu ambiente.

Configuração de conexões Spark

O exemplo completo com catálogo Iceberg + endpoint S3:

maintenance:
spark:
config:
"spark.sql.catalog.iceberg": "org.apache.iceberg.spark.SparkCatalog"
"spark.sql.catalog.iceberg.type": "hive"
"spark.sql.catalog.iceberg.uri": "thrift://<HIVE_METASTORE_SERVICE>.<NAMESPACE>.svc.cluster.local:9083"
"spark.hadoop.fs.s3a.endpoint": "http://<S3_ENDPOINT>.<NAMESPACE>.svc.cluster.local:9000"
"spark.hadoop.fs.s3a.path.style.access": "true"

Parâmetros de conexão

ParâmetroDescriçãoExemplo
spark.sql.catalog.icebergClasse do catálogo Iceberg para Sparkorg.apache.iceberg.spark.SparkCatalog
spark.sql.catalog.iceberg.typeTipo do catálogohive
spark.sql.catalog.iceberg.uriURI do Hive Metastorethrift://metastore.<NAMESPACE>.svc.cluster.local:9083
spark.hadoop.fs.s3a.endpointURL do endpoint S3http://ozone-s3g.<NAMESPACE>.svc.cluster.local:9000
spark.hadoop.fs.s3a.path.style.accessForçar path-style (necessário para MinIO/Ozone)"true"

Trino

O Trino pode consultar tabelas Iceberg via conector Iceberg. A configuração é realizada do lado do chart tdp-trino — consulte Configuração do Trino.

Spark

As tabelas Iceberg podem ser processadas diretamente pelo Spark. A configuração é realizada do lado do chart tdp-spark — consulte Configuração do Spark.

JupyterLab

O JupyterLab pode consultar tabelas Iceberg via Spark, desde que:

  • a integração Jupyter ↔ Spark esteja funcional;
  • o catálogo Iceberg esteja configurado no Spark;
  • o Hive Metastore e o endpoint S3/MinIO estejam acessíveis.

Consulte:

Airflow

O Airflow pode orquestrar pipelines que operam tabelas Iceberg. A configuração de conexão é realizada do lado do chart tdp-airflow — consulte Integrações — Airflow.

Combinando arquivos de valores

Terminal input
helm upgrade --install <RELEASE_NAME> \
oci://registry.tecnisys.com.br/tdp/charts/tdp-iceberg \
-n <NAMESPACE> \
-f meu-values.yaml \
-f values-integracao.yaml