elasticsearchcollapse 접합 집합
4301 단어 ElasticSearch
from elasticsearch import Elasticsearch
def query_2coll(index_name):
query = {'size': 10000,
"query": {
"match_all": {}
},
"collapse": {
"field": "subject_id",
"inner_hits": {
"name": "group",
"size": 5,
"sort": [{"group": "asc"}]
},
"max_concurrent_group_searches": 4
}
}
try:
datas = []
allDoc = es.search(index=index_name, doc_type='koala-index', body=query)
for data in allDoc['hits']['hits']:
print(data['_source']['id'], data['_source']['group'], data['_source']['subject_id'])
# for val, buckets in enumerate(data['_source']):
# if val>1:
# print('data error')
# print(buckets['_source'])
datas.append(data['_source'])
return datas
except Exception as e:
print('query1 error', e)
return datas
def query(index_name):
query ={'size':10000,
"query": {
"match_all": {}
},
"sort": [
{
"group": {
"order": "asc"
}
}
],
"collapse": {
"field": "group",
"terms": {
"field": "subject_id", 'size': 10000
}
},
"aggs": {
"agg_sex": {
"terms": {
"field": "subject_id",'size':10000
}
}
}
}
try:
datas=[]
allDoc = es.search(index=index_name, doc_type='koala-index', body=query)
for data in allDoc['hits']['hits']:
print(data['_source']['id'],data['_source']['group'],data['_source']['subject_id'])
# for val, buckets in enumerate(data['_source']):
# if val>1:
# print('data error')
# print(buckets['_source'])
datas.append(data['_source'])
return datas
except Exception as e:
print('query1 error', e)
return datas
def query_ju(index_name):
query = {
"from": 0,
"size": 10000,
"sort": [
{
"event_id": {
"order": "desc"
}
}
],
"collapse": {
"field": "subject_id",
"inner_hits": {
"name": "quality",
"size": 1,
"sort": [
{
"event_id": {
"order": "asc"
}
}
]
}
}
}
datas=[]
try:
allDoc = es.search(index=index_name, doc_type='koala-index', body=query)
for data in allDoc['hits']['hits']:
print(data['_source']['date'])
# for val, buckets in enumerate(data['_source']):
# if val>1:
# print('data error')
# print(buckets['_source'])
# datas.append(buckets['_source'])
return datas
except Exception as e:
print('query1 error', e)
return datas
if __name__ == '__main__':
es = Elasticsearch(['127.0.0.1:9200'])
index_name = 'event_tk'
query_2coll(index_name)
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
spring-data-elasticsearch 페이지 조회부록: 1. 이름에서 알 수 있듯이QueryBuilder는 검색 조건, 필터 조건을 구축하는 데 사용되고 SortBuilder는 정렬을 구축하는 데 사용된다. 예를 들어 우리는 어느 위치에서 100미터 범위 내의 모...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.