レイテンシインサイト機能は、Redisデータベースの障害とパフォーマンスの問題のトラブルシューティングに役立ちます。 この機能は、すべてのコマンドとカスタム特殊イベントのレイテンシに関する統計を収集します。 待ち時間統計はマイクロ秒まで正確である。 これにより、イベント、時間、レイテンシに基づいてインスタンスを分析し、効率的な方法で問題を特定して修正できます。
前提条件
Tair (Redis OSS-compatible) インスタンスは、次のいずれかのマイナーバージョンを使用しています。 マイナーバージョンの更新方法については、「インスタンスのマイナーバージョンの更新」をご参照ください。
インスタンスがTair (Enterprise Edition) DRAMベースのインスタンスの場合、マイナーバージョン1.6.9以降。 Tairモジュールコマンドに関する統計を収集する場合は、マイナーバージョンを1.7.28以降に更新します。
インスタンスがRedis Open-Source Edition 5.0インスタンスの場合、マイナーバージョン5.1.4以降。
インスタンスがRedis Open-Source Edition 6.0インスタンスの場合、マイナーバージョン0.1.15以降。
インスタンスがRedis Open-Source Edition 7.0インスタンスの場合、マイナーバージョン7.0.0.6以降。
概要
Redis 2.8.13は、イベントに基づいて起こりうるレイテンシの問題を特定してトラブルシューティングするのに役立つレイテンシモニタリングという新機能を導入しました。 レイテンシモニタリング機能を使用すると、過去160秒以内に生成されたデータを収集し、1秒以内に最もレイテンシの高いイベントにのみアクセスできます。
ApsaraDB for Redisは、高度なレイテンシインサイト機能を提供します。 この機能では、すべてのコマンドの最大27のイベントと実行期間を記録し、過去3日間のすべてのレイテンシ統計を保存できます。 イベントの詳細については、このトピックの「一般的な特別イベント」をご参照ください。 レイテンシーのインサイト機能には、次の利点があります。
永続性: データ永続性とレイテンシスパイクトレーシングをサポートします。
高精度: すべてのイベントに対してマイクロ秒の精度のモニタリング情報を提供します。
高性能: 非同期実装を使用し、パフォーマンスへの影響を最小限に抑えます。
リアルタイム操作: リアルタイムのデータクエリと集計操作をサポートします。
多次元統計: イベント、時間、レイテンシに基づいてインスタンスを分析できる包括的なレイテンシデータを提供します。
課金
この機能は無料で利用できます。
手順
DASコンソールにログインします。
左側のナビゲーションウィンドウで、インスタンスモニターをクリックします。
表示されるページで、管理するデータベースインスタンスを見つけ、インスタンスIDをクリックします。 インスタンス詳細ページが表示されます。
左側のナビゲーションウィンドウで、リクエスト分析 > 遅延に関する分析を選択します。
遅延に関する分析ページで、特定の時間範囲内の対応するノードのレイテンシ統計を確認します。
クラスターまたは読み書き分離インスタンスの場合、データノード および エージェントノード の統計を表示できます。
説明過去3日間のデータのみを照会でき、時間範囲は1時間以内でなければなりません。
テーブル内のイベントに対応する番号をクリックできます。 次に、チャートが表示され、イベントが一致したメトリックの傾向が表示されます。 グラフの上のドロップダウンリストからメトリック名を選択して、グラフに表示するメトリックを指定することもできます。
説明指定された実行時間よりも長い時間がかかるコマンドまたはイベントのみが記録され、表示されます。 インスタンスのレイテンシに関連する問題のトラブルシューティング方法については、「一般的なレイテンシイベントの処理の提案」をご参照ください。
メトリック
説明
Events
イベント名。
Total
イベントの合計発生数。
アベニュー。 レイテンシ (μ s)
イベントの平均レイテンシ。 単位: μ s。
最大 レイテンシ (μ s)
イベントの最大レイテンシ。 単位: μ s。
インスタンスの集約 (レイテンシ <1 ms)
レイテンシが1 ms未満のイベントの発生回数。 アイコンをクリックすると、レイテンシが1 μ s、2 μ s、4 μ s、8 μ s、16 μ s、32 μ s、64 μ s、128 μ s、256 μ s、512 μ s未満のイベントの発生数など、より詳細な統計情報を表示できます。
説明カウント方法: レイテンシが0μsから1μsのイベントの発生回数が <1μsのカテゴリ内でカウントされて表示され、レイテンシが1μsから2μsのイベントの発生回数が <2μsのカテゴリ内でカウントされて表示されます。 他のカテゴリは同じパターンに従います。
<2ms
<4ms
...
> 33s
指定された範囲内のレイテンシを持つイベントの発生回数。
説明カウント方法: レイテンシが1 ms〜2 msのイベントの発生数がカウントされ、<2 msカテゴリ内に表示され、レイテンシが33秒を超えるイベントの発生数がカウントされ、> 33sカテゴリ内に表示されます。 他のカテゴリは同じパターンに従います。
一般的な特別イベント
カテゴリ | イベント | しきい値 | 説明 |
記憶の立ち退き | EvictionDel | 30 ms | 特定の削除サイクルで削除されたキーを削除するのに必要な時間。 |
EvictionLazyFree | 30 ms | バックグラウンドスレッドが特定の追い出しサイクルでメモリを解放するのにかかる時間。 | |
EvictionCycle | 30 ms | 立ち退きを実行するのに必要な時間。 削除サイクルには、削除するデータの選択と削除に必要な時間と、バックグラウンドスレッドの待機に費やされる時間が含まれます。 | |
メモリの最適化 | ActiveDefragCycle | 100 ms | メモリのデフラグに必要な時間。 |
再ハッシュ | 再ハッシュ | 100 ms | リハッシュを実行するのに必要な時間。 |
データ構造のアップグレード | ZipListConvertHash | 30 ms | ハッシュ符号化によってziplistを辞書に変換するのに必要な時間。 |
IntsetConvertSet | 30 ms | セットエンコーディングによってintsetをセットに変換するのに必要な時間。 | |
ZipListConvertZset | 30 ms | ziplistエンコーディングによってziplistをskiplistに変換するのに必要な時間。 | |
追加専用ファイル (AOF) | AofWriteAlone | 30 ms | 予想どおりにAOFを書き込むのに必要な時間。 |
AofWrite | 30 ms | AOFの書き込みに必要な時間。 AOFが正常に書き込まれるたびに、AofWriteイベントと、AofWriteAlone、AofWriteActiveChild、およびAofWritePendingFsyncの3つのイベントのうちの1つが記録されます。 | |
AofFstat | 30 ms | AOFに関する情報を取得するのに必要な時間。 | |
AofRename | 30 ms | AOFの名前を変更するのに必要な時間。 | |
AofReWriteDiffWrite | 30 ms | 子プロセスがAOFを書き換えた後に親プロセスによって実行された増分AOF書き込みによって消費される時間。 | |
AofWriteActiveChild | 30 ms | AOFをディスクに書き込むのに必要な時間。 他の子プロセスは、AOFが書き込まれるときにディスクにデータを書き込むことができる。 | |
AofWritePendingFsync | 30 ms | AOFの書き込みに必要な時間。 バックグラウンドプロセスは、AOFが書き込まれるときにfsync動作を実行することができる。 | |
Redisデータベース (RDB) ファイル | RdbUnlinkTempFile | 50 ms | bgsave子プロセスが終了した後、一時RDBファイルを削除するのに必要な時間。 |
その他 | コマンド | 30 ms | fastでタグ付けされていないコマンドを実行するのに必要な時間。 |
FastCommand | 30 ms | 高速でタグ付けされ、O(1) またはO(log N) の時間複雑度を持つコマンドを実行するのに必要な時間。 このようなコマンドの詳細については、このトピックのFastCommandsセクションを参照してください。 | |
EventLoop | 50 ms | メインイベントループの実行に必要な時間。 | |
フォーク | 100 ms | フォーク操作を呼び出すのに必要な時間。 | |
Transaction | 50 ms | トランザクションによって消費された実際の時間。 | |
パイプライン | 50 ms | マルチスレッドパイプラインによって消費された時間。 | |
ExpireCycle | 30 ms | 期限切れのキーを一度にクリアするのに必要な時間。 | |
ExpireDel | 30 ms | キーをクリアするための特定のサイクルで期限切れのキーを削除するのに必要な時間。 | |
SlotRdbsUnlinkTempFile | 30 ms | bgsave子プロセスが終了した後、一時RDBファイルをスロットから削除するのに必要な時間。 | |
LoadSlotRdb | 100 ms | スロットからRDBファイルをロードするのに必要な時間。 | |
SlotreplTargetcron | 50 ms | RDBファイルをスロットから一時データベースにロードし、子プロセスを使用してファイルをターゲットデータベースに移行するのに必要な時間。 |
FastCommands
次の表に、一般的に使用されるFastCommandsを示します。 その他のコマンドについては、Redis公式Webサイトの [コマンド] ページを参照してください。 @ fastでタグ付けされたすべてのアクセス制御リスト (ACL) コマンドはFastCommandsです。
ACCOUNT | 管理 | 尋ねる | 秋 |
BKLIST | BZPOPMAX | BZPOPMIN | DBSIZE |
DECR | DECRBY | 割引 | エコー |
EXISTS | EXPIRE | EXPIREAT | 取得する |
GETBIT | HDEL | HEXISTS | HGET |
HINCRBY | ヒンクルフロート | HKCOUNTER | HKSWITCH |
ヘン | HMGET | HMINCRBY | HMINCRBYFLOAT |
HMSET | HSET | HSETNX | HSTRLEN |
INCR | INCRBY | INCRBYFLOAT | LASTSAVE |
レン | LPOP | LPUSH | LUSHX |
MGET | MOVE | マルチ | PERSIST |
PEXPIRE | PEXPIREAT | PFADD | PING |
PTTL | 出版物 | 準備完了 | READWRITE |
RENAMENX | RPOP | RPUSH | RPUSHX |
サッド | スケール | SELECT | SETNX |
SISMEMBER | SMOVE | スポップ | スレム |
ストレーン | SWAPDB | 時間 | タッチ |
TTL | タイプ | リンク解除 | アンウォッチ |
見る | XACK | XADD | XCLAIM |
XDEL | XLEN | XSETID | XTRIM |
ZADD | ZCARD | ZCOUNT | ジンクルビー |
ZLEXCOUNT | ZPOPMAX | ZPOPMIN | ズランク |
ZREM | ズレヴランク | ZSCORE | ZSCOREAVG |