Last updated:
0 purchases
prediktoelasticsearch 2.4.1
Unofficial low-level client for Elasticsearch. Its goal is to be a slight extension of the official elasticsearch-py
library, while providing more frequent releases in the interim. Specifically, we are working with elasticsearch 2.x,
1.x is not supported, and 5.x is probably an afterthought. For support of either of those two, head to the main repo.
Compatibility
At the time of the fork, the most recent version of the elasticsearch 2.x version was 2.4.0, so the first release of
predikto-elasticsearch-py will be 2.4.1.
Installation
Install the elasticsearch package with pip:
pip install predikto-elasticsearch
Example use
Simple use-case:
>>> from datetime import datetime
>>> from elasticsearch import Elasticsearch
# by default we connect to localhost:9200
>>> es = Elasticsearch()
# create an index in elasticsearch, ignore status code 400 (index already exists)
>>> es.indices.create(index='my-index', ignore=400)
{u'acknowledged': True}
# datetimes will be serialized
>>> es.index(index="my-index", doc_type="test-type", id=42, body={"any": "data", "timestamp": datetime.now()})
{u'_id': u'42', u'_index': u'my-index', u'_type': u'test-type', u'_version': 1, u'ok': True}
# but not deserialized
>>> es.get(index="my-index", doc_type="test-type", id=42)['_source']
{u'any': u'data', u'timestamp': u'2013-05-12T19:45:31.804229'}
Features
The client’s features include:
translating basic Python data types to and from json (datetimes are not
decoded for performance reasons)
configurable automatic discovery of cluster nodes
persistent connections
load balancing (with pluggable selection strategy) across all available nodes
failed connection penalization (time based - failed connections won’t be
retried until a timeout is reached)
support for ssl and http authentication
thread safety
pluggable architecture
License
Copyright 2015 Elasticsearch
Licensed under the Apache License, Version 2.0 (the “License”);
you may not use this file except in compliance with the License.
You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software
distributed under the License is distributed on an “AS IS” BASIS,
WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
See the License for the specific language governing permissions and
limitations under the License.
For personal and professional use. You cannot resell or redistribute these repositories in their original state.
There are no reviews.