Creating an index Nest

后端 未结 5 1239
傲寒
傲寒 2020-12-19 03:01

How would I recreate the following index using Elasticsearch Nest API?

Here is the json for the index including the mapping:

{
    \"settings\": {
           


        
5条回答
  •  陌清茗
    陌清茗 (楼主)
    2020-12-19 03:15

    Small example :

                EsClient.CreateIndex("indexname", c => c
                    .NumberOfReplicas(replicasNr)
                    .NumberOfShards(shardsNr)
                .Settings(s => s
                     .Add("merge.policy.merge_factor", "10")
                     .Add("search.slowlog.threshold.fetch.warn", "15s")
                )
    
                #region Analysis
               .Analysis(descriptor => descriptor
                    .Analyzers(bases => bases
                        .Add("folded_word", new CustomAnalyzer()
                        {
                            Filter = new List { "icu_folding", "trim" },
                            Tokenizer = "standard"
                        }
                        )
    
                 .TokenFilters(i => i
                             .Add("engram", new EdgeNGramTokenFilter
                             {
                                 MinGram = 1,
                                 MaxGram = 20
                             }
                             )
                )
                .CharFilters(cf => cf
                             .Add("drop_chars", new PatternReplaceCharFilter
                             {
                                 Pattern = @"[^0-9]",
                                 Replacement = ""
                             }
    
                )
                #endregion
    
                #region Mapping Categories
                .AddMapping(m => m
                    .Properties(props => props
                        .MultiField(mf => mf
                                .Name(n => n.Label_en)
                                .Fields(fs => fs
                                    .String(s => s.Name(t => t.Label_en).Analyzer("folded_word"))
                                    )
                            )
                 )
                #endregion
        );
    

提交回复
热议问题