- 全程使用阿里云ElasticSearch,人民币玩家,这块几乎没有门槛。买资源的地址是:https://elasticsearch-cn-hangzhou.console.aliyun.com/#/instances
-
创建好后等待大概5分钟(有点久),然后一个ElasticSearch就创建好了。
img20180812001.jpg
安全配置
- 按照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
```
python连接elasticSearch
注意默认用户名是elastic,这点是官方网站没有显式提醒的。
es = Elasticsearch(
['你的公网地址.public.elasticsearch.aliyuncs.com'],
http_auth=('elastic', '你的密码'),
port=9200,
use_ssl=False
)
创建索引
如果已有,可能会报错,如果报错此条可以注释掉。
es.indices.create(index='my-index')
插入数据
es.index(index="my-index",doc_type="test-type",id=1,body={"any":"data01","timestamp":datetime.now()})
查询数据
res = es.get(index="my-index", doc_type="test-type", id=1)
print(res)
查询所有数据
res = es.search(index="test-index", body={"query":{"match_all":{}}})
print(res)
后续的学习
- 需要考虑如何批量从ODPS导入数据到elasticSearch。
- 如何删除数据,及批量删除数据。
- 如何去重,及如何按条件筛选数据。
网友评论