RubberBand
An ElasticSearch client with ThriftClient-like failover handling.
License
Copyright 2010-2011 Grant Rodgers. See included LICENSE file.
Features
-
Automatic failover, retry, and peer discovery
-
Support for multiple transports (HTTP, Thrift, Memcached TODO)
-
Support for multiple encodings (JSON (Yajl), Smile TODO)
Usage
Instantiate a client:
client = ElasticSearch.new('127.0.0.1:9200', :index => "twitter", :type => "tweet")
Instantiate a client with multiple servers:
client = ElasticSearch.new(['127.0.0.1:9200', '127.0.0.1:9201'])
Instantiate a client using a Heroku URL (this sets the default index):
client = ElasticSearch.new(ENV['ELASTICSEARCH_URL'])
API:
client.index({:body => "elasticsearch is cool"}, :id => 1)
client.get("1")
client.search("body:elasticsearch")
TODO
See TODO file.
Contributing
Fork, code, send pull request