使用液体集群为三角洲表

重要的

三角洲湖液体聚类可以在公共预览砖运行时13.2及以上。

三角洲湖液体聚类表分区和替换ZORDER为了简化数据布局决策和优化查询性能。液体聚类提供了灵活性重新定义集群键没有重写现有的数据,允许数据布局演变与分析需求。

砖支持提高并发三角洲表启用了液体聚类。看到提高并发性在砖

警告

砖13.2运行时,需要编写或以上优化δ表启用了液体聚类。

液体聚类用于什么?

砖建议液体聚类为所有新三角洲表。下面是场景的例子从集群中受益:

  • 表通常由高基数过滤列。

  • 表数据分布的显著倾斜。

  • 表快速增长,需要维护和调优工作。

  • 与并发写需求表。

  • 表的访问模式随时间变化的。

  • 表,一个典型的分区键可以把表过多或过少的分区。

使液体聚类

你必须使三角洲湖液体聚类时,首先创建一个表。集群与分区或不兼容ZORDER,需要砖的客户管理表中数据的布局和优化操作。

使液体聚类,添加集群通过短语表创建语句,在下面的例子中:

——创建一个空表创建表table1 (col0 int, col1字符串)使用三角洲集群(col0);——使用cta语句创建外部表表集群(col0)位置的table_location SELECT *从表1;——使用一个像CREATE TABLE语句复制配置table3像表1;

警告

表创建启用了液体聚集有大量的表特性使得在创建和使用δversion 7的作家和读者版本3。表协议版本不能降级,和表启用了集群不是由三角洲湖读客户不支持所有启用三角洲读者协议表功能。看到砖三角洲湖管理功能的兼容性如何?

选择集群键

砖建议选择集群键基于常用查询过滤器。集群键可以被定义在任何顺序。如果两列是相关的,你只需要添加一个集群的关键。

如果你将一个现有表,可以考虑以下建议:

当前数据优化技术

建议为集群键

Hive-style分区

使用分区列作为集群键。

z值的索引

使用ZORDER通过作为集群键列。

Hive-style分区和z顺序

同时使用分区列和ZORDER通过作为集群键列。

生成的列来减少基数(例如,日期时间戳)

使用原始的列作为一个集群键,不要创建一个生成的列。

提高并发性在砖

砖为集群提供增强型并发的表比其他三角洲表。除非有行级冲突,并发写操作不冲突,包括优化,插入,合并,更新,删除操作。

为了减少行级冲突的可能性,您可以过滤并发查询,如以下示例:

插入table_name取代在哪里column_name=“some_value”选择*staging_table;

写数据到一个集群表

您必须使用一个作家客户机支持所有δ写协议表功能使用的液体聚类。在砖上,您必须使用砖运行时13.2及以上。

最不自动集群数据写操作。操作集群编写包括以下:

  • 插入操作

  • 商品交易顾问基金语句

  • 复制从拼花格式

  • spark.write.format(“δ”).mode(“追加”)

请注意

集群上写是一个尽力服务的应用程序。如果写操作超过512 gb的数据,液体聚类不应用于写作。因为并不是所有的操作应用液体聚类,砖建议经常运行优化确保所有的数据都是有效地聚集。

如何触发集群

引发聚类时,您必须使用砖运行时的13.2或以上。使用优化命令你的桌子上,就像下面的例子:

优化table_name;

液体聚类是增量,这意味着数据只是重写为必要适应数据需要集群。数据文件与集群键不匹配数据集群不重写。

为获得最佳性能,砖建议定期优化集群的数据工作。表经历许多更新或插入,砖建议安排一个优化每一个或两个小时的工作。因为液体聚类是增量,最多优化工作群集表运行很快。

从集群表读取数据

您可以使用任何集群表中读取数据三角洲湖客户机支持阅读删除向量。最佳查询结果,包括集群键查询过滤器,像下面的例子:

选择*table_name在哪里cluster_key_column_name=“some_value”;

改变集群键

你可以改变集群键表在任何时候通过运行一个改变下面的示例命令,如:

改变table_name集群通过(new_column1,new_column2);

当你改变集群键,随后优化和写操作使用新的聚类方法,但现有的数据不是重写。

你也可以关闭集群通过设置键没有一个,比如下面的例子:

改变table_name集群通过没有一个;

集群设置键没有一个不重写数据已经聚集,但防止未来优化从使用集群键操作。

看看桌子是集群

您可以使用描述命令查看集群键表,就像下面的例子:

描述table_name;描述细节table_name;

限制

存在以下局限性:

  • 你只能指定列的统计数据聚类的钥匙。默认情况下,三角洲的前32列统计信息收集表。

  • 您可以指定多达4列集群键。

  • 不支持clustering-on-write结构化流工作负载。