Docker 入門
Elasticsearch で全文検索を実行する(macOS版)
各種設定の確認
前のページまでの作業で様々なコマンドを利用してきました.ここで代表的なコマンドをまとめておきます.
まず,シェル変数に API キーが読み込まれていることを確認します.
elastic-start-local % echo ${ES_LOCAL_API_KEY} ⏎
Q25EX3RKb0I3SzJUQjVKNm8xQXQ6OXcxT3phdlhVV1BIeEhVZXh1clJMZw==
elastic-start-local %
まだ読み込まれていなければ次のコマンドを実行してファイル .env からシェル変数に読み込みます.
elastic-start-local % source .env ⏎
elastic-start-local %
クラスタの健全性
次のコマンドはクラスタ全体の健全性を確認するコマンドです.なお,クラスタに関する説明はここ参照してください.
curl -H "Authorization: ApiKey ${ES_LOCAL_API_KEY}" "http://localhost:9200/_cat/health?v"
実際にコマンドを実行した結果を示します.
elastic-start-local % curl -H "Authorization: ApiKey ${ES_LOCAL_API_KEY}" "http://localhost:9200/_cat/health?v" ⏎
epoch timestamp cluster status node.total node.data shards pri relo init unassign unassign.pri pending_tasks max_task_wait_time active_shards_percent
1764214671 03:37:51 docker-cluster green 1 1 40 40 0 0 0 0 0 - 100.0%
elastic-start-local %
インデックスの健全性
次はインデックスの健全性を確認するためのコマンドです.
curl -H "Authorization: ApiKey ${ES_LOCAL_API_KEY}" "http://localhost:9200/_cat/indices?v"
実際に実行した結果は次のようになりました.
elastic-start-local % curl -H "Authorization: ApiKey ${ES_LOCAL_API_KEY}" "http://localhost:9200/_cat/indices?v" ⏎
health status index uuid pri rep docs.count docs.deleted store.size pri.store.size dataset.size
green open .internal.alerts-transform.health.alerts-default-000001 NKllau-fTd2dR4wFu-m95g 1 0 0 0 249b 249b 249b
green open .internal.alerts-observability.logs.alerts-default-000001 0zD3qmK9SqaF_cCyw99yDw 1 0 0 0 249b 249b 249b
green open .internal.alerts-observability.uptime.alerts-default-000001 A6QQM6uJTWO31_hhTD2fpw 1 0 0 0 249b 249b 249b
green open .internal.alerts-ml.anomaly-detection.alerts-default-000001 0PqACFMhTYqCwlJ_G2gl3A 1 0 0 0 249b 249b 249b
green open .internal.alerts-observability.slo.alerts-default-000001 HVUo9bU1S0WpFrXUw-ulBw 1 0 0 0 249b 249b 249b
green open .internal.alerts-default.alerts-default-000001 0sPFeD1FSm-9XGtXLIuiCg 1 0 0 0 249b 249b 249b
green open .internal.alerts-streams.alerts-default-000001 4uc_s9LeQTSJGebMN0eRwQ 1 0 0 0 249b 249b 249b
green open .internal.alerts-observability.apm.alerts-default-000001 yYCuuBOBSYuVZrTUNrzSoA 1 0 0 0 249b 249b 249b
green open .internal.alerts-security.attack.discovery.alerts-default-000001 2b3DGBJFQyGlC-8xd2wnJA 1 0 0 0 249b 249b 249b
green open .internal.alerts-observability.metrics.alerts-default-000001 xNG4BWeOSZ65ja4d4M-0DQ 1 0 0 0 249b 249b 249b
green open hyaku_index konNIPqBT8yFPK1_lo1uiA 1 0 0 0 249b 249b 249b
green open .internal.alerts-ml.anomaly-detection-health.alerts-default-000001 H3RsRJryTrS7SBdVVON4rw 1 0 0 0 249b 249b 249b
green open .internal.alerts-observability.threshold.alerts-default-000001 2OnRi9naQ2awEQ1DAAZG4w 1 0 0 0 249b 249b 249b
green open .internal.alerts-security.alerts-default-000001 NyDlzanySjOBBJgOTwVRcg 1 0 0 0 249b 249b 249b
green open .internal.alerts-dataset.quality.alerts-default-000001 Oll6iwleQF2GhD9y8QBEHg 1 0 0 0 249b 249b 249b
green open .internal.alerts-stack.alerts-default-000001 OM51-wtoTLuThfCDxIMSXw 1 0 0 0 249b 249b 249b
elastic-start-local %
インデックス設定
インデックスの設定を確認するためのコマンドは次のとおりです.
curl -H "Authorization: ApiKey ${ES_LOCAL_API_KEY}" "http://localhost:9200/hyaku_index/_settings?pretty"
elastic-start-local % curl -H "Authorization: ApiKey ${ES_LOCAL_API_KEY}" "http://localhost:9200/hyaku_index/_settings?pretty" ⏎
{
"hyaku_index" : {
"settings" : {
"index" : {
"routing" : {
"allocation" : {
"include" : {
"_tier_preference" : "data_content"
}
}
},
"number_of_shards" : "1",
"provided_name" : "hyaku_index",
"creation_date" : "1764214433680",
"analysis" : {
"normalizer" : {
"lowercase_normalizer" : {
"filter" : [
"lowercase"
],
"type" : "custom"
}
},
"analyzer" : {
"hyaku_kuromoji_analyzer" : {
"filter" : [
"kuromoji_baseform",
"kuromoji_part_of_speech",
"ja_stop",
"lowercase"
],
"type" : "custom",
"tokenizer" : "kuromoji_tokenizer"
},
"kana_reading" : {
"filter" : [
"kuromoji_readingform",
"lowercase"
],
"type" : "custom",
"tokenizer" : "kuromoji_tokenizer"
}
}
},
"number_of_replicas" : "0",
"uuid" : "fqejb2_USWqQqQKvY0xFOA",
"version" : {
"created" : "9039001"
}
}
}
}
}
elastic-start-local %
マッピング
マッピングの定義を確認するためのコマンドです.
curl -H "Authorization: ApiKey ${ES_LOCAL_API_KEY}" "http://localhost:9200/hyaku_index/_mapping?pretty"
elastic-start-local % curl -H "Authorization: ApiKey ${ES_LOCAL_API_KEY}" "http://localhost:9200/hyaku_index/_mapping?pretty" ⏎
{
"hyaku_index" : {
"mappings" : {
"properties" : {
"id" : {
"type" : "long"
},
"kajin" : {
"type" : "text",
"fields" : {
"keyword" : {
"type" : "keyword",
"ignore_above" : 128,
"normalizer" : "lowercase_normalizer"
}
},
"analyzer" : "hyaku_kuromoji_analyzer"
},
"kana" : {
"type" : "text",
"fields" : {
"keyword" : {
"type" : "keyword",
"ignore_above" : 512
}
},
"analyzer" : "hyaku_kuromoji_analyzer"
},
"uta" : {
"type" : "text",
"fields" : {
"keyword" : {
"type" : "keyword",
"ignore_above" : 512
}
},
"analyzer" : "hyaku_kuromoji_analyzer"
}
}
}
}
}
elastic-start-local %
ドキュメントの件数
まだ利用していませんでしたが,登録済みドキュメントの件数を確認するためのコマンドです.
curl -H "Authorization: ApiKey ${ES_LOCAL_API_KEY}" "http://localhost:9200/hyaku_index/_count?pretty"
実際にコマンドを実行すると次のような結果が得られました.まだドキュメントを登録していないので結果は 0 件です.
elastic-start-local % curl -H "Authorization: ApiKey ${ES_LOCAL_API_KEY}" "http://localhost:9200/hyaku_index/_count?pretty" ⏎ { "count" : 0, "_shards" : { "total" : 1, "successful" : 1, "skipped" : 0, "failed" : 0 } } elastic-start-local %