一、安装
1.安装java环境,下载JDK
ES7.0以上版本默认自带JDK,ES7.0以下版本必须装java环境
2.下载elasticSearch
二、配置
1.进入到下载好的ES的目录或者自定义的目录下

cd Work/es/elasticsearch-6.4.3/
打开配置文件:vim config/elasticsearch.yml
3.重新指定端口和host已经名称
cluster.name: yingcc #集群的名字
node.name: master #当前节点的名字
node.master: true #表示这个节点是否可以充当主节点,以及点是否充当数据节点
network.host: 127.0.0.1 #绑定host,0.0.0.0代表当前节点的ip
http.port: 9203 #对外提供http服务的端口
三、打开服务
1.进入bin目录下开启elasticsearch 服务
bin/elasticsearch
后台一直开启:
bin/elasticsearch -d
四、下载elasticsearch 插件
打开插件查看ES状态ElasticSearch Head

五、python3 实战
from elasticsearch import Elasticsearch
es = Elasticsearch(
['127.0.0.1:9203']
)
# 默认host为localhost,port为9200.但也可以指定host与port
print(es.info())
# 插入数据,index,doc_type名称可以自定义,id可以根据需求赋值,body为内容
es.create(index="movie", doc_type="video",id=1,body=data)
# 同样是插入数据,create() 方法需要我们指定 id 字段来唯一标识该条数据,而 index() 方法则不需要,如果不指定 id,会自动生成一个 id
es.index(index='movie', doc_type='video', body=data)
# 删除指定的index、type、id的文档
es.delete(index='video122332', doc_type='test_type', id=1)
# 删除index
es.indices.delete(index='news', ignore=[400, 404])
query = {'query': {'match_all': {}}} # 查找所有文档
query1 = {'query': {'match': {'sex': 'famale'}}} # 删除性别为女性的所有文档
query2 = {'query': {'range': {'age': {'lt': 11}}}} # 删除年龄小于11的所有文档
query3 = {'query': {'term': {'name': 'jack'}}} # 查找名字叫做jack的所有文档
# 删除所有文档
es.delete_by_query(index="id", doc_type="test_type", body=query)
# get:获取指定index、type、id所对应的文档
es.get(index="id", doc_type="test_type", id=1)
# search:查询满足条件的所有文档,没有id属性,且index,type和body均可为None
result = es.search(index="my_index", doc_type="test_type", body=query)
print(result['hits']['hits'][0]) # 返回第一个文档的内容
# update:更新指定index、type、id所对应的文档
# 更新的主要点:
# 1. 需要指定 id
# 2. body={"doc": <xxxx>} , 这个doc是必须的
es.update(index="my_index", doc_type="test_type", id=1, body={"doc": {"name": "python1", "addr": "深圳1"}})
网友评论