国产精品天干天干,亚洲毛片在线,日韩gay小鲜肉啪啪18禁,女同Gay自慰喷水

歡迎光臨散文網(wǎng) 會(huì)員登陸 & 注冊(cè)

理解 Databend Cluster key 原理及使用

2023-08-30 11:12 作者:Databend  | 我要投稿


Databend Cluster Key 是指 Databend 可以按聲明的 key 排序存儲(chǔ),主要用于用戶對(duì)時(shí)間響應(yīng)比較高,同時(shí)愿意為這個(gè) cluster key 進(jìn)行額排序操作的用戶。 Databend 只支持一個(gè) Cluster key,Cluster key中可以包含多列及表達(dá)式。

基本語法

更多關(guān)于 Databend Cluster key 語法參考:

https://databend.rs/doc/sql-commands/ddl/clusterkey/

使用注意事項(xiàng)

目前 Databend 在表有 cluster key 的情況下,使用

  • copy into

  • replace into

這兩種方式寫入數(shù)據(jù)時(shí),會(huì)自動(dòng)執(zhí)行 compact 和 recluster 操作。

關(guān)于 Databend Cluster Key 你需要了解的:

  1. Databend 中數(shù)據(jù)分區(qū)按: block_size_threshold (default: 100M ) or row_per_block(default 100萬) 組織,兩者任意達(dá)到之一就會(huì)生成新的 Block

  2. 新生成的 Block 中會(huì)按定義的 cluster key 排序存儲(chǔ),當(dāng)該key的 min = max 時(shí),該 block 為 constant_block, 同時(shí) cluster key 不保證全局有序

  3. 多個(gè) block 之間可能有重疊區(qū)間,如,cluster by (age)

不同區(qū)間的重疊形成了不同的深度,例如上圖:

這樣一個(gè)查詢,需要查找到的深度為 3 ,即為 3 個(gè) Block。

所以表中指定列的重疊block-partitions的平均深度,越小越好。如下所示:

結(jié)果中最重要信息是“average_depth”,數(shù)字越小, 表的clustering效果越好,上圖為: 2.46,屬于比較好的狀態(tài)(小于 total_block_count * 0.1 ) 。block_depth_histogram 告訴更多關(guān)于每個(gè)深度有多少個(gè)分區(qū)的詳細(xì)信息。 如果在較低深度中的分區(qū)數(shù)更多,則表的聚類效果更好。 例如"00004" :38 表示 (3,4] 有 38 個(gè) block 有 4 個(gè)深度。

其它優(yōu)化建議

  1. 一般來講聲明 Cluster key 后對(duì)于區(qū)間查詢和點(diǎn)查都有較大的優(yōu)化

  2. 如果聲明 cluster key 后,還想進(jìn)一步的提升點(diǎn)查或是區(qū)間查詢的能力,可以通過調(diào)整 block 大小

關(guān)于 options 查看: https://databend.rs/doc/sql-reference/table-engines/fuse#options

默認(rèn)數(shù)據(jù)分布:

優(yōu)化數(shù)據(jù)在 Block 中的分布

3. 對(duì)于特別寬的表,建議查詢中只訪問需要的列來減少時(shí)間開銷

4. 對(duì)于復(fù)雜的 SQL 里面有大量聚合的操作還是推薦大一點(diǎn)的 Block 及行數(shù)

參考

  • https://databend.rs/doc/sql-functions/system-functions/clustering_information

  • https://databend.rs/doc/sql-commands/ddl/clusterkey/dml-recluster-table


理解 Databend Cluster key 原理及使用的評(píng)論 (共 條)

分享到微博請(qǐng)遵守國家法律
南雄市| 砚山县| 桦甸市| 镇赉县| 柳河县| 乌兰浩特市| 五莲县| 固原市| 清流县| 吉木萨尔县| 运城市| 宝清县| 师宗县| 特克斯县| 沁源县| 丰镇市| 西藏| 宜春市| 松阳县| 高雄市| 柏乡县| 绥化市| 凉城县| 巩义市| 宜兰市| 盐山县| 大城县| 宜黄县| 湖北省| 仙游县| 乌拉特后旗| 洛扎县| 甘泉县| 专栏| 湘潭县| 合作市| 策勒县| 玉林市| 南华县| 白山市| 突泉县|