日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

文檔

Hologres管控臺的監(jiān)控指標(biāo)

本文為您介紹Hologres各監(jiān)控指標(biāo)的含義。通過了解這些監(jiān)控指標(biāo),您可以根據(jù)業(yè)務(wù)需求選擇適合的指標(biāo),實時查看當(dāng)前實例的資源使用情況和SQL語句的執(zhí)行情況,及時識別系統(tǒng)報錯并處理實例異常。

注意事項

  • 對QE和FixedQE的特別說明:

    • QE指的是HQE、SQE等Hologres自研向量計算引擎XQE的總稱,在慢Query日志中,Engine Type={XQE}的Query在監(jiān)控指標(biāo)中都屬于QE。

    • FixedQE是指走Fixed Plan鏈路的執(zhí)行引擎,在慢Query日志中,Engine Type={FixedQE}(V2.2版本以下均為SDK)的Query在監(jiān)控指標(biāo)中屬于FixedQE。

  • 對Command Type的特別說明:

    • SQL是什么類型,就會歸屬為什么類型的Command Type,例如:SQL是INSERT xxx或者INSERT xxx ON CONFLICT DO UPDATE/NOTHING,都會被識別為INSERT類型。

    • UNKNOWN:為系統(tǒng)無法識別的SQL進行分類,無法識別的原因可能是SQL書寫錯誤導(dǎo)致引擎無法識別。

    • UTILITY:表示非SELECT、INSERT、DELETE或UPDATE類型的SQL,例如CREATE、DROP等。

  • 在云監(jiān)控中,每個指標(biāo)會有一個唯一的metricid(云監(jiān)控指標(biāo)ID),以方便更直觀地映射到具體的監(jiān)控指標(biāo)。不同的實例類型,指標(biāo)ID會有不同的前綴,通用型實例、從實例、計算組實例、湖倉加速(共享集群)分別對應(yīng)standard_、follower_、warehouse_shared_。每種實例類型支持的指標(biāo)如下:

  • 如果指標(biāo)中顯示暫無數(shù)據(jù),可能當(dāng)前實例版本暫不支持該指標(biāo),或者是長期沒有數(shù)據(jù)。

  • 監(jiān)控數(shù)據(jù)最多保留30天。

訪問控制

當(dāng)前Hologres管理控制臺的監(jiān)控頁面來源于云監(jiān)控,如果您使用RAM用戶查看監(jiān)控信息,則需要根據(jù)業(yè)務(wù)情況為RAM用戶授予一定的操作權(quán)限,具體如下:

  • AliyunCloudMonitorFullAccess:管理云監(jiān)控的權(quán)限。

  • AliyunCloudMonitorReadOnlyAccess:只讀訪問云監(jiān)控的權(quán)限。

RAM用戶授權(quán)詳情請參見為RAM用戶授權(quán)

監(jiān)控指標(biāo)一覽表

當(dāng)前Hologres提供的監(jiān)控指標(biāo)如下:

分類

指標(biāo)

指標(biāo)描述

支持的實例類型

備注

CPU

實例CPU使用率(%)

實例CPU的使用率。

通用型實例、從實例、計算組實例

Worker節(jié)點CPU使用率(%)

實例內(nèi)每個Worker的CPU使用率。

Memory

實例內(nèi)存使用率(%)

實例內(nèi)總的內(nèi)存使用率。

通用型實例、從實例、計算組實例

Worker節(jié)點內(nèi)存使用率(%)

實例內(nèi)每個Worker的內(nèi)存使用率。

實例中內(nèi)存的詳細使用率(%)

實例中內(nèi)存按照system、meta、cache、query及background分類的內(nèi)存使用率。

僅Hologres V2.0及以上版本支持。

QE Query內(nèi)存使用量(byte)

使用QE執(zhí)行引擎的Query的內(nèi)存使用量。

僅Hologres V2.0.44及以上版本、V2.1.22及以上版本支持。

QE Query內(nèi)存使用率(%)

使用QE執(zhí)行引擎的Query的內(nèi)存使用率。

Query QPS and RPS

Query QPS(countS)

實例內(nèi)Query的總QPS。

通用型實例、從實例、計算組實例、共享集群實例

Query QPS >= QE QPS + FixedQE QPS。

說明

總的QPS會采集所有的Query,包括UNKNOWN、UTILITY、Engine Type={PG}等的Query,因此總QPS會大于或等于QE+FixedQE QPS。

QE Query QPS(countS)

實例內(nèi)使用QE引擎的Query的QPS。

通用型實例、從實例、計算組實例

僅Hologres V2.2及以上版本支持。

FixedQE Query QPS(countS)

實例內(nèi)使用FixedQE(原名SDK)引擎的Query的QPS。

DML RPS(countS)

實例內(nèi)DML Query的總RPS。

通用型實例、計算組實例

DML RPS = QE RPS + FixedQE RPS

QE DML RPS(countS)

實例內(nèi)使用QE引擎的DML的RPS。

僅Hologres V2.2及以上版本支持。

FixedQE DML RPS(countS)

實例內(nèi)使用FixedQE引擎的DML的RPS。

Query Latency

Query延遲(milliseconds)

實例內(nèi)Query的延遲。

通用型實例、從實例、計算組實例、共享集群實例

QE Query延遲(milliseconds)

實例內(nèi)使用QE引擎的Query的延遲。

