全程使用阿里云ElasticSearch,人民币玩家,这块几乎没有门槛。
创建好后等待大概5分钟(有点久),然后一个ElasticSearch就创建好了。
安全配置
按照ElasticSearch的阿里云官方文档pythonSDK教程试用,首先会遇到“index_not_found_exception <404>”报错,这是因为1)没有创建索引。2)默认关闭自动创建索引。
需要在控制台开启自动索引。(也可以不开启,前面加上创建索引即可)
需要配置ElasticSearch白名单,注意不要配置允许全网可访问(0.0.0.0/0),存在远程命令执行漏洞风险。
Python操作Elasticsearch
引入python依赖库
```
from datetime import datetime
from elasticsearch import Elasticsearch
<a name="ws5ery"></a>
#### python连接elasticSearch
注意默认用户名是elastic,这点是官方网站没有显式提醒的。 es = Elasticsearch( ['你的公网地址.public.elasticsearch.aliyuncs.com'], http_auth=('elastic', '你的密码'), port=9200, use_ssl=False )
<a name="g5gnaz"></a>
#### 创建索引
如果已有,可能会报错,如果报错此条可以注释掉。 es.indices.create(index='my-index')
<a name="g0sxsb"></a>
#### 插入数据
es.index(index=”my-index”,doc_type=”test-type”,id=1,body={“any”:”data01”,”timestamp”:datetime.now()})
<a name="0sawgh"></a>
#### 查询数据
res = es.get(index=”my-index”, doc_type=”test-type”, id=1) print(res)
<a name="02fhyt"></a>
#### 查询所有数据
res = es.search(index=”test-index”, body={“query”:{“match_all”:{}}}) print(res) ```
后续的学习
需要考虑如何批量从ODPS导入数据到elasticSearch。
如何删除数据,及批量删除数据。
如何去重,及如何按条件筛选数据。