sql >> Databáze >  >> NoSQL >> MongoDB

mapování v create index v elasticsearch through mongodb river se neprojeví

Nejprve musíte vytvořit svůj index pomocí nastavení indexu (analyzátor):

"analysis" : {
            "analyzer" : {
                 "str_search_analyzer" : {
                      "tokenizer" : "keyword",
                      "filter" : ["lowercase"]
                  },

                  "str_index_analyzer" : {
                     "tokenizer" : "keyword",
                     "filter" : ["lowercase", "ngram"]
                }
            },
            "filter" : {
                "ngram" : {
                    "type" : "ngram",
                    "min_gram" : 2,
                    "max_gram" : 20
                }
            }
        }

Poté můžete definovat mapování pro váš typ:

"autocomplete_questions": {
   "_boost" : {
        "name" : "po", 
        "null_value" : 1.0
   },
   "properties": {
            "po": {
                "type": "double"
            },
            "text": {
                "type": "string",
                "boost": 3.0,
                "search_analyzer" : "str_search_analyzer",
                "index_analyzer" : "str_index_analyzer"
            }           
   }
}

A teprve potom můžete vytvořit řeku:

curl -XPUT "localhost:9200/_river/autocompleteindex/_meta" -d '
{
"type": "mongodb",
"mongodb": {
    "host": "rahulg-dc",
    "port": "27017",
    "db": "qna",
    "collection": "autocomplete_questions"
},
"index": {
    "name": "autocompleteindex",
    "type": "autocomplete_questions"} }

Pomáhá to?




  1. Jak aktualizujete více polí pomocí Update.Set v MongoDB pomocí oficiálního ovladače c#?

  2. MongoDB .NET negeneruje _id na upsert

  3. počítejte počet relací v connect-redis

  4. Seřazené sady Redis a nejlepší způsob ukládání uid