通用型實例、從實例、計算組實例

僅Hologres V2.2及以上版本支持。

FixedQE Query延遲(milliseconds)

實例內(nèi)使用FixedQE引擎的Query的延遲。

Optimization階段的耗時(milliseconds)

Query在Optimization階段的耗時。

通用型實例、從實例、計算組實例、共享集群實例

僅Hologres V2.0.44及以上版本、V2.1.22及以上版本支持。

Start Query階段的耗時(milliseconds)

Query在Start Query階段的耗時。

Get next階段的耗時(milliseconds)

Query在Get next階段的耗時。

Query P99延遲(milliseconds)

Query的P99延遲。

本實例正在運行中Query最長的時長(milliseconds)

本實例正在運行的Query中,運行時間最長的Query的耗時。

Failed Query QPS

失敗Query QPS(milliseconds)

實例內(nèi)失敗Query的總QPS。

通用型實例、從實例、計算組實例、共享集群實例

失敗Query QPS >= QE失敗Query QPS + FixedQE失敗Query QPS。

說明

失敗Query QPS采集的是總的失敗Query,包括UNKNOWN、UTILITY、Engine Type={PG}等失敗的Query,因此總失敗QPS會大于或等于QE+FixedQE 失敗QPS。

QE失敗Query QPS(milliseconds)

實例內(nèi)使用QE引擎的失敗Query的QPS。

通用型實例、從實例、計算組實例

僅Hologres V2.2及以上版本支持。

FixedQE失敗Query QPS(milliseconds)

實例內(nèi)使用FixedQE引擎的失敗Query的QPS。

通用型實例、計算組實例

Locks

FE等鎖的最大耗時(milliseconds)

FE節(jié)點中的DDL鎖耗時。

通用型實例、從實例、計算組實例

僅Hologres V2.0.44及以上版本、V2.1.22及以上版本支持。

FixedQE的后端拿鎖耗時(milliseconds)

FixedQE的鎖耗時,通常為HQE鎖。

實例總的后端拿鎖耗時(milliseconds)

實例內(nèi)HQE鎖的延遲,包括FixedQE的HQE鎖延遲。

Connection

總連接數(shù)(個)

實例內(nèi)使用的總連接數(shù)。

通用型實例、從實例、計算組實例、共享集群實例

連接數(shù)(按DB展開)(個)

實例內(nèi)每個DB使用的連接數(shù)。

通用型實例、從實例、計算組實例

連接數(shù)(按FE展開)(個)

實例內(nèi)每個FE使用的連接數(shù)。

連接數(shù)使用率最高的FE的連接數(shù)使用率(%)

實例內(nèi)的連接數(shù)使用率,默認(rèn)用連接數(shù)使用率最高的FE。

IO

標(biāo)準(zhǔn)IO讀吞吐(byte/s)

讀取標(biāo)準(zhǔn)存儲數(shù)據(jù)的I/O吞吐量。

通用型實例、從實例、計算組實例

標(biāo)準(zhǔn)IO寫吞吐(byte/s)

寫入標(biāo)準(zhǔn)存儲數(shù)據(jù)的I/O吞吐量。

通用型實例、計算組實例

低頻IO讀吞吐(byte/s)

讀取低頻存儲數(shù)據(jù)的I/O吞吐量。

通用型實例、從實例、計算組實例

低頻IO寫吞吐(byte/s)

寫入低頻存儲數(shù)據(jù)的I/O吞吐量。

通用型實例、計算組實例

Storage

標(biāo)準(zhǔn)存儲已用容量(byte)

標(biāo)準(zhǔn)存儲已使用的存儲量。

通用型實例、計算組實例

標(biāo)準(zhǔn)存儲使用率(%)

標(biāo)準(zhǔn)存儲量的使用率。

低頻存儲已用容量(byte)

低頻存儲已使用的存儲量。

低頻存儲使用率(%)

低頻存儲量的使用率。

Frameworks

FE replay延遲(milliseconds)

每個FE的Replay延遲。

通用型實例、從實例、計算組實例

僅Hologres V2.2及以上版本支持。

Shard多副本同步延遲(milliseconds)

開啟Replication后的Shard多副本之間的延遲。

主從同步延遲(milliseconds)

從實例讀取主實例數(shù)據(jù)時的延遲。僅從實例支持顯示。

實例間文件同步延遲(milliseconds)

異地容災(zāi)實例之間的文件同步延遲。

通用型實例

Auto Analyze

每個DB統(tǒng)計信息缺失的表個數(shù)(countS)

每個DB內(nèi)統(tǒng)計信息缺失的表個數(shù)。

通用型實例、計算組實例

僅Hologres V2.2及以上版本支持。

Serverless Computing

正在運行的Serverless Computing的查詢中,最長的時長(milliseconds)

開啟Serverless Computing后,在Serverless Computing中運行時間最長的Query的時長。

通用型實例、計算組實例

僅Hologres V2.1及以上版本支持。

Binlog

每秒消費Binlog的條數(shù)

每秒消費Binlog的條數(shù)。

通用型實例、從實例、計算組實例

僅Hologres V2.2及以上版本支持。

每秒消費Binlog的字節(jié)數(shù)

每秒消費Binlog的字節(jié)數(shù)。

每個FE的wal sender的使用數(shù)(個)

每個FE的Walsender 的使用數(shù)。

