类 DeltaTableBuilder
Object
io.delta.tables.DeltaTableBuilder
:: 演进中 :
用于指定如何创建/替换 Delta 表的构建器。在执行构建器之前,必须指定表名或路径。您可以指定表列、分区列、数据位置、表注释和属性,以及如何创建/替换 Delta 表。
执行构建器后,将返回 DeltaTable
的实例。
使用表名创建带生成列的 Delta 表的 Scala 示例
val table: DeltaTable = DeltaTable.create()
.tableName("testTable")
.addColumn("c1", dataType = "INT", nullable = false)
.addColumn(
DeltaTable.columnBuilder("c2")
.dataType("INT")
.generatedAlwaysAs("c1 + 10")
.build()
)
.addColumn(
DeltaTable.columnBuilder("c3")
.dataType("INT")
.comment("comment")
.nullable(true)
.build()
)
.partitionedBy("c1", "c2")
.execute()
使用位置创建 Delta 表的 Scala 示例
val table: DeltaTable = DeltaTable.createIfNotExists(spark)
.location("/foo/`bar`")
.addColumn("c1", dataType = "INT", nullable = false)
.addColumn(
DeltaTable.columnBuilder(spark, "c2")
.dataType("INT")
.generatedAlwaysAs("c1 + 10")
.build()
)
.addColumn(
DeltaTable.columnBuilder(spark, "c3")
.dataType("INT")
.comment("comment")
.nullable(true)
.build()
)
.partitionedBy("c1", "c2")
.execute()
替换表的 Java 示例
DeltaTable table = DeltaTable.replace()
.tableName("db.table")
.addColumn("c1", "INT", false)
.addColumn(
DeltaTable.columnBuilder("c2")
.dataType("INT")
.generatedAlwaysBy("c1 + 10")
.build()
)
.execute();
- 自
- 1.0.0
-
方法摘要
修饰符及类型方法描述:: 演进中 ::: 演进中 ::: 演进中 ::: 演进中 :addColumn
(org.apache.spark.sql.types.StructField col) :: 演进中 :addColumns
(org.apache.spark.sql.types.StructType cols) :: 演进中 ::: 演进中 ::: 演进中 ::: 演进中 :执行()
:: 演进中 ::: 演进中 :partitionedBy
(String... colNames) :: 演进中 :partitionedBy
(scala.collection.immutable.Seq<String> colNames) :: 演进中 ::: 演进中 ::: 演进中 :
-
方法详情
-
addColumn
:: 演进中 :指定列。
- 参数
colName
- 字符串列名dataType
- 字符串 DDL 数据类型- 返回
- (未记录)
- 自
- 1.0.0
-
addColumn
:: 演进中 :指定列。
- 参数
colName
- 字符串列名dataType
- dataType DDL 数据类型- 返回
- (未记录)
- 自
- 1.0.0
-
addColumn
:: 演进中 :指定列。
- 参数
colName
- 字符串列名dataType
- 字符串 DDL 数据类型nullable
- 布尔值,表示列是否可为空- 返回
- (未记录)
- 自
- 1.0.0
-
addColumn
public DeltaTableBuilder addColumn(String colName, org.apache.spark.sql.types.DataType dataType, boolean nullable) :: 演进中 :指定列。
- 参数
colName
- 字符串列名dataType
- dataType DDL 数据类型nullable
- 布尔值,表示列是否可为空- 返回
- (未记录)
- 自
- 1.0.0
-
addColumn
:: 演进中 :指定列。
- 参数
col
- structField 列结构体- 返回
- (未记录)
- 自
- 1.0.0
-
addColumns
:: 演进中 :使用现有模式指定列。
- 参数
cols
- structType 列的现有模式- 返回
- (未记录)
- 自
- 1.0.0
-
clusterBy
:: 演进中 :指定用于在文件系统上聚类输出的列。
注意:这应该只包括已在模式中定义的表列。
- 参数
colNames
- string* 用于聚类的列名- 返回
- (未记录)
- 自
- 3.2.0
-
clusterBy
:: 演进中 :指定用于在文件系统上聚类输出的列。
注意:这应该只包括已在模式中定义的表列。
- 参数
colNames
- string* 用于聚类的列名- 返回
- (未记录)
- 自
- 3.2.0
-
comment
:: 演进中 :指定表注释以描述表。
- 参数
comment
- 字符串表注释- 返回
- (未记录)
- 自
- 1.0.0
-
执行
:: 演进中 :执行创建/替换 Delta 表的命令并返回
DeltaTable
的实例。- 返回
- (未记录)
- 自
- 1.0.0
-
location
:: 演进中 :指定存储表数据的目录路径,可以是分布式存储上的路径。
- 参数
location
- 字符串数据位置- 返回
- (未记录)
- 自
- 1.0.0
-
partitionedBy
:: 演进中 :指定用于在文件系统上分区输出的列。
注意:这应该只包括已在模式中定义的表列。
- 参数
colNames
- string* 用于分区的列名- 返回
- (未记录)
- 自
- 1.0.0
-
partitionedBy
:: 演进中 :指定用于在文件系统上分区输出的列。
注意:这应该只包括已在模式中定义的表列。
- 参数
colNames
- string* 用于分区的列名- 返回
- (未记录)
- 自
- 1.0.0
-
property
:: 演进中 :指定键值对以标记表定义。
- 参数
key
- 字符串表属性键value
- 字符串表属性值- 返回
- (未记录)
- 自
- 1.0.0
-
tableName
:: 演进中 :指定表名,可选地使用数据库名 [database_name.]table_name 进行限定。
- 参数
identifier
- 字符串表名- 返回
- (未记录)
- 自
- 1.0.0
-