国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

優(yōu)化索引粒度參數(shù)提升ClickHouse查詢性能

這篇具有很好參考價值的文章主要介紹了優(yōu)化索引粒度參數(shù)提升ClickHouse查詢性能。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

當對高基數(shù)列進行過濾查詢時,總是希望盡可能跳過更多的行。否則需要處理更多數(shù)據(jù)、需要更多資源。ClickHouse缺省在MergeTree表讀取8192行數(shù)據(jù)塊,但我們可以在創(chuàng)建表時調整該index_granularity 參數(shù)。本文通過示例說明如何調整該參數(shù)優(yōu)化查詢性能。

index_granularity 參數(shù)默認值

下面示例,創(chuàng)建表并插入1億條記錄,從1到100M-1:

CREATE TABLE deleteme
(
    `number` UInt64
)
ENGINE = MergeTree
PARTITION BY number % 10
ORDER BY number AS
SELECT number 
FROM numbers(100000000)

下面過濾行,條件為10000倍數(shù)的行:

SELECT *
FROM deleteme
WHERE number IN (
    SELECT number * 10000
    FROM numbers(100000)
)
FORMAT `Null`

Query id: 11412bc3-05de-4790-9b65-06b139761e0c

Ok.

0 rows in set. Elapsed: 1.211 sec. Processed 100.00 million rows, 800.00 MB (82.56 million rows/s., 660.45 MB/s.)

這里使用 FORMAT Null,我們僅想了解查詢性能,無需返回結果??梢钥吹綊呙枇巳?,這是因為index_granularity 默認為8192,大約10000行,意味著讀所有數(shù)據(jù)塊,大小800MB。

計算過程大概為,首先確定數(shù)據(jù)在哪個塊,因為默認8192,因此所有塊都有我們需要的數(shù)據(jù)。進入具體某個塊之后再次采用二分法進行查找,雖然算法選擇正確,但仍需要全表掃描。下面我們看減少index_granularity參數(shù)情況呢。

index_granularity=128

下面通過設置index_granularity=128,縮小處理數(shù)據(jù)量:

CREATE TABLE deleteme
(
    `number` UInt64
)
ENGINE = MergeTree
PARTITION BY number % 10
ORDER BY number
SETTINGS index_granularity=128 AS
SELECT number
FROM numbers(100000000)

下面運行上面相同查詢:

SELECT *
FROM deleteme
WHERE number IN (
    SELECT number * 10000
    FROM numbers(100000)
)
FORMAT `Null`

0 rows in set. Elapsed: 0.785 sec. Processed 12.84 million rows, 102.73 MB (16.35 million rows/s., 130.81 MB/s.)

可以看到僅掃描了12.84百萬行,僅102.73MB大小。極大地降低了查詢時間和計算成本。因為粒度變小,自動跳過了很多數(shù)據(jù)塊,具體到某個快時,數(shù)據(jù)量很小,查找速度自然很快,因此在這種場景下粒度小,查詢速度更快。當然,調整index_granularity也會帶來存儲成本,索引會變大,因此插入變慢。有時讀取較小的數(shù)據(jù)塊并不能提升查詢性能,這取決與查詢方式。盡管如此index_granularity是一個很好的技巧,可以使提升查詢性能。

總結

index_granularity參數(shù)默認為8192,在基數(shù)特別大的場景中,針對單條記錄查詢時,選擇較低的index_granularity參數(shù)值,會有效提升查詢性能。參考文檔:Minimize processed bytes with index granularity | ClickHouse Knowledge Base (tinybird.co)

?文章來源地址http://www.zghlxwxcb.cn/news/detail-511870.html

到了這里,關于優(yōu)化索引粒度參數(shù)提升ClickHouse查詢性能的文章就介紹完了。如果您還想了解更多內容,請在右上角搜索TOY模板網以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網!