wal sender使用率最高的FE的wal sender使用率(%)

Walsender使用率最高的FE的Walsender使用率。

Computing Resource

Warehouse_timed_elastic_cores(Count)

實例分時彈性彈出的Core數(shù)。

計算組實例

僅Hologres V2.2.21及以上版本支持。

CPU

CPU相關(guān)的指標(biāo)如下。

實例CPU使用率(%)

實例CPU指實例整體的CPU使用率,代表實例的計算負載情況。

  • 在沒有查詢的時候,后臺常駐進程或者異步執(zhí)行的Compaction都可能占用CPU,因此實例無查詢負載時,有少量CPU使用率是正常現(xiàn)象。

  • Hologres因其設(shè)計原理可以充分發(fā)揮多核并行計算的能力,通常來說單個查詢可以迅速將CPU使用率提高到100%,這說明計算資源得到了充分利用。

  • 當(dāng)實例CPU使用率長期接近100%時(例如CPU使用率連續(xù)3小時滿載100%,或者連續(xù)12小時達到90%以上等),說明實例負載非常高,這通常意味著CPU資源成為了系統(tǒng)的瓶頸,需要分析具體的業(yè)務(wù)場景和查詢,以判斷原因。可以從以下幾方面判斷:

    • 是否有比較大的離線數(shù)據(jù)導(dǎo)入(INSERT),且數(shù)據(jù)規(guī)模還在日漸增長。

    • 是否有高QPS的查詢或?qū)懭?,共同占用了CPU的全部資源。

    • 是否有上述或上述場景以外的混合負載。

  • 如果確定是業(yè)務(wù)場景需要,將資源用滿,可以對實例進行擴容,以適應(yīng)更復(fù)雜的查詢或更大的數(shù)據(jù)量。

Worker節(jié)點CPU使用率(%)

Worker節(jié)點CPU指實例內(nèi)每個Worker的CPU使用率,代表每個Worker的計算負載情況。Hologres根據(jù)實例規(guī)格,提供不同的Worker節(jié)點數(shù),詳情見實例規(guī)格概述

  • 當(dāng)前指標(biāo)只有Hologres V1.1及以上版本支持顯示。

  • 當(dāng)實例內(nèi)所有Worker節(jié)點CPU使用率都長期接近100%時,說明實例的負載非常高,需要根據(jù)業(yè)務(wù)情況合理地優(yōu)化資源使用或者擴容。

  • 當(dāng)實例只有部分Worker節(jié)點的CPU水位比較高,部分Worker節(jié)點的CPU水位較低時,說明Worker資源有傾斜,常見傾斜原因以及排查方法請參見監(jiān)控指標(biāo)常見問題。

Memory

內(nèi)存相關(guān)的指標(biāo)如下。

實例內(nèi)存使用率(%)

實例內(nèi)存使用率代表實例整體的內(nèi)存綜合使用率。

  • Hologres的內(nèi)存資源采用預(yù)留模式,在沒有查詢的時候,也會有數(shù)據(jù)表的元數(shù)據(jù)、索引、數(shù)據(jù)緩存等加載到內(nèi)存中,以便加快檢索和計算,此時內(nèi)存使用率不為零是正常情況。理論上,在無查詢的情況,內(nèi)存使用率達到30%~40%左右都屬于正常情況。

  • 當(dāng)內(nèi)存使用率穩(wěn)定增長,長期接近80%時,通常意味著內(nèi)存資源可能成為了系統(tǒng)的瓶頸,可能會影響實例的穩(wěn)定性或性能。

  • 可以根據(jù)實例內(nèi)存分布使用率,并結(jié)合業(yè)務(wù)的QPS等指標(biāo)綜合判斷誰占用了較高的內(nèi)存,從而做相應(yīng)的優(yōu)化。詳情可以參見OOM常見問題排查指南。

Worker節(jié)點內(nèi)存使用率(%)

Worker節(jié)點內(nèi)存使用率指實例內(nèi)每個Worker的內(nèi)存使用率,代表每個內(nèi)存的計算負載情況。Hologres根據(jù)實例規(guī)格,提供不同的Worker節(jié)點數(shù),詳情見實例規(guī)格概述

  • 當(dāng)前指標(biāo)僅Hologres V1.1及以上版本支持顯示。

  • 當(dāng)實例內(nèi)所有Worker節(jié)點的內(nèi)存水位都長期接近80%時,說明實例的負載非常高,需要根據(jù)業(yè)務(wù)情況合理地優(yōu)化資源或者擴容。

  • 當(dāng)實例只有部分Worker節(jié)點內(nèi)存水位比較高,部分Worker節(jié)點內(nèi)存水位較低時,說明Worker資源有傾斜,常見傾斜原因以及排查方法請參見監(jiān)控指標(biāo)常見問題。

實例中內(nèi)存的詳細使用率(%)

