- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
如何为现有的未分区的 Iceberg 表添加分区?表格已加载数据。
表已创建:
import org.apache.iceberg.hive.HiveCatalog
import org.apache.iceberg.catalog._
import org.apache.iceberg.spark.SparkSchemaUtil
import org.apache.iceberg.PartitionSpec
import org.apache.spark.sql.SaveMode._
val df1 = spark
.range(1000)
.toDF
.withColumn("level",lit("something"))
val catalog = new HiveCatalog(spark.sessionState.newHadoopConf())
val icebergSchema = SparkSchemaUtil.convert(df1.schema)
val icebergTableName = TableIdentifier.of("default", "icebergTab")
val icebergTable = catalog
.createTable(icebergTableName, icebergSchema, PartitionSpec.unpartitioned)
有什么建议吗?
最佳答案
目前,添加分区的方法是手动更新分区规范。
val table = catalog.loadTable(tableName)
val ops = table.asInstanceOf[BaseTable].operations
val spec = PartitionSpec.builderFor(table.schema).identity("level").build
val base = ops.current
val newMeta = base.updatePartitionSpec(spec)
ops.commit(base, newMeta)
有一个拉取请求来添加一个操作来进行更改,比如 addField("level")
,但这还没有完全完成。我认为它会出现在 0.11.0 版本中。
请记住:
INSERT OVERWRITE
将替换整个表。使用规范,只有具有新行的分区将被替换。为避免这种情况,我们建议在 Spark 中使用 DataFrameWriterV2
接口(interface),您可以在其中更明确地说明哪些数据值被覆盖。关于scala - 如何向现有 Iceberg 表添加分区,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60634897/
如何为现有的未分区的 Iceberg 表添加分区?表格已加载数据。 表已创建: import org.apache.iceberg.hive.HiveCatalog import org.apache
背景 在B站,每天都有PB级的数据注入到大数据平台,经过离线或实时的ETL建模后,提供给下游的分析、推荐及预测等场景使用。面对如此大规模的数据,如何高效低成本地满足下游数据的分析需求,一直是我们重点的
我正在经历对现有代码进行单元测试的过程,该代码在编写时并未考虑单元测试。 有几个类的结构是这样的: class Texture { public: friend class Model; pr
我正在尝试在 Windows 10 中设置 Pharo8 图像,使用我手动克隆的 git 存储库,但是 pharo 给出了一个奇怪的错误。以下代码在 linux 上运行良好,但在 Windows 上运
我有一个带有 2 个 Parquet 文件的冰山表,在 s3 中存储 4 行我尝试了以下命令: val tables = new HadoopTables(conf); val table = tab
我想将 Trino 与 Iceberg 表和 Azure ADLS/Blob 存储一起使用,而不是 S3。 我能够成功连接到 S3,例如 connector.name=iceberg iceberg.
我尝试在 Databricks 环境中设置 Apache Iceberg,但在 Spark SQL 中执行 MERGE 语句时遇到错误。 此代码: CREATE TABLE iceberg.db.ta
我尝试在 Databricks 环境中设置 Apache Iceberg,但在 Spark SQL 中执行 MERGE 语句时遇到错误。 此代码: CREATE TABLE iceberg.db.ta
我是一名优秀的程序员,十分优秀!