# Perl API for ElasticSearch

**URL:** <https://discuss.elastic.co/t/perl-api-for-elasticsearch/2813>\
**Category:** Elasticsearch\
**Created:** [February 15, 2010, 7:25pm UTC](https://discuss.elastic.co/t/perl-api-for-elasticsearch/2813 "2010-02-15T19:25:56Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![Clinton\_Gormley](https://avatars.discourse-cdn.com/v4/letter/c/50afbb/32.png) [@Clinton\_Gormley](https://discuss.elastic.co/u/Clinton_Gormley)\
**Post date:** [February 15, 2010, 7:25pm UTC](https://discuss.elastic.co/t/perl-api-for-elasticsearch/2813/1 "2010-02-15T19:25:56Z")

</div>

Hiya

I've just released a Perl API for ElasticSearch which can be found  
here: [http://search.cpan.org/~drtech/ElasticSearch-0.01/](http://search.cpan.org/~drtech/ElasticSearch-0.01/)

I've tried to make the interface pretty similar to the existing JSON  
API - feedback welcome.

One nice thing that ElasticSearch.pm does is to retrieve a list of all  
available nodes in the ElasticSearch cluster, and tries to spread the  
load across nodes automatically.

Also, if the current node disappears, then it tries to connect to the  
other nodes that it knows about. Only if no other nodes are available  
does it fail.

Blog post about it here: [http://blogs.perl.org/users/clinton\_gormley/2010/02/perl-api-for-elasticsearch.html](http://blogs.perl.org/users/clinton_gormley/2010/02/perl-api-for-elasticsearch.html)

I'd especially welcome feedback about the search() interface - just  
after releasing it, i saw some docs about facets, which I don't think  
my current API supports.

I've never used Lucene, so some practical examples of typical queries  
would be handy

thanks

Clint

---

<div class="post-metadata">

**Author:** ![kimchy](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/kimchy/32/44952_2.png) [@kimchy](https://discuss.elastic.co/u/kimchy)\
**Post date:** [February 15, 2010, 7:45pm UTC](https://discuss.elastic.co/t/perl-api-for-elasticsearch/2813/2 "2010-02-15T19:45:55Z")

</div>

Great job Clinton! I'll be honest here, the Perl code always managed to look  
cryptic to me, but its just great!. I am adding more APIs as I speak to  
#elasticsearch, so the fun never stops 🙂

-shay.banon

On Mon, Feb 15, 2010 at 9:25 PM, Clinton [clinton@iannounce.co.uk](mailto:clinton@iannounce.co.uk) wrote:

> Hiya
> 
> I've just released a Perl API for Elasticsearch which can be found  
> here: [ElasticSearch-0.01 - An API for communicating with ElasticSearch - metacpan.org](http://search.cpan.org/~drtech/ElasticSearch-0.01/)
> 
> I've tried to make the interface pretty similar to the existing JSON  
> API - feedback welcome.
> 
> One nice thing that Elasticsearch.pm does is to retrieve a list of all  
> available nodes in the Elasticsearch cluster, and tries to spread the  
> load across nodes automatically.
> 
> Also, if the current node disappears, then it tries to connect to the  
> other nodes that it knows about. Only if no other nodes are available  
> does it fail.
> 
> Blog post about it here:  
> [Perl API for ElasticSearch | Clinton Gormley [blogs.perl.org]](http://blogs.perl.org/users/clinton_gormley/2010/02/perl-api-for-elasticsearch.html)
> 
> I'd especially welcome feedback about the search() interface - just  
> after releasing it, i saw some docs about facets, which I don't think  
> my current API supports.
> 
> I've never used Lucene, so some practical examples of typical queries  
> would be handy
> 
> thanks
> 
> Clint

---

<div class="post-metadata">

**Author:** ![Clinton\_Gormley](https://avatars.discourse-cdn.com/v4/letter/c/50afbb/32.png) [@Clinton\_Gormley](https://discuss.elastic.co/u/Clinton_Gormley)\
**Post date:** [February 15, 2010, 7:57pm UTC](https://discuss.elastic.co/t/perl-api-for-elasticsearch/2813/3 "2010-02-15T19:57:18Z")

</div>

On Mon, 2010-02-15 at 21:45 +0200, Shay Banon wrote:

> Great job Clinton! I'll be honest here, the Perl code always managed  
> to look cryptic to me, but its just great!. I am adding more APIs as I  
> speak to #elasticsearch, so the fun never stops 🙂

What's the best way to keep up to date with the changes that you add to  
trunk? I'm following your git repo, but what about an announcements  
mailing list?

Speaking of github, I've put Elasticsearch.pm there as well:

> **[GitHub - clintongormley/elasticsearch: Open Source, Distributed, RESTful...](https://github.com/clintongormley/ElasticSearch)**
>
> Open Source, Distributed, RESTful Search Engine. Contribute to clintongormley/elasticsearch development by creating an account on GitHub.

clint

> 

--  
Web Announcements Limited is a company registered in England and Wales,  
with company number 05608868, with registered address at 10 Arvon Road,  
London, N5 1PR.

---

<div class="post-metadata">

**Author:** ![kimchy](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/kimchy/32/44952_2.png) [@kimchy](https://discuss.elastic.co/u/kimchy)\
**Post date:** [February 15, 2010, 8:02pm UTC](https://discuss.elastic.co/t/perl-api-for-elasticsearch/2813/4 "2010-02-15T20:02:02Z")

</div>

All changes that users need to know about will be raised as issues so all  
you need is follow the issues. Regarding the github repo, great, its much  
easier with git :), but, I have a personal request, if you don't mind. Is  
there a chance that you can change the name? People will get confused with  
Elasticsearch (the repo and user) and your Elasticsearch I think. We need to  
come up with good client names for elasticsearch, something like: perles  
(the web 2.0 name, pearls, just without the a and add an e 🙂 ). Someone on  
the userlist has an idea?

-shay.banon

On Mon, Feb 15, 2010 at 9:57 PM, Clinton Gormley [clinton@iannounce.co.uk](mailto:clinton@iannounce.co.uk)wrote:

> On Mon, 2010-02-15 at 21:45 +0200, Shay Banon wrote:
> 
> > Great job Clinton! I'll be honest here, the Perl code always managed  
> > to look cryptic to me, but its just great!. I am adding more APIs as I  
> > speak to #elasticsearch, so the fun never stops 🙂
> 
> What's the best way to keep up to date with the changes that you add to  
> trunk? I'm following your git repo, but what about an announcements  
> mailing list?
> 
> Speaking of github, I've put Elasticsearch.pm there as well:
> 
> [http://github.com/clintongormley/ElasticSearch](http://github.com/clintongormley/ElasticSearch)
> 
> clint
> 
> > 
> 
> --  
> Web Announcements Limited is a company registered in England and Wales,  
> with company number 05608868, with registered address at 10 Arvon Road,  
> London, N5 1PR.

---

<div class="post-metadata">

**Author:** ![Lukas\_Vlcek1](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/lukas_vlcek1/32/819_2.png) [@Lukas\_Vlcek1](https://discuss.elastic.co/u/Lukas_Vlcek1)\
**Post date:** [February 15, 2010, 8:15pm UTC](https://discuss.elastic.co/t/perl-api-for-elasticsearch/2813/5 "2010-02-15T20:15:17Z")

</div>

Perles makes it for a nice name. And how about Esperlanto ?

es - that is clear, perl - as well, anto - just a suffix to make it sound  
like esperanto. If you put perl next to esperanto then you have interesting  
analogy. Both languages are universal and hardly readable 🙂

Disclaimer: I have high respect for anybody who can speak/read any of the  
mentioned languages!

Rgds,  
Lukas

On Mon, Feb 15, 2010 at 9:02 PM, Shay Banon [shay.banon@elasticsearch.com](mailto:shay.banon@elasticsearch.com)wrote:

> All changes that users need to know about will be raised as issues so all  
> you need is follow the issues. Regarding the github repo, great, its much  
> easier with git :), but, I have a personal request, if you don't mind. Is  
> there a chance that you can change the name? People will get confused with  
> Elasticsearch (the repo and user) and your Elasticsearch I think. We need to  
> come up with good client names for elasticsearch, something like: perles  
> (the web 2.0 name, pearls, just without the a and add an e 🙂 ). Someone on  
> the userlist has an idea?
> 
> -shay.banon
> 
> On Mon, Feb 15, 2010 at 9:57 PM, Clinton Gormley [clinton@iannounce.co.uk](mailto:clinton@iannounce.co.uk)wrote:
> 
> > On Mon, 2010-02-15 at 21:45 +0200, Shay Banon wrote:
> > 
> > > Great job Clinton! I'll be honest here, the Perl code always managed  
> > > to look cryptic to me, but its just great!. I am adding more APIs as I  
> > > speak to #elasticsearch, so the fun never stops 🙂
> > 
> > What's the best way to keep up to date with the changes that you add to  
> > trunk? I'm following your git repo, but what about an announcements  
> > mailing list?
> > 
> > Speaking of github, I've put Elasticsearch.pm there as well:
> > 
> > [GitHub - clintongormley/elasticsearch: Open Source, Distributed, RESTful Search Engine](http://github.com/clintongormley/ElasticSearch)
> > 
> > clint
> > 
> > > 
> > 
> > --  
> > Web Announcements Limited is a company registered in England and Wales,  
> > with company number 05608868, with registered address at 10 Arvon Road,  
> > London, N5 1PR.

---

<div class="post-metadata">

**Author:** ![Clinton\_Gormley](https://avatars.discourse-cdn.com/v4/letter/c/50afbb/32.png) [@Clinton\_Gormley](https://discuss.elastic.co/u/Clinton_Gormley)\
**Post date:** [February 15, 2010, 8:17pm UTC](https://discuss.elastic.co/t/perl-api-for-elasticsearch/2813/6 "2010-02-15T20:17:47Z")

</div>

On Mon, 2010-02-15 at 22:02 +0200, Shay Banon wrote:

> All changes that users need to know about will be raised as issues so  
> all you need is follow the issues. Regarding the github repo, great,  
> its much easier with git :), but, I have a personal request, if you  
> don't mind. Is there a chance that you can change the name? People  
> will get confused with Elasticsearch (the repo and user) and your  
> Elasticsearch I think.

Yeah - it's my first time using github, and originally I called it  
Elasticsearch.pm, but then changed it because it used that as a  
directory name. but actually shouldn't be an issue.

So, updated to: [http://github.com/clintongormley/ElasticSearch.pm](http://github.com/clintongormley/ElasticSearch.pm)

clint

> 

--  
Web Announcements Limited is a company registered in England and Wales,  
with company number 05608868, with registered address at 10 Arvon Road,  
London, N5 1PR.

---

<div class="post-metadata">

**Author:** ![Clinton\_Gormley](https://avatars.discourse-cdn.com/v4/letter/c/50afbb/32.png) [@Clinton\_Gormley](https://discuss.elastic.co/u/Clinton_Gormley)\
**Post date:** [February 15, 2010, 8:42pm UTC](https://discuss.elastic.co/t/perl-api-for-elasticsearch/2813/7 "2010-02-15T20:42:29Z")

</div>

On Mon, 2010-02-15 at 21:15 +0100, LukÃ¡Å¡ VlÄek wrote:

> Perles makes it for a nice name. And how about Esperlanto ?

> From a Perl user's point of view, those names don't mean much.  
> Elasticsearch.pm is recognisable to Perl'ers.
> 
> Both languages are universal and hardly readable 🙂

Harumph....

> Disclaimer: I have high respect for anybody who can speak/read any of  
> the mentioned languages!

JUST as well! 😉

--  
Web Announcements Limited is a company registered in England and Wales,  
with company number 05608868, with registered address at 10 Arvon Road,  
London, N5 1PR.

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [July 6, 2017, 4:25am UTC](https://discuss.elastic.co/t/perl-api-for-elasticsearch/2813/8 "2017-07-06T04:25:43Z")

</div>