本文來自互聯(lián)網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • mysql高級三:sql性能優(yōu)化+索引優(yōu)化+慢查詢日志

    mysql高級三:sql性能優(yōu)化+索引優(yōu)化+慢查詢日志

    內容介紹 單表索引失效案例 0 、思考題: 如果把 100 萬數(shù)據(jù)插入 MYSQL ,如何提高插入效率 (1)關閉自動提交,只手動提交一次 (2)刪除除主鍵索引外其他索引 (3)拼寫mysql可以執(zhí)行的長sql,批量插入數(shù)據(jù) (4)使用java多線程 (5)使用框架,設置屬性,實現(xiàn)批量插入 1、

    2024年02月12日
    瀏覽(91)
  • PostgreSQL性能調優(yōu):優(yōu)化查詢和索引設計

    PostgreSQL性能調優(yōu):優(yōu)化查詢和索引設計

    隨著數(shù)據(jù)量的增長和業(yè)務需求的變化,數(shù)據(jù)庫性能成為了許多企業(yè)關注的焦點之一。在眾多的數(shù)據(jù)庫管理系統(tǒng)中,PostgreSQL因其穩(wěn)定性和可靠性而備受青睞。然而,即使是最強大的系統(tǒng)也需要合適的調優(yōu),以確保其能夠高效地處理大規(guī)模數(shù)據(jù)和復雜查詢。 本文將介紹如何在P

    2024年02月07日
    瀏覽(22)
  • 【04-提升模型性能:集成學習與超參數(shù)優(yōu)化】

    【04-提升模型性能:集成學習與超參數(shù)優(yōu)化】

    ??在前幾篇博文中,我們已經介紹了一些機器學習的基礎知識、Scikit-learn的核心工具與技巧,以及如何評估模型性能。本篇博文將重點講解兩個可以顯著提升機器學習模型性能的高級策略:集成學習和超參數(shù)優(yōu)化。 ??集成學習是一種策略,通過組合多個學習算法來獲得比

    2024年04月29日
    瀏覽(15)
  • “更新查詢超時時間“——優(yōu)化ES索引更新性能的方法

    “更新查詢超時時間”——優(yōu)化ES索引更新性能的方法 在實際運用中,Elasticsearch (ES) 索引上的數(shù)據(jù)不可避免的需要進行更新操作。而update_by_query API 是一個十分強大的ES 更新功能工具,可以應對各種復雜的更新需求。然而,在進行高負載的大數(shù)據(jù)量操作時,update_by_query 會產生

    2024年02月03日
    瀏覽(18)
  • Elasticsearch 優(yōu)化查詢中獲取字段內容的方式,性能提升5倍!

    Elasticsearch 優(yōu)化查詢中獲取字段內容的方式,性能提升5倍!

    集群配置為:8 個 node 節(jié)點,16 核 32G,索引 4 分片 1 副本。應用程序的查詢邏輯是按經緯度排序后找前 200 條文檔。 1、應用對查詢要求比較高,search 沒有慢查詢的狀態(tài)。 2、集群壓測性能不能上去,cpu 使用未打滿,查詢的 qps 上不去,且有隊列堆積。 通過云廠商內核組的同

    2024年02月04日
    瀏覽(28)
  • ClickHouse進階(十七):clickhouse優(yōu)化-寫出查詢優(yōu)化

    ClickHouse進階(十七):clickhouse優(yōu)化-寫出查詢優(yōu)化

    進入正文前,感謝寶子們訂閱專題、點贊、評論、收藏!關注IT貧道,獲取高質量博客內容! ??個人主頁:含各種IT體系技術,IT貧道_大數(shù)據(jù)OLAP體系技術棧,Apache Doris,Kerberos安全認證-CSDN博客 ??訂閱:擁抱獨家專題,你的訂閱將點燃我的創(chuàng)作熱情! ??點贊:贊同優(yōu)秀創(chuàng)作,你

    2024年02月07日
    瀏覽(19)
  • ClickHouse性能優(yōu)化

    目錄 1. 了解ClickHouse的架構 ?? 1.1 ClickHouse的分布式架構 ?? 1.1.1 ClickHouse是讀寫分離架構嗎 ?? 1.1.2 如何查詢ClickHouse的分布式表 ?? 1.2 數(shù)據(jù)存儲方式 ?? 1.2.1 如何配置數(shù)據(jù)壓縮 ?? 1.2.2 如何選擇合適的壓縮算法 ?? 1.2.3 如何清理舊數(shù)據(jù) ?? 1.2.4 關于`TTL`設置,自動刪除過期數(shù)

    2024年02月10日
    瀏覽(15)
  • 【個人筆記】ClickHouse 查詢優(yōu)化

    ClickHouse是OLAP(Online analytical processing)數(shù)據(jù)庫,以速度見長。ClickHouse為什么能這么快?有兩點原因: 架構優(yōu)越 列式存儲 索引 數(shù)據(jù)壓縮 向量化執(zhí)行 資源利用 關注底層細節(jié) 但是,數(shù)據(jù)庫設計再優(yōu)越也拯救不了錯誤的使用方式,本文以MergeTree引擎家族為例講解如何對查詢優(yōu)化

    2024年01月17日
    瀏覽(23)
  • 性能超越 Clickhouse | 物聯(lián)網場景中的毫秒級查詢案例

    性能超越 Clickhouse | 物聯(lián)網場景中的毫秒級查詢案例

    物聯(lián)網(Internet of Things,簡稱 IoT)是指通過各種信息傳感、通信和 IT 技術來實時連接、采集、監(jiān)管海量的傳感設備,從而實現(xiàn)對現(xiàn)實世界的精確感知和快速響應,繼而實現(xiàn)自動化、智能化管理。在查詢 IoT 設備狀態(tài)的場景下,吞吐量和時延是兩個重要的性能指標。 在工業(yè)物

    2024年02月07日
    瀏覽(17)
  • 大數(shù)據(jù)場景下clickhouse查詢時長優(yōu)化sop

    ClickHouse的優(yōu)化需要結合實際的數(shù)據(jù)特點和查詢場景,從多個方面進行綜合優(yōu)化,以提高系統(tǒng)的性能和可靠性。 數(shù)據(jù)模型設計 :在使用ClickHouse之前,需要充分考慮數(shù)據(jù)模型的設計,因為數(shù)據(jù)模型的設計對查詢性能有很大的影響。通常來說,ClickHouse適合存儲大量的、高維度的

    2024年02月16日
    瀏覽(23)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包