• 全程使用阿里云ElasticSearch,人民币玩家,这块几乎没有门槛。

  • 创建好后等待大概5分钟(有点久),然后一个ElasticSearch就创建好了。
    【20180930】ElasticSearch学习笔记(入门) - 图1

安全配置

  • 按照ElasticSearch的阿里云官方文档pythonSDK教程试用,首先会遇到“index_not_found_exception <404>”报错,这是因为1)没有创建索引。2)默认关闭自动创建索引。

  • 需要在控制台开启自动索引。(也可以不开启,前面加上创建索引即可)

  • 需要配置ElasticSearch白名单,注意不要配置允许全网可访问(0.0.0.0/0),存在远程命令执行漏洞风险。

Python操作Elasticsearch

引入python依赖库

  1. ```
  2. from datetime import datetime
  3. from elasticsearch import Elasticsearch
  1. <a name="ws5ery"></a>
  2. #### python连接elasticSearch
  3. 注意默认用户名是elastic,这点是官方网站没有显式提醒的。 es = Elasticsearch( ['你的公网地址.public.elasticsearch.aliyuncs.com'], http_auth=('elastic', '你的密码'), port=9200, use_ssl=False )
  4. <a name="g5gnaz"></a>
  5. #### 创建索引
  6. 如果已有,可能会报错,如果报错此条可以注释掉。 es.indices.create(index='my-index')
  7. <a name="g0sxsb"></a>
  8. #### 插入数据

es.index(index=”my-index”,doc_type=”test-type”,id=1,body={“any”:”data01”,”timestamp”:datetime.now()})

  1. <a name="0sawgh"></a>
  2. #### 查询数据

res = es.get(index=”my-index”, doc_type=”test-type”, id=1) print(res)

  1. <a name="02fhyt"></a>
  2. #### 查询所有数据

res = es.search(index=”test-index”, body={“query”:{“match_all”:{}}}) print(res) ```

后续的学习

  • 需要考虑如何批量从ODPS导入数据到elasticSearch。

  • 如何删除数据,及批量删除数据。

  • 如何去重,及如何按条件筛选数据。

参考资料: