QHMM Shell 腳本使用
本主題提供有關使用兩個 shell 腳本 qhmm_usr_export.sh 和 qhmm_import_sre.sh 在 QHMM 中進行診斷資料處理的說明。
必要條件
管理者必須從IBM支援團隊取得 QHMM Shell 腳本。
qhmm_usr_export.sh
該腳本允許使用者捆綁來自 QHMM 診斷儲存桶的診斷資料文件,並與支援團隊共用壓縮的診斷文件以進行進一步分析。 (這可以透過將它們上傳到增強型客戶資料儲存庫( ECuRep )來完成)。 此腳本接受命令列參數進行配置,或可以使用預設值運行。
• -e:ENDPOINT(預設值:無)- 儲存端點。
• -r:REGION(預設值:無)- 儲存區域。
• -b:BUCKET_NAME(預設值:無)- 儲存桶的名稱。
• -a:ACCESS_KEY(預設值:無)- 儲存的存取金鑰。
• -s:SECRET_KEY(預設值:無)- 儲存的密鑰。
• -i:WXD_INSTANCE_ID(預設值:無)- WXD 的實例ID。
• -t:ENGINE_TYPE (預設值:無)- 引擎的類型(例如,Presto )。
• -d:ENGINE_ID(預設值:無)- 引擎的ID。
- --data-type- 要匯出的資料 (支援 Dump、QueryEvent, 及 QueryHistory )。
• -p:DOWNLOAD_DIR(預設:/root/data)- 下載檔案的目標資料夾。
• -x: START_DATE(預設值:過去24 小時)- 過濾物件的開始日期。
• -y:END_DATE(預設值:目前日期)- 過濾物件的結束日期。
• -h、--base-path- 儲存桶中的基本路徑。
範例指令:
./qhmm_usr_export.sh -e <ENDPOINT> -r <REGION> -b <BUCKET_NAME> -a <ACCESS_KEY> -s <SECRET_KEY> -i <WXD_INSTANCE_ID> -t <ENGINE_TYPE> -d <ENGINE_ID> -p <DOWNLOAD_DIR> -x <START_DATE> -y <END_DATE>
qhmm_import_sre.sh
此腳本供支援團隊從增強型客戶資料儲存庫 ( ECuRep ) 檢索診斷數據,並將其上傳至支援團隊儲存桶以進行進一步分析。 與第一個腳本類似,它可以使用命令列參數進行配置或使用預設值運行。
• -e:ENDPOINT(預設值:無)- 儲存端點。
• -r:REGION(預設值:無)- 儲存區域。
• -b:BUCKET_NAME(預設值:無)- 儲存桶的名稱。
• -a:ACCESS_KEY(預設值:無)- 儲存的存取金鑰。
• -s:SECRET_KEY(預設值:無)- 儲存的密鑰。
• -i:WXD_INSTANCE_ID(預設值:無)- WXD 的實例ID。
• -t:ENGINE_TYPE (預設值:無)- 引擎的類型(例如,Presto )。
• -d:ENGINE_ID(預設值:無)- 引擎的ID。
• -p:COMPRESSED_FILE(預設值:/root/data/bundle.zip )- 壓縮檔案的來源資料夾。
範例指令:
./qhmm_import_sre.sh -e <ENDPOINT> -r <REGION> -b <BUCKET_NAME> -a <ACCESS_KEY> -s <SECRET_KEY> -i <WXD_INSTANCE_ID> -t <ENGINE_TYPE> -d <ENGINE_ID> -p <COMPRESSED_FILE>
bucket_data_migration.sh
這個腳本可讓使用者將 QHMM 資料從來源資料桶傳輸至目的地資料桶。 可使用下列命令列參數設定轉移指令碼,或以預設值執行:
-se:--source-endpoint- 來源 S3-compatible 儲存的端點 URL (預設值: http://localhost:9000 )
-se:--source-endpoint- 來源 S3-compatible 儲存的端點 URL (預設值: http://localhost:9000 )
-sr: --source-region- 來源 S3-compatible 儲存的區域 (預設值: us-east-1 )
-sb: --source-bucket- 原始資料桶的名稱 (必填)
-sa:--source-access-key- 來源儲存的存取金鑰 (必填)
-ss:--source-secret-key- 來源儲存的密匙 (必要)
-sbp: --source-base-path- 原始資料桶中的基本路徑 (預設值: qhmm)
-de:--dest-endpoint- 目的地 S3-compatible 儲存的端點 URL (預設值: http://localhost:9000 )
-dr: --dest-region- 目的地 S3-compatible 儲存的區域 (預設值: us-east-1 )
-db: --dest-bucket- 目的地儲存桶的名稱 (必填)
-da: --dest-access-key- 目的地儲存的存取金鑰 (必要)
-ds:--dest-secret-key- 目的地儲存的秘密金鑰 (必要)
-dbp: --dest-base-path- 目標資料桶中的基本路徑 (預設值: qhmm)
-bp: --base-path- 資料桶中的基本路徑 (預設值: qhmm)
-
-i: --instance-id- Instance ID (必填)
-
-t: --engine-type- 引擎類型 (必填)
-
-d: --engine-id- 引擎 ID (必填)
-
-x: --start-date- 篩選物件的開始日期 (DD-MM-YYYY,可選擇是否填寫)
-
-y: --end-date- 過濾物件的結束日期 (DD-MM-YYYY,可選)
-
--data-type- 要匯出的資料 (支援類型:Dump、QueryEvent, QueryHistory, 可選)
-
--max-size- 以 MB 為單位的最大下載大小 (預設值: 500MB )
-
--help- 顯示此說明並離開
範例指令:
./bucket_data_migration.sh \
--source-endpoint <source-endpoint> \
--source-bucket <source-bucket> \
--source-access-key <source-access-key> \
--source-secret-key <source-secret-key> \
--source-base-path <source-base-path> \
--dest-endpoint <dest-endpoint> \
--dest-bucket <dest-bucket> \
--dest-access-key <dest-access-key> \
--dest-secret-key <dest-secret-key> \
--dest-base-path <dest-base-path> \
--instance-id <instance-id> \
--engine-type <engine-type> \
--engine-id <engine-id> \
--start-date <start-date> \
--end-date <end-date> \
--data-type <data-type> \
--max-size <max-size>
透過手動方法管理診斷數據
- 執行以下命令建立一個表格來儲存使用
qhmm_import_sre.sh產生的查詢事件資料:
` CREATE TABLE IF NOT EXISTS <catalog>.diag.query_event_raw (
record VARCHAR,
dt VARCHAR
)
WITH (
external_location = 's3a://<bucket>/qhmm/<instance-id>/<engine>/<engine-id>/QueryEvent/',
format = 'textfile',
partitioned_by = ARRAY['dt']
);`
- 執行以下命令建立一個表,用於儲存JSON格式的查詢歷史資料:
` CREATE TABLE IF NOT EXISTS <catalog>.diag.query_history(
query_id VARCHAR,
query VARCHAR,
state VARCHAR,
source VARCHAR,
created VARCHAR,
started VARCHAR,
"end" VARCHAR,
dt VARCHAR,
user VARCHAR)
WITH (
external_location = 's3a://<bucket>/qhmm/<instance-id>/<engine>/<engine-id>/QueryHistory/',
format = 'JSON',
partitioned_by = ARRAY['dt','user']
);`