38

ElasticSearch のドキュメントでは、これを行う方法が明確ではありません。

いくつかのつぶやきにインデックスを付け、フィールドの 1 つである created_at に、日付ではなく文字列としてインデックスを付けました。curl 呼び出しを介してこの変更でインデックスを再作成する方法が見つかりません。インデックスの再作成が複雑なプロセスである場合は、そこにあるものを削除して最初からやり直す方がはるかに望ましいでしょう。しかし、フィールド タイプを指定する方法も見つかりません。

どんな助けでも大歓迎です。

4

4 に答える 4

9

mysql タイムスタンプを挿入する場合は、タイプだけでなくフォーマットも指定する必要があります。このようにフォーマットを追加するだけです。

"properties": {
    "updated_at": {
         "type": "date",
         "format": "yyyy-MM-dd HH:mm:ss"
     }
 }

あなたの例を考えると、次のようになります

"tweet" : {
    "properties" : {
        "user" : {"type" : "string", "index" : "not_analyzed"},
        "message" : {"type" : "string", "null_value" : "na"},
        "postDate" : {"type" : "date" , "format": "yyyy-MM-dd HH:mm:ss" },
        "priority" : {"type" : "integer"},
        "rank" : {"type" : "float"}
    }
} 
于 2015-07-28T07:57:43.447 に答える