在Hologres中,內(nèi)存會分為系統(tǒng)(system)、元數(shù)據(jù)(meta)、緩存(cache)、計算(query)、后端進程(background)等幾個部分。從V2.0.15版本開始,支持實例內(nèi)存分布使用率的監(jiān)控指標(biāo),可以通過該指標(biāo)查看內(nèi)存的分布情況,從而進行針對性優(yōu)化。主要包括以下指標(biāo):

  • System:系統(tǒng)內(nèi)存,指系統(tǒng)組件運行時占用的內(nèi)存,組件包括Holohub、Gateway、FE(Frontend)等,其中FE會包括FE Master和FE Query,因此System內(nèi)存也會隨著Query的運行而波動。

  • Cache:緩存占用的內(nèi)存,緩存的內(nèi)存主要包括:

    • SQL相關(guān)的緩存:例如result cache、block cache等,與SQL有關(guān),根據(jù)Query運行狀態(tài)動態(tài)變化。如果SQL有命中緩存(例如通過explain analyze查看Physical read bytes字段,數(shù)據(jù)越小說明緩存命中率越高),將會提升查詢性能。但SQL的緩存也有一定的上限。

    • Meta緩存:包括表的Schema Meta、文件Meta等,為了Query的高效執(zhí)行,Hologres的存儲引擎會預(yù)先將Meta相關(guān)的數(shù)據(jù)加載進緩存中,從而減少Meta的冷訪問,提升查詢性能。

    • 緩存有固定大小,一般占用實例總內(nèi)存的30%左右。當(dāng)實例沒有查詢負載時,也會存在一定的緩存占用,主要是Meta占用的緩存。

  • Meta:元數(shù)據(jù)、文件等占用的內(nèi)存,元數(shù)據(jù)的內(nèi)存使用采用Lazy Open模式,即頻繁被訪問的元數(shù)據(jù)會常駐內(nèi)存中,未被訪問的元數(shù)據(jù)則不會放在內(nèi)存中,以此來減少元數(shù)據(jù)對內(nèi)存的占用。一般建議Meta占用的內(nèi)存維持在總內(nèi)存的30%以內(nèi)。如果Meta占用的內(nèi)存較高,說明實例中訪問的文件數(shù)較多,或者分區(qū)表較多,可以通過表統(tǒng)計信息查看與分析對實例中的表做相關(guān)治理。

  • Query:代表執(zhí)行SQL時消耗的內(nèi)存,與Query的復(fù)雜度、并發(fā)度等正相關(guān)。主要包括Fixed Plan、HQE、SQE等執(zhí)行SQL消耗的內(nèi)存。

    • Query計算的內(nèi)存會采用彈性機制,即單個Worker最低使用20 GB,最高使用根據(jù)實例的總空閑內(nèi)存浮動,其他分類中內(nèi)存占用越多,會導(dǎo)致計算部分彈性的內(nèi)存越少。

    • 如果Query占用的內(nèi)存較多,甚至出現(xiàn)了OOM的現(xiàn)象,說明Query較復(fù)雜或者并發(fā)度較高,建議對Query調(diào)優(yōu)或者對實例擴容,以避免實例高水位運行,詳情請參見優(yōu)化查詢性能

  • Background:后臺任務(wù)占用的內(nèi)存,包括Compaction、Flush等任務(wù),一般Background消耗的內(nèi)存較少,約在5%以內(nèi)。但如果對表修改了索引、執(zhí)行了大量的寫入或更新等操作,Background的內(nèi)存占用將會上升,并隨任務(wù)的結(jié)束而下降。

  • Memtable:內(nèi)存表占用的內(nèi)存,在Hologres中Memtable(內(nèi)存表)主要用于存儲有實時寫入、更新、刪除等操作完成之后的表數(shù)據(jù)。一般Memtable的內(nèi)存占用在5%以內(nèi)。

QE Query內(nèi)存使用量(byte)

指實例中使用了HQE、SQE等Hologres自研引擎XQE的Query,在運行過程中的內(nèi)存使用量。

  • 該指標(biāo)僅Hologres V2.0.44及以上版本、V2.1.22及以上版本支持顯示。

  • 在內(nèi)存細分類中,Query的內(nèi)存使用量大于QE Query內(nèi)存使用量。

通過QE Query內(nèi)存使用量可知該實例中運行的Query復(fù)雜度,如果內(nèi)存使用量較多,說明Query比較復(fù)雜,使用的內(nèi)存較多。

QE Query內(nèi)存使用率(%)

QE Query內(nèi)存使用率可以判斷當(dāng)前實例的負載情況,如果QE內(nèi)存使用率較高,可能因內(nèi)存不足而導(dǎo)致OOM,需要治理Query或者擴容。

該指標(biāo)僅Hologres V2.0.44及以上版本、V2.1.22及以上版本支持顯示。

Query QPS and RPS

Query QPS(countS)

Query QPS代表實例中平均每秒SQL語句的執(zhí)行次數(shù),為實例內(nèi)總的QPS。包括SELECT、INSERT、UPDATE和DELETE、UTILITY、UNKNOWN等SQL語句。Query QPS >= QE Query + FixedQE Query QPS。

QE Query QPS(countS)

指實例內(nèi)使用QE引擎的Query每秒執(zhí)行的次數(shù)。包括SELECT、INSERT、UPDATE和DELETE四種類型的SQL語句。

該指標(biāo)僅Hologres V2.2及以上版本支持顯示。

FixedQE Query QPS(countS)

指實例內(nèi)使用FixedQE引擎的Query每秒執(zhí)行的次數(shù)(走Fixed Plan鏈路,原名SDK)。包括SELECT、INSERT、UPDATE和DELETE四種類型的SQL語句。

該指標(biāo)僅Hologres V2.2及以上版本支持顯示。

DML RPS(countS)

