1はじめに
主にインデックスリクエストの基本的なAPI操作を紹介し、postmanを使用してリクエストします。インターフェースリクエストのプレフィックスアドレスは、elasticsearchデプロイメントのIPアドレス+ポート番号(たとえば、http://192.168.51.4:9200)として統合されます。 postmanテストファイルのインターフェイスアドレスJSONエクスポート:
Postmanインターフェイスコレクションのダウンロードアドレスhttps://download.csdn.net/download/qq_15769939/15469409
2インデックスの基本操作
2.1クラスターのヘルスステータス
公式ウェブサイトアドレス:
https://www.elastic.co/guide/cn/elasticsearch/guide/current/_cluster_health.html#_cluster_health
リクエスト方法 | インターフェイスアドレス |
---|---|
取得する | / _cluster / health |
{
"cluster_name": "auskat-elasticsearch",
"status": "yellow",
"timed_out": false,
"number_of_nodes": 1,
"number_of_data_nodes": 1,
"active_primary_shards": 8,
"active_shards": 8,
"relocating_shards": 0,
"initializing_shards": 0,
"unassigned_shards": 1,
"delayed_unassigned_shards": 0,
"number_of_pending_tasks": 0,
"number_of_in_flight_fetch": 0,
"task_max_waiting_in_queue_millis": 0,
"active_shards_percent_as_number": 88.88888888888889
}
最も重要な情報に応えて、status
フィールドにあります。ステータスは、次の3つの値のいずれかになります。
-
green
すべてのプライマリシャードとレプリカシャードが割り当てられました。クラスタは100%利用可能です。
-
yellow
すべてのプライマリシャードがシャーディングされましたが、少なくとも1つのコピーが欠落しています。データが失われることはないので、検索結果はまだ完全です。ただし、高可用性はある程度弱まります。場合はより多くの断片が消え、あなたはデータを失うことになります。
yellow
タイムリーな調査の必要性の警告としての考え。 -
red
少なくとも1つのプライマリシャード(およびそのすべてのコピー)が欠落しています。これは、データが欠落していることを意味します。検索ではデータの一部しか返すことができず、このシャードに割り当てられた書き込み要求は例外を返します。
2.2インデックスを作成する
リクエスト方法 | インターフェイスアドレス | 備考 |
---|---|---|
プット | / index_api_demo | index_api_demo作成するインデックスの名前 |
传递的JSON参数
{
"settings": {
"index": {
"number_of_shards": "2",
"number_of_replicas": "0"
}
}
}
- number_of_shardsシャードの数
- number_of_replicasレプリカの数
返回结果
{
"acknowledged": true,
"shards_acknowledged": true,
"index": "index_api_demo"
}
2.3指定されたインデックス情報のクエリ
リクエスト方法 | インターフェイスアドレス | 備考 |
---|---|---|
取得する | / index_api_demo | index_api_demo照会するインデックスの名前 |
请求结果
{
"index_api_demo": {
"aliases": {
},
"mappings": {
},
"settings": {
"index": {
"creation_date": "1614258485568",
"number_of_shards": "2",
"number_of_replicas": "0",
"uuid": "vnErVtHjSH-n29F1df8tDg",
"version": {
"created": "7040299"
},
"provided_name": "index_api_demo"
}
}
}
}
2.4すべてのインデックスの情報を照会する
リクエスト方法 | インターフェイスアドレス |
---|---|
取得する | / _cat / indexes?v |
请求结果
health status index uuid pri rep docs.count docs.deleted store.size pri.store.size
yellow open index_mapping ECD_xsBERPa5gSLCYe3r4g 1 1 0 0 283b 283b
green open index_demo NieZpAnYTSSSkC1umY7u7g 5 0 0 0 1.3kb 1.3kb
green open my_doc ZEEYJASoTIqKyr8SycMQxw 1 0 5 3 11.4kb 11.4kb
green open index_field xRd8d_bvSmWYK9_HFJfe2A 1 0 0 0 283b 283b
green open index_api_demo vnErVtHjSH-n29F1df8tDg 2 0 0 0 566b 566b
2.5インデックスを削除する
リクエスト方法 | インターフェイスアドレス | 備考 |
---|---|---|
削除 | / index_api_demo | index_api_demo照会するインデックスの名前 |
请求结果
{
"acknowledged": true
}
2.6インデックスの作成中にマッピングを作成する
リクエスト方法 | インターフェイスアドレス | 備考 |
---|---|---|
プット | / index_mapping_demo | index_mapping_demo作成するインデックスの名前 |
传递json数据
{
"mappings": {
"properties": {
"realname": {
"type": "text",
"index": true
},
"username": {
"type": "keyword",
"index": false
}
}
}
}
index:デフォルトはtrueです。falseに設定すると、このフィールドはインデックスに登録されません。
公式アドレス: https : //www.elastic.co/guide/en/elasticsearch/reference/current/mapping-index.html
index
この
index
オプションは、フィールド値にインデックスを付けるかどうかを制御します。true
またはfalse
を受け入れ、デフォルトでtrue
。インデックスが付けられていないフィールドはクエリできません。
请求结果
{
"acknowledged": true,
"shards_acknowledged": true,
"index": "index_mapping_demo"
}
2.7マッピングを変更する
リクエスト方法 | インターフェイスアドレス | 備考 |
---|---|---|
役職 | / index_mapping_demo / _mapping | index_mapping_demoインデックス名 |
传递JSON数据
{
"properties": {
"id": {
"type": "long"
},
"age": {
"type": "integer"
},
"money1": {
"type": "double"
},
"money2": {
"type": "float"
},
"sex": {
"type": "byte"
},
"score": {
"type": "short"
},
"is_teenger": {
"type": "boolean"
},
"birthday": {
"type": "date"
},
"relationship": {
"type": "object"
}
}
}
请求结果
{
"acknowledged": true
}
属性が作成されると、それを変更することはできませんが、追加の属性を追加することはできます
3関連情報
- ブログ投稿は簡単ではありません、注意と賞賛に一生懸命働いたすべての人、ありがとう