- 前言:node
練習 elasticsearch_dsl 模塊的增刪改查與鏈接, 每條Python語句會轉換成相應的 curl app
- 目錄:curl
- Elasticsearch 鏈接elasticsearch
- 三種聲明節點的方式ide
""" 三種聲明節點的方式 """ es1 = Elasticsearch([ {'host': 'localhost'}, {'host': 'othernode', 'port': 443, 'url_prefix': 'es', 'use_ssl': True}, ]) es2 = Elasticsearch( ['localhost:443', 'other_host:443'], # turn on SSL use_ssl=True, # make sure we verify SSL certificates (off by default) verify_certs=True, # provide a path to CA certs on disk ca_certs='/path/to/CA_certs' ) es3 = Elasticsearch( [ 'http://user:secret@localhost:9200/', 'https://user:secret@other_host:443/production' ], verify_certs=True )
- 經常使用的方式:測試
es1 = Elasticsearch([ {'host': 'localhost'}, ])
- Elasticsearch 類中參數詳解url
use_ssl = True # 使用 ssl 鏈接 verify_certs=True # 校驗ssl證書, 默認爲False ca_certs='/path/to/CA_certs' # CA證書的路徑 client_cert='/path/to/clientcert.pem' # PEM格式的SSL客戶端證書的路徑 client_key='/path/to/clientkey.pem' # PEM格式ssl客戶端祕鑰的路徑 connection_class=ThriftConnection # 指定本地鏈接使用的方式, 默認爲 Transport sniff_on_start=True # 開啓集羣探測 sniff_on_connection_fail=True # 節點出錯後進行刷新 sniffer_timeout=60 # 每60秒探測
- 增spa
- 索引:code
- 普通建立索引:blog
# 建立索引 es.indices.create(index="demo1") # 生成數據時無索引則建立索引 body = { "test": "測試數據" } ret = es.index(index="demo2", doc_type="demo2", body=body) # index() 會自動生成mapping mapping = { "demo2": { "mappings": { "demo2": { "properties": { "test": { "type": "text", "fields": { "keyword": { "type": "keyword", "ignore_above": 256 } } } } } } } }
# curl:
# curl -X PUT http://localhost:9200/demo3
- 建立mapping, 根據mapping定義的doc自動建立索引:
- 建立 template:
- 新增數據
- 刪
- 改
- 查