安装Elasticsearch
1、直接去Elasticsearch 的官方网站下载Elasticsearch,
https://www.elastic.co/downloads/elasticsearch
2、选择如图下载,这个页面往下拉可以看到安装说明。
下载完之后,直接去文件夹里面找到elasticsearch-7.10.0\bin\elasticsearch.bat双击运行就可以启动elasticsearch服务器了。
3、运行完之后,去浏览器输入http://localhost:9200测试一下,出现下图则显示成功。
到此,ElasticSearch已经安装成功。
Python操作ElasticSearch
创建index
from elasticsearch import Elasticsearch
from elasticsearch_dsl import Search
es = Elasticsearch('localhost:9200') #()里面也可以不加'localhost:9200',因为默认就是这个
result=es.indices.create(index='test', ignore=400)
print(result)
返回如下图所示则创建成功:
删除 Index
es.indices.delete(index='test', ignore=400)
插入
from elasticsearch import Elasticsearch
from elasticsearch_dsl import Search
es = Elasticsearch('localhost:9200') #()里面也可以不加'localhost:9200',因为默认就是这个
data = {'sex':'men','name':'wang'}
result = es.create(index='test',doc_type='people', id=1, body=data)
print(result)
查看数据:
删除
result = es.delete(index='test', doc_type='politics', id=1)
查询
from elasticsearch import Elasticsearch
from elasticsearch_dsl import Search
es = Elasticsearch('localhost:9200') #()里面也可以不加'localhost:9200',因为默认就是这个
s=Search(using=es,index="test").filter("match",name='wang')
response=s.execute()
print(response[0].sex)
data = {'sex':'wom','name':'liu'}
搜索+聚类
from elasticsearch import Elasticsearch
from elasticsearch_dsl import Search
es = Elasticsearch('localhost:9200') #()里面也可以不加'localhost:9200',因为默认就是这个
body={}
a={'query': {'bool': {'filter': [{'match': {'name': 'wang'}}],
'must':[{'range':{'idd':{'gte':1,'lte':1}}}]
}}}
b = {"aggs": {"iddRange": {"range":{"field":"idd","ranges":[{"from":1,"to":3}]}}}}
body.update(a)
#body.update(b)
#print(body)
all_log = es.search(index="test",
track_total_hits=True,
body=body)
print(all_log)