Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Elasticsearch client for iOS

Does anyone know of an elasticsearch client library for iOS? Would be a bonus if it was written in swift as well.

The elastic search 'clients' section shows multiple libraries for a number of platforms but nothing for iOS, I feel like someone must have done this?

Cheers

like image 433
Adrian Avatar asked Jan 20 '15 11:01

Adrian


People also ask

What is Elasticsearch client used for?

Elasticsearch allows you to store, search, and analyze huge volumes of data quickly and in near real-time and give back answers in milliseconds. It's able to achieve fast search responses because instead of searching the text directly, it searches an index.

Is elastic Kibana free?

Kibana is an free and open frontend application that sits on top of the Elastic Stack, providing search and data visualization capabilities for data indexed in Elasticsearch.

Is there a free version of Elasticsearch?

Is Elasticsearch free? Yes, the free and open features of Elasticsearch are free to use under either SSPL or the Elastic License. Additional free features are available under the Elastic License, and paid subscriptions provide access to support as well as advanced features such as alerting and machine learning.

Is Elasticsearch basic free?

Our products can be used at no cost. Our users can get started — or even build an entire solution — without ever having to pay for anything.


1 Answers

I doubt that anyone has - last time I checked there were none and for good reasons. Keep in mind that in order to allow an IOS client (or Android for that matter) to use a client library to connect to Elasticsearch you'd have to open up your cluster for either an http or node access - which would allow anyone to do anything to your cluster.

Maybe you could proxy it to prevent deletions and insertions but even so it would open up your cluster's data and open you up to DoS attacks.

Generally a better idea is to create your own REST API that incorporates some type of authentication and authorization and does not open up your cluster to the world.

If you still feel strongly about moving forward you can always just hit the http interface of the REST API for ES. Or take a look at this project someone was working on a few years ago at least to give you a head start:

https://github.com/tallpsmith/ElasticSearchIOSHead

Some recent discussions on this topic:

http://elasticsearch-users.115913.n3.nabble.com/Objective-C-client-for-ElasticSearch-iphone-ipad-etc-td3911216.html

Running Elasticsearch server on a mobile device (android / iphone / ios)

like image 116
John Petrone Avatar answered Sep 30 '22 12:09

John Petrone