gpt4 book ai didi

elasticsearch - 在Elasticsearch中使用关键字进行聚合

转载 作者:行者123 更新时间:2023-12-03 01:20:13 25 4
gpt4 key购买 nike

我的最终目标是使用Elasticsearch索引构建多面搜索页面。
我正在关注this tutorial

为什么此聚合查询不适用于我的数据?我想我需要更改聚合子句,以便它引用关键字而不是字段,但不知道语法。

这是我的数据。我的意思是对以下Postman命令的响应:

GET https://<elastic username>:<elastic password>@<elastic url>:<port number>/<my index name>/_search 

这是回应:
{
"took": 3,
"timed_out": false,
"_shards": {
"total": 1,
"successful": 1,
"skipped": 0,
"failed": 0
},
"hits": {
"total": {
"value": 11,
"relation": "eq"
},
"max_score": 1.0,
"hits": [
{
"_index": "contacts_6_vglz9gvldv",
"_type": "_doc",
"_id": "URYmrHABQ6Znr4-To-Ma",
"_score": 1.0,
"_source": {}
},
{
"_index": "contacts_6_vglz9gvldv",
"_type": "_doc",
"_id": "2093",
"_score": 1.0,
"_source": {
"list_id": "6",
"contact_id": "2093",
"firstname": "DANIEL",
"middlename": "C",
"lastname": "BRYANT",
"suffix": "null",
"mobile_phone": "null",
"email": "",
"email2": "null",
"tags": "null",
"notes": "null",
"home_address1": "602 STONE CIRCLE CT APT 2",
"home_address2": "null",
"home_city": "SCHAUMBURG",
"home_state": "IL",
"home_zip": "60194",
"home_phone": "",
"county": "null",
"latitude": "42.030346",
"longitude": "-88.06422",
"location_point": "0101000020E6100000F2EF332E1C0456C03FC8B260E2034540",
"work_company": "null",
"work_occupation": "null",
"work_address1": "null",
"work_address2": "null",
"work_city": "null",
"work_state": "null",
"work_zip": "null",
"work_phone": "null",
"volun_walk": "null",
"volun_phone": "null",
"volun_yardsign": "null",
"volun_petition": "null",
"date_of_birth": "10/26/1991",
"sex": "M",
"race": "null",
"ethnicity": "null",
"religion": "null",
"married": "null",
"has_children": "null",
"dist_congress": "null",
"dist_state_house": "null",
"dist_state_senate": "null",
"dist_ward_township": "null",
"dist_precinct": "null",
"dist_library": "null",
"dist_county": "null",
"dist_judicial": "null",
"dist_school": "null",
"dist_fire": "null",
"dma": "null",
"linkedin": "null",
"facebook": "null",
"twitter": "null",
"instagram": "null",
"registered_party": "0",
"v2018_gen": "null",
"v2018_pri": "null",
"salutation": "null",
"honorific": "null",
"spouse": "null",
"assistant": "null",
"rnc_id": "null",
"state_voter_id": "null",
"i360_id": "null",
"household_id": "null",
"home_phone_reliability": "null",
"work_phone_reliability": "null",
"mobile_phone_reliability": "null",
"deceased": "null",
"has_moved": "null",
"created": "2019-11-13 21:24:55.825672",
"modified": "null",
"imported": "2019-11-13 15:24:51.006805",
"source": "null",
"custom": "null",
"fulltext": "'2':8 '60194':10 '602':3 'apt':7 'bryant':2 'circle':5 'ct':6 'daniel':1 'schaumburg':9 'stone':4",
"home_house_num": "602",
"home_predirection": "null",
"home_street_name": "STONE CIRCLE",
"home_street_type": "CT",
"home_postdirection": "null",
"home_unit_num": "APT 2",
"home_ruralroute": "null",
"registration_date": "null",
"registration_status": "null",
"web": "null",
"fake_col": "0.414"
}
},
{
"_index": "contacts_6_vglz9gvldv",
"_type": "_doc",
"_id": "2094",
"_score": 1.0,
"_source": {
"list_id": "6",
"contact_id": "2094",
"firstname": "Thomas",
"middlename": "Y",
"lastname": "Gehr",
"suffix": "null",
"mobile_phone": "null",
"email": "",
"email2": "null",
"tags": "null",
"notes": "null",
"home_address1": "174 Hemingway CT",
"home_address2": "null",
"home_city": "Vernon Hills",
"home_state": "IL",
"home_zip": "60061",
"home_phone": "",
"county": "null",
"latitude": "42.250633",
"longitude": "-87.95999",
"location_point": "0101000020E61000002C9FE57970FD55C03126FDBD14204540",
"work_company": "null",
"work_occupation": "null",
"work_address1": "null",
"work_address2": "null",
"work_city": "null",
"work_state": "null",
"work_zip": "null",
"work_phone": "null",
"volun_walk": "null",
"volun_phone": "null",
"volun_yardsign": "null",
"volun_petition": "null",
"date_of_birth": "11/23/1953",
"sex": "M",
"race": "null",
"ethnicity": "null",
"religion": "null",
"married": "null",
"has_children": "null",
"dist_congress": "null",
"dist_state_house": "null",
"dist_state_senate": "null",
"dist_ward_township": "null",
"dist_precinct": "null",
"dist_library": "null",
"dist_county": "null",
"dist_judicial": "null",
"dist_school": "null",
"dist_fire": "null",
"dma": "null",
"linkedin": "null",
"facebook": "null",
"twitter": "null",
"instagram": "null",
"registered_party": "1",
"v2018_gen": "null",
"v2018_pri": "null",
"salutation": "null",
"honorific": "null",
"spouse": "null",
"assistant": "null",
"rnc_id": "null",
"state_voter_id": "null",
"i360_id": "null",
"household_id": "null",
"home_phone_reliability": "null",
"work_phone_reliability": "null",
"mobile_phone_reliability": "null",
"deceased": "null",
"has_moved": "null",
"created": "2019-11-13 21:24:55.826028",
"modified": "null",
"imported": "2019-11-13 15:24:51.006805",
"source": "null",
"custom": "null",
"fulltext": "'174':3 '60061':8 'ct':5 'gehr':2 'hemingway':4 'hills':7 'thomas':1 'vernon':6",
"home_house_num": "174",
"home_predirection": "null",
"home_street_name": "HEMINGWAY",
"home_street_type": "CT",
"home_postdirection": "null",
"home_unit_num": "null",
"home_ruralroute": "null",
"registration_date": "null",
"registration_status": "null",
"web": "null",
"fake_col": "0.441"
}
},
{
"_index": "contacts_6_vglz9gvldv",
"_type": "_doc",
"_id": "2095",
"_score": 1.0,
"_source": {
"list_id": "6",
"contact_id": "2095",
"firstname": "EDYTA",
"middlename": "",
"lastname": "DZIADKOWIEC",
"suffix": "null",
"mobile_phone": "null",
"email": "",
"email2": "null",
"tags": "null",
"notes": "null",
"home_address1": "1005 TANGLEWOOD DR",
"home_address2": "null",
"home_city": "ALGONQUIN",
"home_state": "IL",
"home_zip": "60102",
"home_phone": "",
"county": "null",
"latitude": "42.1652",
"longitude": "-88.27284",
"location_point": "0101000020E61000009A42E735761156C04CA60A4625154540",
"work_company": "null",
"work_occupation": "null",
"work_address1": "null",
"work_address2": "null",
"work_city": "null",
"work_state": "null",
"work_zip": "null",
"work_phone": "null",
"volun_walk": "null",
"volun_phone": "null",
"volun_yardsign": "null",
"volun_petition": "null",
"date_of_birth": "10/31/1974",
"sex": "F",
"race": "null",
"ethnicity": "null",
"religion": "null",
"married": "null",
"has_children": "null",
"dist_congress": "null",
"dist_state_house": "null",
"dist_state_senate": "null",
"dist_ward_township": "null",
"dist_precinct": "null",
"dist_library": "null",
"dist_county": "null",
"dist_judicial": "null",
"dist_school": "null",
"dist_fire": "null",
"dma": "null",
"linkedin": "null",
"facebook": "null",
"twitter": "null",
"instagram": "null",
"registered_party": "1",
"v2018_gen": "null",
"v2018_pri": "null",
"salutation": "null",
"honorific": "null",
"spouse": "null",
"assistant": "null",
"rnc_id": "null",
"state_voter_id": "null",
"i360_id": "null",
"household_id": "null",
"home_phone_reliability": "null",
"work_phone_reliability": "null",
"mobile_phone_reliability": "null",
"deceased": "null",
"has_moved": "null",
"created": "2019-11-13 21:24:55.82604",
"modified": "null",
"imported": "2019-11-13 15:24:51.006805",
"source": "null",
"custom": "null",
"fulltext": "'1005':3 '60102':7 'algonquin':6 'dr':5 'dziadkowiec':2 'edyta':1 'tanglewood':4",
"home_house_num": "1005",
"home_predirection": "null",
"home_street_name": "TANGLEWOOD",
"home_street_type": "DR",
"home_postdirection": "null",
"home_unit_num": "null",
"home_ruralroute": "null",
"registration_date": "null",
"registration_status": "null",
"web": "null",
"fake_col": "0.257"
}
}
]
}
}

