ES在查询中发现无法匹配的字段类型

复制代码
2023-12-19 09:15:23,059 [ERROR] [http-nio-8301-exec-1] [hbaseReader-1077] e.b.es.service.impl.EsQueryImpl - matchQuery error:
org.elasticsearch.ElasticsearchStatusException: Elasticsearch exception [type=search_phase_execution_exception, reason=all shards failed]
        at org.elasticsearch.rest.BytesRestResponse.errorFromXContent(BytesRestResponse.java:177)
        at org.elasticsearch.client.RestHighLevelClient.parseEntity(RestHighLevelClient.java:1406)
        at org.elasticsearch.client.RestHighLevelClient.parseResponseException(RestHighLevelClient.java:1382)
        at org.elasticsearch.client.RestHighLevelClient.performRequest(RestHighLevelClient.java:1269)
        at org.elasticsearch.client.RestHighLevelClient.performRequestAndParseEntity(RestHighLevelClient.java:1231)
        at org.elasticsearch.client.RestHighLevelClient.search(RestHighLevelClient.java:730)
        at exsun.bigdata.es.service.impl.EsQueryImpl.geoPolygonWithDateQuery(EsQueryImpl.java:113)
        at exsun.bigdata.es.service.impl.EsQueryImpl$$FastClassBySpringCGLIB$$569d606c.invoke(<generated>)
        at org.springframework.cglib.proxy.MethodProxy.invoke(MethodProxy.java:218)

A.检查一下ES的版本跟代码是否匹配(一般是ok的)

B.检查一下ES中的索引和配置文件的名称是否一致;

C.检查是否导入索引类型

ES导入脚本如下:

复制代码
PUT /1077_dvo_gps_data_relation_online
{
  "settings": {
    	"number_of_shards": 1,
    	"number_of_replicas": 1
    },
    "mappings": {
      "_doc": {
        "properties": {
		      "lat": {"type": "float"},
          "lng": {"type": "float"},
          "lngAndLat": {"type": "geo_point"},
          "hgt": {"type": "integer"},
          "spd": {"type": "integer"},
          "dre": {"type": "integer"},
          "gte": {"type": "long"},
          "gdt": {"type": "date", "format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis"},
          "mie": {"type": "integer"},
          "kilometer":{"type": "float"},
          "poi": {"type": "object"},
          "alm": {"type": "text"},
          "amm": {"type": "long"},
          "sts": {"type": "text"},
          "stm": {"type": "long"},
          "pop": {"type": "object"},
          "adl": {"type": "object"},
          "cnt": {"type": "integer"},
          "ons": {"type": "integer"},
          "mid": {"type": "integer"},
          "dvo": {"type": "keyword"},
          "pte": {"type": "date", "format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis"},
          "tpc": {"type": "text"},
          "vehicleName": {"type": "text"},
          "vehicleId": {"type": "keyword"},
          "numberPlate": {"type": "text","fields": {"keyword":{"type":"keyword","ignore_above": 256}}},
          "companyId": {"type": "long"},
          "companyName": {"type": "text"},
          "driverInfo":{"type": "object"},
          "vehicleType":{"type": "integer"},
          "dayKMeter":{"type": "float"},
          "bindName":{"type":"text"},
          "objType":{"type":"integer"},
          "adress":{"type":"text"},
          "lastTime_lngAndLat": {"type": "geo_point"},
          "lastTime_gte": {"type": "long"},
          "lastTime_gdt": {"type": "date", "format": "yyyy-MM-dd HH:mm:ss||yyyy-MM-dd||epoch_millis"}
        }
      }
    }
}

导入方式:

先进入ambari平台,点击'++++Kibana++++'->'[++++Kibana UI++++](#Kibana UI)'

点击'Management'->'Index management'进入到查询页面

如果发现缺少index或者缺少index对应的类型,可以选择先删除索引

再从'Dev Tools'工具中执行上面的index的脚本。

相关推荐
isfox1 小时前
MapReduce 作业慢?别乱调参数,先找到瓶颈在哪
大数据
玩美数据3 小时前
市场调研数据分析与数据集驱动的行业格局变革深度解析
大数据·人工智能
Elasticsearch3 小时前
从结账告警到故障跨度:使用 Elastic 人工智能 agent 和 Elastic 应用性能监控浮出面板开展调查
elasticsearch
Elasticsearch3 小时前
认识全新的 Elastic 数据流:面向遥测数据的托管数据管道
elasticsearch
微订校园外卖系统3 小时前
校园代取快递系统选型:现成系统与定制开发的技术核对项
大数据·运维·人工智能·外卖系统·本地生活·微订
Elasticsearch5 小时前
使用 SpiceDB 为 Elasticsearch 检索增强生成实现细粒度授权
elasticsearch
挖掘狂人5 小时前
Token 都上双十一货架了,AI 电脑的账该怎么算?
大数据·程序员·ai编程
新*5 小时前
ES 7.17 三节点 Docker 集群接入 IK 自定义词典:一次从丢插件到热更新的完整排障
运维·elasticsearch·docker·中文分词·ik分词
Black蜡笔小新6 小时前
消防控制室/配电房/中控室...视频汇聚平台EasyCVR岗位AI智能监测方案守住关键岗位
大数据·音视频·easycvr
大大大大晴天20 小时前
每天认识一个组件:Apache Spark
大数据