无法为通过logstash JDBC输入插件创建的索引创建elasticsearch的映射

卡尔提基扬

我正在尝试mappings为elasticsearch创建index当我使用以下查询创建索引时,可以应用mappings

请在elasticsearch中找到创建索引的查询

put index/profile/1
{
    "firstname" : "Karthik",
    "lastname" : "AS",
    "address" : "4/167, SouthExtn, shanmuga nagar, NA",
    "Skill" : "Java, JEE, ReactJS, ActiveMQ, ElasticSearch",
    "filename" : "My_second_file_created_at_2012.01.13.pdf"
}

对于上面创建的索引,它可以应用mappings并能够成功搜索。请找到以下mappings详细信息

    PUT /documents_test8
{
   "settings" : {
      "analysis" : {
         "analyzer" : {
            "filename_search" : {
               "tokenizer" : "filename",
               "filter" : ["lowercase"]
            },
            "filename_index" : {
               "tokenizer" : "filename",
               "filter" : ["lowercase","edge_ngram"]
            }
         },
         "tokenizer" : {
            "filename" : {
               "pattern" : "[^\\p{L}\\d]+",
               "type" : "pattern"
            }
         },
         "filter" : {
            "edge_ngram" : {
               "side" : "front",
               "max_gram" : 20,
               "min_gram" : 1,
               "type" : "edgeNGram"
            }
         }
      }
   },
   "mappings" : {
      "doc" : {
         "properties" : {
            "filename" : {
               "type" : "text",
               "search_analyzer" : "filename_search",
               "index_analyzer" : "filename_index"
            }
         }
      }
   }
}

但是在实际情况下,我正在通过logstash JDBC输入插件在elasticsearch中创建索引。能够在elasticsearch中创建索引,但是一旦默认情况下通过logstash在elasticsearch中创建了索引,该问题mappings也会为该索引(对于所有字段)创建。之后,我将无法应用mappings它显示index [documents_test9/P07B6_6mRqmH9IP-UaCjrw] already exists错误。如果我尝试删除该索引并执行此mapping我得到Failed to parse mapping [doc]: No handler for type [string] declared on field [filename]的错误。

不确定,如何mappings通过logstash JDBC输入插件创建索引时如何应用

多项式质子

如果我对问题的理解正确,则可以将索引模板与通配符一起使用,以便默认情况下,任何包含通配符名称匹配的新索引都将使用给定的索引模板。

下面的模板,添加它包含文件名任意索引*即documents1documents_test8等等,将默认使用给定的索引模板。

 PUT _template/documents
{
  "template": "documents*",
   "settings" : {
      "analysis" : {
         "analyzer" : {
            "filename_search" : {
               "tokenizer" : "filename",
               "filter" : ["lowercase"]
            },
            "filename_index" : {
               "tokenizer" : "filename",
               "filter" : ["lowercase","edge_ngram"]
            }
         },
         "tokenizer" : {
            "filename" : {
               "pattern" : "[^\\p{L}\\d]+",
               "type" : "pattern"
            }
         },
         "filter" : {
            "edge_ngram" : {
               "side" : "front",
               "max_gram" : 20,
               "min_gram" : 1,
               "type" : "edgeNGram"
            }
         }
      }
   },
   "mappings" : {
      "doc" : {
         "properties" : {
            "filename" : {
               "type" : "text",
               "search_analyzer" : "filename_search",
               "index_analyzer" : "filename_index"
            }
         }
      }
   }
}

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

为 Elasticsearch 创建索引映射是否有任何性能优势

Logstash kafka输入插件无法通过使用新使用者并通过将auto_offset_reset设置为最早来读取任何消息

无法通过JBoss Eclipse插件创建休眠映射文件

使用logstash输入jdbc插件将从Mysql拉到Elasticsearch的Null值设置为默认值

Elasticsearch 7无法创建索引

Logstash没有在Elasticsearch上创建索引

在Elasticsearch中为具有新类型的现有索引创建映射

为什么在Elasticsearch中创建索引时此新映射无法生效?

Logstash无法在Windows 10中创建索引

每天在Logstash配置中为Elasticsearch创建一个新索引

Fluentd 无法使用 Elasticsearch 创建索引

如何停止Logstash在ElasticSearch中创建默认映射

如何创建为单独的输入类型创建的单独索引

通过logstash进入Elasticsearch时如何创建JSON格式的日志

elasticsearch:使用映射创建索引

Python Elasticsearch创建索引映射

使用映射创建Elasticsearch索引

无法为带有错误消息的索引创建映射设置

无法从LogStash创建CSV输出

ElasticSearch NEST:通过指定json通过ElasticClient创建索引

无法在Elasticsearch中创建映射和添加数据

无法在Linux上使用ElasticSearch映射Logstash

为Cordova创建插件

如何从elasticsearch数据为vega中的路径创建索引?

Logstash:无法将事件索引到Elasticsearch

Logstash Elasticsearch 输入插件 mTLS 支持

无法通过Logstash将数据从MS Sql Server传输到ElasticSearch

Logstash 创建管道但未创建索引

在logstash中创建季度索引