问题标签 [iceberg]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
scala - 如何向现有 Iceberg 表添加分区
如何为未分区的现有 Iceberg 表添加分区?表已经加载了数据。
表已创建:
有什么建议么?
hadoop - 带有 Iceberg 和 S3 的独立 Hive Metastore
我想使用 Presto 来查询存储在 S3 中的 Iceberg 表作为 parquet 文件,因此我需要使用 Hive 元存储。我正在运行由 MySql 支持的独立配置单元元存储服务。我已将 Iceberg 配置为使用 Hive 目录:
我收到以下错误:Caused by: MetaException(message:Got exception: org.apache.hadoop.fs.UnsupportedFileSystemException No FileSystem for scheme "s3")
我已包含/hadoop-3.3.0/share/hadoop/tools/lib
在HADOOP_CLASSPATH
,还将与 aws 相关的 jar 复制到apache-hive-metastore-3.0.0-bin/lib
. 还缺少什么?
java - Apache Iceberg 无法将数据写入表中
我正在尝试通过 Apache Iceberg 0.9.1 将简单数据写入表中,但显示错误消息。我想直接通过 Hadoop 对数据进行 CRUD。我创建了一个 hadooptable ,并尝试从表中读取。之后我尝试将数据写入表中。我准备了一个包含一行的 json 文件。我的代码已经读取了json对象,并排列了数据的顺序,但是最后一步写入数据总是出错。我已经更改了某些版本的依赖包,但显示了另一个错误消息。包的版本是否有问题。请帮我。
这是我的源代码:
这是错误消息:
这是我的 pom.xml:
apache-flink - Flink 的 hive 流与 iceberg/hudi/delta
有一些开源的datake解决方案支持crud/acid/incremental pull,例如Iceberg、Hudi、Delta。我认为他们已经做了 flink 的 Hive Streaming 想做的事情,甚至做得更好,
所以,我想问一下,flink 的 hive 流的真正力量比 flink+iceberg/flink+hudi 提供了什么。也许 flink+iceberg 或 flink+hudi 目前还没有成熟,但这不是一个大问题,它们会是很快成熟。
java - SparkSQL DELETE 命令不会删除 Apache Iceberg 中的一行,是吗?
我使用带有 scala_2.12 的 Spark SQL 3.0。我将数据插入冰山表并成功从表中读取数据。当我尝试通过 spark SQL 从表中删除一条错误记录时,日志显示异常。github 的 apache iceberg 的 issue 1444 显示了上一版本的 iceberg 支持行级删除。为什么我删除不成功?我使用的主要冰山版本是 0.10.0 。包 org.apache.iceberg.iceberg-hive 版本是 0.9.1 。请帮忙!我的 Spark SQL 代码段是:
当代码运行时,异常消息是:
apache-spark - 如何使用 Spark SQL 将数据写入 Apache Iceberg 表?
我正在尝试熟悉 Apache Iceberg,但在理解如何使用 Spark SQL 将一些外部数据写入表时遇到了一些麻烦。
- 我有一个文件one.csv,位于/data目录中
- 我的 Iceberg 目录配置为指向此目录/warehouse
- 我想将此one.csv写入Apache Iceberg 表(最好使用 Spark SQL)
甚至可以使用 Spark SQL 读取外部数据吗?然后把它写到冰山表上?我必须使用 scala 或 python 来执行此操作吗?我已经阅读了大量 Iceberg 和 Spark 3.0.1 文档,但也许我遗漏了一些东西。
代码更新
这是一些我希望对您有所帮助的代码
我有需要使用的数据,位于/one/one.csv目录中
如何使用 Spark 将其放入 Iceberg 表中?所有这些都可以完全使用 SparkSQL 完成吗?
然后目标是我可以直接使用这个冰山表,例如:
这将为我提供/one/one.csv文件中的所有内容。
scala - Iceberg 的 FlinkSink 不会在流式写入中更新元数据文件
我一直在尝试使用 Iceberg 的 FlinkSink 来消耗数据并写入接收器。我成功地从 kinesis 获取数据,并且我看到数据正在写入适当的分区。但是,我没有看到metadata.json
正在更新。没有它我无法查询表。
任何帮助或指针表示赞赏。
以下是代码。
提前致谢。
apache-spark - 从 spark 编写 AVRO 时 Iceberg 不工作
- 将 AVRO 文件从 GCS 附加到表时遇到以下错误。avro 文件是有效的,但我们使用的是放气的 avro,这是一个问题吗?
线程“streaming-job-executor-0”中的异常 java.lang.NoClassDefFoundError: org.apache.iceberg.avro.AvroIterable.newFileReader(AvroIterable.java:101) at org.apache.iceberg 的 org/apache/avro/InvalidAvroMagicException .avro.AvroIterable.iterator(AvroIterable.java:77) 在 org.apache.iceberg.avro.AvroIterable.iterator(AvroIterable.java:37) 在 org.apache.iceberg.relocated.com.google.common.collect.Iterables .addAll(Iterables.java:320) 在 org.apache.iceberg.relocated.com.google.common.collect.Lists.newLinkedList(Lists.java:237) 在 org.apache.iceberg.ManifestLists.read(ManifestLists.java :46) 在 org.apache.iceberg.BaseSnapshot.cacheManifests(BaseSnapshot.java:127) 在 org.apache.iceberg.BaseSnapshot.dataManifests(BaseSnapshot.java:149) 在 org.apache.iceberg.MergingSnapshotProducer.apply(MergingSnapshotProducer. java:343) 在 org.apache.iceberg。SnapshotProducer.apply(SnapshotProducer.java:163) at org.apache.iceberg.SnapshotProducer.lambda$commit$2(SnapshotProducer.java:276) at org.apache.iceberg.util.Tasks$Builder.runTaskWithRetry(Tasks.java:404 ) 在 org.apache.iceberg.util.Tasks$Builder.run(Tasks.java:197) 在 org.apache.iceberg 的 org.apache.iceberg.util.Tasks$Builder.runSingleThreaded(Tasks.java:213)。 util.Tasks$Builder.run(Tasks.java:189) at org.apache.iceberg.SnapshotProducer.commit(SnapshotProducer.java:275) at com.snapchat.transformer.TransformerStreamingWorker.lambda$execute$d121240d$1(TransformerStreamingWorker.java :162) 在 org.apache.spark.streaming.api.java.JavaDStreamLike.$anonfun$foreachRDD$2 的 org.apache.spark.streaming.api.java.JavaDStreamLike.$anonfun$foreachRDD$2(JavaDStreamLike.scala:280) $adapted(JavaDStreamLike.scala:280) 在 org.apache.spark.streaming.dstream。ForEachDStream.$anonfun$generateJob$2(ForEachDStream.scala:51) at scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23) at org.apache.spark.streaming.dstream。 DStream.createRDDWithLocalProperties(DStream.scala:416) at org.apache.spark.streaming.dstream.ForEachDStream.$anonfun$generateJob$1(ForEachDStream.scala:51) at scala.runtime.java8.JFunction0$mcV$sp.apply( JFunction0$mcV$sp.java:23) at scala.util.Try$.apply(Try.scala:213) at org.apache.spark.streaming.scheduler.Job.run(Job.scala:39) at org. apache.spark.streaming.scheduler.JobScheduler$JobHandler.$anonfun$run$1(JobScheduler.scala:257) 在 scala.runtime.java8.JFunction0$mcV$sp.apply(JFunction0$mcV$sp.java:23) 在scala.util.DynamicVariable.withValue(DynamicVariable.scala:62) 在 org.apache.spark.streaming.scheduler.JobScheduler$JobHandler.run(JobScheduler.scala:257) 在 java.util。concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1149) at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:624) at java.lang.Thread.run(Thread.java:748)Caused by: java .lang.ClassNotFoundException: org.apache.avro.InvalidAvroMagicException 在 java.lang.ClassLoader.loadClass 的 java.lang.ClassLoader.loadClass(ClassLoader.java:418) 的 java.net.URLClassLoader.findClass(URLClassLoader.java:382) (ClassLoader.java:351) ... 38 更多418) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:351) ... 38 更多418) 在 java.lang.ClassLoader.loadClass(ClassLoader.java:351) ... 38 更多
- 日志显示冰山表的表已经存在,但是我无法在 gcs 中看到元数据文件?我正在从 dataproc 集群运行 spark 作业,我在哪里可以看到元数据文件?
##################### Iceberg 版本:0.11 spark 版本 3.0 #####################
apache-spark - Iceberg GCS 和一致性
Iceberg 是否支持将数据写入 GCS?因为要使冰山的原子性根据https://iceberg.apache.org/java-api-quickstart/工作,GCS 应该支持原子重命名,但是来自https://cloud.google.com/storage/docs/gsutil/ commands/mv GCS 重命名不是原子的。如果 iceberg 不支持 GCS,处理原子性的解决方法是什么
scala - 将 Flink DataStream 写入 Iceberg 表:NoSuchMethodError: org.apache.parquet.schema.Types$PrimitiveBuilder.as
我尝试将 flink 数据流写入冰山表,如下所示:'''
然后我得到错误:
我检查了 jar 的内容,它包括所需的 Types$PrimitiveBuilder 类:
当我检查源代码时,发现想法错误:
库源与 TypeToMessageType 类的字节码不匹配
但所有其他课程都可以。
我尝试在我的 maven 存储库中删除 iceberg-parquet.jar 和 parquet-column.jar 并重新导入项目,并尝试禁用 Idea 的 Lombok 插件 - 但没有效果。
版本:CDH 6.3.2 Flink 1.11.2 Iceberg 0.11.0