神戸学院大学 経営学部 林坂ゼミ

Docker 入門トップページ

« 戻る 次へ »

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 %

目次に戻る