这是我的查询:
GET https://<elastic username>:<elastic password>@<elastic url>:<port number>/<my index name>/_search 

{
"query": {
"bool": {
"should" : [
{
"match": {
"firstname": "Thomas"
}
},
{
"match": {
"lastname": "Bryant"
}
}
]
}
},
"aggregations": {
"home_state": {
"terms": {"field": "home_state"}
}
}
}

这是错误:
{
"error": {
"root_cause": [
{
"type": "illegal_argument_exception",
"reason": "Fielddata is disabled on text fields by default. Set fielddata=true on [home_state] in order to load fielddata in memory by uninverting the inverted index. Note that this can however use significant memory. Alternatively use a keyword field instead."
}
],
"type": "search_phase_execution_exception",
"reason": "all shards failed",
"phase": "query",
"grouped": true,
"failed_shards": [
{
"shard": 0,
"index": "contacts_6_vglz9gvldv",
"node": "pvhkxY1rT_qrL3Y-IvOoWw",
"reason": {
"type": "illegal_argument_exception",
"reason": "Fielddata is disabled on text fields by default. Set fielddata=true on [home_state] in order to load fielddata in memory by uninverting the inverted index. Note that this can however use significant memory. Alternatively use a keyword field instead."
}
}
],
"caused_by": {
"type": "illegal_argument_exception",
"reason": "Fielddata is disabled on text fields by default. Set fielddata=true on [home_state] in order to load fielddata in memory by uninverting the inverted index. Note that this can however use significant memory. Alternatively use a keyword field instead.",
"caused_by": {
"type": "illegal_argument_exception",
"reason": "Fielddata is disabled on text fields by default. Set fielddata=true on [home_state] in order to load fielddata in memory by uninverting the inverted index. Note that this can however use significant memory. Alternatively use a keyword field instead."
}
}
},
"status": 400
}

最佳答案

默认情况下,Field data被禁用,因为它们消耗大量堆空间。

但是,您可以使用field_name.keyword进行聚合。在这种情况下,请将查询更改为

{
...
"aggregations": {
"home_state": {
"terms": {"field": "home_state.keyword"} <=== add '.keyword'
}
}
}

关于elasticsearch - 在Elasticsearch中使用关键字进行聚合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60554841/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com