DML RPS代表實例內(nèi)Query每秒導(dǎo)入或者更新的數(shù)據(jù)記錄條數(shù),包括INSERT、UPDATE和DELETE三種類型的SQL語句,因此DML RPS = QE DML RPS + FixedQE DML RPS。

QE DML RPS(countS)

指實例內(nèi)使用QE引擎的Query每秒導(dǎo)入或者更新的數(shù)據(jù)記錄條數(shù),包括INSERT、UPDATE和DELETE三種類型的SQL語句。

  • 該指標(biāo)僅Hologres V2.2及以上版本支持顯示。

  • 使用QE引擎導(dǎo)入或更新數(shù)據(jù)的常見場景如下:

    • MaxCompute或OSS外部表的批量導(dǎo)入或更新。

    • Copy批量寫入或更新。

    • Hologres表之間的批量導(dǎo)入。

FixedQE DML RPS(countS)

指實例內(nèi)使用FixedQE引擎的Query每秒導(dǎo)入或者更新的數(shù)據(jù)記錄條數(shù)(原指標(biāo)名為SDK),包括INSERT、UPDATE和DELETE三種類型的SQL語句。其中:

Query Latency

Query延遲(milliseconds

實例內(nèi)運行的所有Query的平均延遲,包括SELECT、INSERT、UPDATE和DELETE、UTILITY、UNKNOWN等SQL語句。Query延遲 >= MAX(QE Query延遲,F(xiàn)ixedQE Query延遲)。

QE Query延遲(milliseconds)

實例內(nèi)使用QE引擎的Query的平均延遲,包括SELECT、INSERT、UPDATE和DELETE四種類型的Query。

  • 該指標(biāo)僅Hologres V2.2及以上版本支持顯示。

  • 對于QE Query的延遲增加排查,可以結(jié)合Optimization耗時、Start Query耗時、Get next耗時、QE QPS等指標(biāo)一起排查。

FixedQE Query延遲(milliseconds)

實例內(nèi)使用FixedQE引擎的Query的平均延遲,包括SELECT、INSERT、UPDATE和DELETE四種類型的Query。

  • 該指標(biāo)僅Hologres V2.2及以上版本支持顯示。

  • FixedQE Query延遲高可能是如下原因:

    • 偶發(fā)變高:可能是因為存在HQE鎖,可以查看FixedQE的后端拿鎖耗時是否增加,若增加說明有鎖,可以通過Query洞察排查具體的拿鎖Query。

    • 一直延遲高:可能是因為建表不合理,或著受其他復(fù)雜Query的影響等,可以參考Blink和Flink常見問題及診斷進行排查。

Optimization階段的耗時(milliseconds)

實例內(nèi)Query在Optimization階段的耗時,該階段主要用于優(yōu)化器QO解析SQL,并生成對應(yīng)的物理Plan以便執(zhí)行引擎跟進Plan去執(zhí)行。

  • 該指標(biāo)僅Hologres V2.0.44及以上版本、V2.1.22及以上版本支持顯示。

  • 如果Optimization階段耗時較長,說明實例中Query較復(fù)雜,導(dǎo)致解析Query耗費較多時間。如果實例中的Query只是傳入的參數(shù)不同,建議使用Prepared Statement模式降低QO耗時,詳情請參見JDBC。

Start Query階段的耗時(milliseconds)

實例內(nèi)Query在Start Query階段的耗時,該階段為真正開始執(zhí)行Query前的初始化階段,包括了加鎖,對齊Schema版本等過程。

  • 該指標(biāo)僅Hologres V2.0.44及以上版本、V2.1.22及以上版本支持顯示。

  • 如果Start Query階段耗時較長,通常是由于等待鎖或者高CPU占用導(dǎo)致資源等待,可以結(jié)合執(zhí)行計劃等細致分析。

Get next階段的耗時(milliseconds)

Get next是指從Start Query階段結(jié)束開始計算,到所有結(jié)果均返回所花費的時間,包括計算、返回結(jié)果等步驟的耗時。

  • 該指標(biāo)僅Hologres V2.0.44及以上版本、V2.1.22及以上版本支持顯示。

  • 如果Get next階段耗時較長,通常是由于計算復(fù)雜導(dǎo)致,可以結(jié)合QE內(nèi)存使用、QE QPS等指標(biāo)一起排查。如無明顯異常,也可能是客戶端在等待返回數(shù)據(jù)。

Query P99延遲(milliseconds)

實例內(nèi)運行的所有Query的P99延遲,包括SELECT、INSERT、UPDATE和UTILITY、以及系統(tǒng)Query等。

本實例正在運行中Query最長的時長(milliseconds)

指實例中正在運行的Query持續(xù)時長,默認(rèn)匯報當(dāng)前時刻運行時間最長的Query時長,包括SELECT、INSERT、UPDATE和DELETE、UTILITY、UNKNOWN等SQL語句。

  • 該指標(biāo)僅Hologres V1.1及以上版本支持顯示。

  • Hologres是分布式系統(tǒng),根據(jù)實例的規(guī)格會有不同的Worker節(jié)點。Query運行時會在不同的Worker節(jié)點隨機分發(fā)。正在運行的Query持續(xù)時長會根據(jù)每個Worker節(jié)點上Query運行時長,匯報當(dāng)前時刻運行時間最長的Query,例如當(dāng)前時刻不同的Worker節(jié)點分別在運行持續(xù)時長為10分鐘、5分鐘和30秒的Query,此時正在運行的Query持續(xù)時長將會顯示為10分鐘。

  • 可以根據(jù)Query的運行時長,并結(jié)合活躍Query或者慢Query日志判斷Query運行時長是否合理,排查并解決Query運行時間較長的問題,及早處理死鎖、卡住等情況。

說明

監(jiān)控指標(biāo)每隔1分鐘匯報一次,因此指標(biāo)中“正在運行的持續(xù)時長” x軸開始時間與Query真正開始的時間有誤差,該指標(biāo)僅作為異常情況問題排查的輔助指標(biāo),即通過該指標(biāo)快速定位到實例有運行時長較長的Query,作為自運維的輔助指標(biāo),不提供精確Query運行時間。

Failed Query QPS

失敗Query QPS(milliseconds)

失敗Query數(shù)代表實例內(nèi)平均每秒SQL語句失敗的次數(shù),包括SELECT、INSERT、UPDATE和DELETE、UTILITY、UNKNOWN等SQL語句。失敗Query QPS >= QE 失敗Query QPS + FixedQE 失敗Query RPS。

可以根據(jù)失敗的Query類型和次數(shù),在慢Query日志中查找失敗的Query并分析原因,以提高系統(tǒng)的可用性。

QE失敗Query QPS(milliseconds)

指實例內(nèi)使用QE引擎的Query每秒失敗的次數(shù)。包括SELECT、INSERT、UPDATE和DELETE四種SQL語句。

該指標(biāo)僅Hologres V2.2及以上版本支持顯示。

FixedQE失敗Query QPS(milliseconds)

指實例內(nèi)使用FixedQE引擎的Query每秒失敗的次數(shù)。包括SELECT、INSERT、UPDATE和DELETE四種SQL語句。

該指標(biāo)僅Hologres V2.2及以上版本支持顯示。

Locks

FE等鎖的最大耗時(milliseconds)

Hologres是分布式系統(tǒng),會有多個FE節(jié)點負責(zé)SQL的解析、分發(fā)及路由。當(dāng)不同的連接請求被路由到同一個FE節(jié)點,并對同一個表做DDL操作(如CREATE、DROP)時,會產(chǎn)生FE鎖。FE等鎖耗時反映了每個FE等待DDL鎖的耗時。

  • 該指標(biāo)僅Hologres V2.2及以上版本支持顯示。

  • 一般來說,只要執(zhí)行DDL操作就可能會產(chǎn)生鎖耗時,F(xiàn)E鎖耗時超過5分鐘,同時“FE replay延遲”指標(biāo)也出現(xiàn)較高的延遲,可能是因為有DDL執(zhí)行卡住了,通過Query管理排查運行時間較長的Query并及時終止該進程。

FixedQE的后端拿鎖耗時(milliseconds)

對于INSERT、DELETE或UPDATE等類型,走HQE鏈路的Query會使用表鎖,走FixedPlan鏈路的Query會使用行鎖。FixedQE的后端拿鎖表示走FixedPlan鏈路的Query涉及到的表被加了行鎖,同時走HQE鏈路的Query對該表加了表鎖,導(dǎo)致FixedPlan的Query需要等鎖,進而導(dǎo)致FixedQE拿鎖耗時增加。

  • 該指標(biāo)僅Hologres V2.2及以上版本支持顯示。

  • 如果FixedQE的拿鎖耗時較長,可以通過慢Query日志定位到比較慢的FixedQE Query,然后通過Query洞察排查拿鎖的HQE Query。

實例總的后端拿鎖耗時(milliseconds)

表示INSERT、DELETE或UPDATE類型的Query在實例中總的拿鎖耗時,包括FixedQE的拿鎖耗時和HQE Query之間的拿鎖耗時。

  • 該指標(biāo)僅Hologres V2.2及以上版本支持顯示。

  • 如果拿鎖耗時較長,可以通過慢Query日志定位到比較慢的INSERT、DELETE或UPDATE類型的Query,再通過Query洞察排查拿鎖的HQE Query。

Connection

總連接數(shù)(個)

Hologres根據(jù)實例的規(guī)格,設(shè)置不同的默認(rèn)總連接數(shù),詳情請參見實例規(guī)格概述。總連接數(shù)代表實例當(dāng)前已經(jīng)使用的連接總個數(shù),包括active(活躍)、idle(空閑)、idle in transaction(已失敗事務(wù)中的空閑狀態(tài))等連接狀態(tài)??梢酝ㄟ^Query管理查看當(dāng)前的連接使用情況,當(dāng)出現(xiàn)連接不足時,及時kill空閑連接。

連接數(shù)(按DB展開)(個)

按照DB匯總的連接數(shù)使用個數(shù),判斷每個DB的連接使用情況。其中:

  • 每個DB的總連接數(shù)上限默認(rèn)是128,詳情請參見實例規(guī)格概述。

  • 當(dāng)每個DB的連接數(shù)長期接近最大值時,說明實例的連接數(shù)使用較多,可以根據(jù)業(yè)務(wù)情況查看是空閑連接還是業(yè)務(wù)連接,詳情請參見連接數(shù)管理,并根據(jù)業(yè)務(wù)情況及時清理空閑連接或者擴容獲取更多的連接。

  • 當(dāng)部分Worker節(jié)點連接數(shù)較高,部分Worker節(jié)點的連接數(shù)較低時,說明實例的連接負載不均,通過連接數(shù)管理查看空閑連接并及時清理,以緩解連接負載不均的情況。

連接數(shù)(按FE展開)(個)

按照FE匯總的連接數(shù)使用個數(shù),判斷每個FE的連接使用情況。其中:

  • 每個FE節(jié)點的總連接數(shù)上限默認(rèn)是128,詳情請參見實例規(guī)格概述。

  • 當(dāng)每個FE節(jié)點的連接數(shù)長期接近最大值時,說明實例的連接數(shù)使用較多,可以根據(jù)業(yè)務(wù)情況查看是空閑連接還是業(yè)務(wù)連接,詳情請參見連接數(shù)管理,并根據(jù)業(yè)務(wù)情況及時清理空閑連接或者擴容獲取更多的連接。

  • 當(dāng)部分Worker節(jié)點連接數(shù)較高,部分Worker節(jié)點的連接數(shù)較低時,說明實例的連接負載不均,通過連接數(shù)管理查看空閑連接并及時清理,以緩解連接負載不均的情況。

連接數(shù)使用率最高的FE的連接數(shù)使用率(%)

代表使用率最高的FE(Frontend)節(jié)點的使用率,匯報每個FE節(jié)點的最大值,即Max(frontend_connection_used_rate),可以更加方便的知道使用的連接數(shù)是否即將超過某個Frontend節(jié)點的最大連接數(shù),造成無法連接的情況。多個FE節(jié)點之間采用輪訓(xùn)策略(Round Robin),新建連接依次與不同F(xiàn)rontend節(jié)點建立物理連接。可以通過Query管理查看當(dāng)前的連接使用情況,當(dāng)出現(xiàn)連接不足時,及時kill空閑連接。

IO

I/O吞吐代表實例的I/O吞吐量,描述實例的讀寫數(shù)據(jù)量,反映實例訪問磁盤時讀寫的繁忙度。您可以從I/O層面了解實例的壓力情況和負載變化,及時診斷問題。其中1 GiB=1024 MiB=1024 * 1024 KiB。

標(biāo)準(zhǔn)IO讀吞吐(byte/s

代表Query讀取標(biāo)準(zhǔn)存儲數(shù)據(jù)時的I/O吞吐。

標(biāo)準(zhǔn)IO寫吞吐(byte/s)

代表Query寫入標(biāo)準(zhǔn)存儲數(shù)據(jù)時的I/O吞吐。

低頻IO讀吞吐(byte/s)

代表Query讀取低頻存儲數(shù)據(jù)時的I/O吞吐。

低頻IO寫吞吐(byte/s)

代表Query寫入低頻存儲數(shù)據(jù)時的I/O吞吐

Storage

實例存儲的數(shù)據(jù)占用的邏輯磁盤大小,是所有DB存儲用量的總和。其中1 GiB=1024 MiB=1024*1024 KiB。Hologres存儲用量可以持續(xù)增加,沒有硬限制。

包年包月付費模式下購買的實例存儲用量用完后,超出部分會自動轉(zhuǎn)為按量計費,不會影響系統(tǒng)穩(wěn)定性與使用

建議超出存儲資源之后及時對存儲進行升級配置,或者及時清理無用的數(shù)據(jù),避免造成不必要的更昂貴的存儲費用。節(jié)省的存儲資費,可以用來投入到計算資源當(dāng)中。

可以通過pg_relation_size函數(shù)查看表和DB的存儲大小,以及存儲明細。同時也可以使用Table Info對實例中的表進行精細化管理。

標(biāo)準(zhǔn)存儲已用容量(byte)

標(biāo)準(zhǔn)存儲已經(jīng)使用的存儲容量,若超過購買的存儲容量,可以適當(dāng)擴容存儲。

標(biāo)準(zhǔn)存儲使用率(%)

標(biāo)準(zhǔn)存儲已經(jīng)使用的存儲使用率,若超過購買的存儲容量,可以適當(dāng)擴容存儲。

低頻存儲已用容量(byte)

低頻存儲已經(jīng)使用的存儲容量,若超過購買的存儲容量,可以適當(dāng)擴容存儲。

低頻存儲使用率(%)

低頻存儲已經(jīng)使用的存儲使用率,若超過購買的存儲容量,可以適當(dāng)擴容存儲。

Framework

FE replay延遲(milliseconds)

Hologres為分布式系統(tǒng),在接入層有多個Frontend(FE)負責(zé)SQL的解析、分發(fā)、路由。對于DDL,Hologres的原理是先在一個FE執(zhí)行,然后其余FE節(jié)點replay。其中:

  • FE replay需要一定的時間,一般來說,Relay延遲在毫秒級、秒級都為正常情況。

  • 當(dāng)某個FE replay的延遲超過分鐘級時,可能是由于DDL太多,replay不及時;若是延遲一直增加,可能是Query卡住了,可以通過hg_stat_activity排查耗時較高的Query,并及時Kill。

  • 該指標(biāo)僅Hologres V2.2及以上版本支持。

Shard多副本同步延遲(milliseconds)

Shard多副本延遲是指實例開了Replication后,主從Shard之間的副本數(shù)據(jù)同步延遲。

  • 通常Shard多副本延遲為毫秒級。

  • 當(dāng)有大量數(shù)據(jù)寫入、更新或頻繁執(zhí)行DDL操作時,可能會導(dǎo)致同步延遲。

主從同步延遲(milliseconds)

主從實例同步延遲表示從實例讀取主實例數(shù)據(jù)時的延遲(毫秒),其中:

  • 僅從實例顯示該指標(biāo),主實例默認(rèn)不顯示。

  • 只有在從實例綁定了主實例之后,該指標(biāo)才會顯示數(shù)據(jù)(0ms),當(dāng)主實例有數(shù)據(jù)寫入時,從實例的同步延遲會出現(xiàn)數(shù)據(jù)波動。

  • 通常情況下,主從實例的同步延遲為毫秒級,當(dāng)實例偶爾出現(xiàn)延遲抖動時,可能原因為主實例在做DDL等元數(shù)據(jù)修改的操作,可忽略。若長期延遲較大(大于秒),可能原因為實例水位較高,資源不足,您可以結(jié)合CPU、內(nèi)存等水位情況綜合評估,并適當(dāng)擴容以減少延遲。

  • 實例重啟或者升級期間,同步延遲可能增加到分鐘級別,并會自動恢復(fù)。

實例間文件同步延遲(milliseconds)

指異地容災(zāi)實例間的文件同步延遲,僅在Follower實例(只讀從實例)上展示該指標(biāo)。

Auto Analyze

每個DB統(tǒng)計信息缺失的表個數(shù)(countS)

代表每個DB中,統(tǒng)計信息缺失的表的個數(shù)。

  • 該指標(biāo)僅Hologres V2.2及以上版本支持顯示。

  • 對于Hologres V2.0及以上版本的實例,會默認(rèn)開啟新版本Auto Analyze機制,當(dāng)表剛創(chuàng)建或者有大量數(shù)據(jù)寫入或更新時,Auto Analyze可能未及時更新統(tǒng)計信息,可以先暫時觀測一段時間。

  • 如果某個DB長期(超過數(shù)小時或數(shù)天)有缺失統(tǒng)計信息的表,可能是因為未到達Auto Analyze的閾值,可以通過HG_STATS_MISSING視圖查看哪些表缺失統(tǒng)計信息,并對表手動執(zhí)行Analyze以更新統(tǒng)計信息。

  • 如果某個DB長期(超過數(shù)小時或數(shù)天)有缺失統(tǒng)計信息的表,可能是因為未達到Auto Analyze的閾值,可以查看表的統(tǒng)計信息,并手動對表執(zhí)行Analyze。詳情請參見ANALYZE和AUTO ANALYZE

Serverless Computing

正在運行的Serverless Computing的查詢中,最長的時長(milliseconds)

Hologres支持Serverless Computing,可以將指定的Query運行在Serverless Computing資源池中,隔離本實例以及任務(wù),確保Query快速運行。

  • 該指標(biāo)僅Hologres V2.1及以上版本支持顯示。

  • 該指標(biāo)反映了Query在Serverless Computing的運行時長,默認(rèn)展示運行時間最長的Query的時長,同時結(jié)合hg_stat_activity定位Query在Serverless的運行情況。

Binlog

每秒消費Binlog的條數(shù)或字節(jié)數(shù)

Hologres支持訂閱Hologres Binlog功能,通過Binlog可以實現(xiàn)數(shù)據(jù)的實時分層,加速數(shù)據(jù)流轉(zhuǎn)。

每秒消費Binlog的條數(shù)(countS)

指每秒鐘消費Binlog的條數(shù)。該指標(biāo)僅在Hologres V2.2及以上版本支持顯示。

每秒消費Binlog的字節(jié)數(shù)(byte/s)

指每秒鐘消費Binlog的字節(jié)數(shù)。字節(jié)數(shù)的增加可能是由于存在較大的字段或數(shù)據(jù)量增加所致。該指標(biāo)僅在Hologres V2.2及以上版本支持顯示。

wal sender的使用數(shù)和使用率

同普通連接類似,在使用JDBC進行Binlog的消費時,所消費的每張表的每個Shard都會使用1個Walsender連接,Walsender連接與普通連接獨立,互不影響。Walsenders數(shù)有默認(rèn)上限。

每個FE的wal sender的使用數(shù)(個)

指每個FE節(jié)點使用的Walsender數(shù)。

wal sender使用率最高的FE的wal sender使用率(%)

指使用Walsender數(shù)最大的FE的使用率。

結(jié)合上述兩個指標(biāo),可以判斷當(dāng)前實例中Walsender的使用情況,若Walsender到達上限,可以通過JDBC消費Hologres Binlog排查并處理。

Computing Resource

Warehouse_timed_elastic_cores(Count)

Hologres計算組實例支持分時彈性功能,詳情請參見計算組分時彈性(Beta)。該指標(biāo)表示實例通過分時彈性彈出的Core數(shù)。

常見監(jiān)控指標(biāo)問題

監(jiān)控指標(biāo)常見問題匯總了使用監(jiān)控指標(biāo)中的常見問題,可以幫助業(yè)務(wù)快速診斷、定位問題,并提供對應(yīng)的解決辦法,提升自運維能力。

監(jiān)控指標(biāo)告警

您可以通過云監(jiān)控對監(jiān)控指標(biāo)設(shè)置告警,以便及時發(fā)現(xiàn)異常,并排查處理,降低業(yè)務(wù)影響。詳情請參見云監(jiān)控