(一)elasticsearch 5 xインデックス作成、修正及びテンプレート使用

2614 ワード

一般的なインデックス作成の3つの方法:
  • インデックス
  • を直接作成
  • 動的作成インデックス
  • テンプレートを使用したインデックス作成
  • 1.インデックスの直接作成
    データを挿入する前にindexとtypeを指定し、5 xバージョンでスライス数を指定します.例は以下のとおりです.
    my_という名前のindexのインデックス、インデックスタイプmy_type.allフィールドを無効にし、必要なフィールドを_に配置します.all中
    curl -XPUT ip:9200/my_index -d '{  
    "settings":{    
            "index": {   
                   "refresh_interval" : "-1",  //  shard    ,     bulk  ,            ,  bulk       1s  
                   "number_of_shards": "20",  //   20    ,           ,      
                   "translog.flush_threshold_size": "1024mb" //   200mb,          translog flush       (segment);          flush   ,          ,     IO,      。  
                   "number_of_replicas": "1", //  1   ,bulk       ,        ,   0  
                   "max_result_window": 999999    
                }    
        },  
        "mappings" :{  
            "my_type" : {  
               "include_in_all": false, //  _all,           
               "dynamic": "false",  
                "_source": {  
                    "enabled": "true"  
                },  
                "_all": { "analyzer": "ik_max_word" },  
                "properties": {  
                    "myid" : {  
                        "type": "keyword",//5x    string,  keyword text  
                        "index": "not_analyzed",  
                        "include_in_all": true,  
                        "store": true  
                    }  
           }  
         }  
       }  
    }'

    2.動的索引作成
    elasticsearchを変更します.ymlの構成は、後でデータをコミットとesが自動的にデータ型を認識し、インデックスおよびインデックスタイプを作成しますが、この方法は推奨されません.
    #      
    action.auto_creat_index:true
    

    3.テンプレートを使用した索引の作成
    my_という名前の作成templateのテンプレート、すべてmy_に一致indexの先頭のインデックスは、マッチングに成功するとsettingsとmappingsに従って新しいインデックスが作成されます.
    curl -XPUT ip:9200/_template/my_template -d'  
    {  
            "template": "my_index*", //    my_index       
            "order":0,  //                      ,  order         
            "settings": {...},  
            "mappings" :{...}  
    }  
    
    //    
    curl -XGET ip:9200/_template/my_template 
    //      , PUT    POST  
    
    //    
    curl -XDELETE ip:9200/_template/my_template
    
    

    索引の変更:
    curl -XPUT ip:9200/my_index/_settings -d'{"index.number_of_replicas": 2}'  //