Asynchronous elasticsearch backend - part of Wallaby. The couchDB application framework.
Project description
wallaby-backend-elasticsearch
=============================
This package provides an asynchronous python interface to elasticsearch (using twisted).
For more information on wallaby visit http://wlby.freshx.de
Installation
============
You can install the elasticsearch backend with pip
```bash
pip install wallaby-backend-elasticsearch
```
How to use
==========
The library is based on twisted's asynchronous pattern. To use the library in an asynchronous fassion you
first need to create an reactor based application:
```python
from twisted.internet import defer
@defer.inlineCallbacks
def run():
# wait 1 second
d = defer.Deferred()
reactor.callLater(1.0, d.callback)
yield d
# stop the reactor and quit the application
reactor.stop()
from twisted.internet import reactor
reactor.callWhenRunning(run)
reactor.run()
```
Now we can connect to an existing elasticsearch cluster:
```python
@defer.inlineCallbacks
def run():
# Create elasticsearch client object
from wallaby.backends.elasticsearch import Connection
es = Connection(
baseURL="http://localhost:9200",
index="<name of index>",
username="<username>",
password="<password>",
)
# Send query
res = yield es.doQuery({
"query": {
"query_string": {
"query": "*"
}
}
})
# stop the reactor and quit the application
reactor.stop()
```
=============================
This package provides an asynchronous python interface to elasticsearch (using twisted).
For more information on wallaby visit http://wlby.freshx.de
Installation
============
You can install the elasticsearch backend with pip
```bash
pip install wallaby-backend-elasticsearch
```
How to use
==========
The library is based on twisted's asynchronous pattern. To use the library in an asynchronous fassion you
first need to create an reactor based application:
```python
from twisted.internet import defer
@defer.inlineCallbacks
def run():
# wait 1 second
d = defer.Deferred()
reactor.callLater(1.0, d.callback)
yield d
# stop the reactor and quit the application
reactor.stop()
from twisted.internet import reactor
reactor.callWhenRunning(run)
reactor.run()
```
Now we can connect to an existing elasticsearch cluster:
```python
@defer.inlineCallbacks
def run():
# Create elasticsearch client object
from wallaby.backends.elasticsearch import Connection
es = Connection(
baseURL="http://localhost:9200",
index="<name of index>",
username="<username>",
password="<password>",
)
# Send query
res = yield es.doQuery({
"query": {
"query_string": {
"query": "*"
}
}
})
# stop the reactor and quit the application
reactor.stop()
```
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Close
Hashes for wallaby-backend-elasticsearch-0.1.31.tar.gz
Algorithm | Hash digest | |
---|---|---|
SHA256 | 5a6fa1c7b562914b81e7b4a29321e8b0e112ce2ff0d3121da3c8d66aeb994261 |
|
MD5 | 72de208ac46087b7b338f432aa3c057a |
|
BLAKE2b-256 | ddc9cd0744ad25bedd18d76528e4c1ee72def579ecf4fbffa1c40533ee21d598 |