Stripped down elasticsearch client jar


(Thiago Souza) #1

Hi Shay,

  Currently, the elasticsearch jar is ~11MB and I don't believe that

everything is necessary if using it for a stateless client.
If this is true, you would mind creating an stripped down
elasticsearch-client jar?

Regards,
Thiago Souza


(Shay Banon) #2

When using transport client, then yes, it could be stripped, but its going to involve a lot of effort (and not sure how much it will save), so its not planned.
On Monday, April 11, 2011 at 8:57 PM, Thiago Souza wrote:

Hi Shay,

Currently, the elasticsearch jar is ~11MB and I don't believe that everything is necessary if using it for a stateless client.
If this is true, you would mind creating an stripped down elasticsearch-client jar?

Regards,
Thiago Souza


(Thiago Souza) #3

Ok, thanks...

On Mon, Apr 11, 2011 at 15:02, Shay Banon shay.banon@elasticsearch.comwrote:

When using transport client, then yes, it could be stripped, but its
going to involve a lot of effort (and not sure how much it will save), so
its not planned.

On Monday, April 11, 2011 at 8:57 PM, Thiago Souza wrote:

Hi Shay,

  Currently, the elasticsearch jar is ~11MB and I don't believe that

everything is necessary if using it for a stateless client.
If this is true, you would mind creating an stripped down
elasticsearch-client jar?

Regards,
Thiago Souza


(Barsk) #4
Hi,




I understand the implications of isolating the client stuff in its
own distro. But it would be quite nice if it could be done
nevertheless.


I use the client in a servlet container for a webapp and it gets
rather messy to update a webapp to the lastest ES version since
there are quite a few supporting jars that need to go in there to.
Some of these jars are version-colliding with some of the jars I
have put in so I end up having to upgrade my webapp stuff with new
versions of the supporting jars (like logging etc etc). I even end
up with Lucene jars in my webapp and that seems over the edge for a
client.




I guees some of these "supporting" jars are not really needed for
the client, and this complexity could be reduced if there was a
separate client distro.


I use the native client, not the transport one.




/Kristian




Shay Banon skrev 2011-04-11 20:02:
<blockquote cite="mid:05F0850FF27F41D0B23FEE57C5F57237@elasticsearch.com" type="cite">When using transport client, then yes, it could be
        stripped, but its going to involve a lot of effort (and not
        sure how much it will save), so its not planned.

On Monday, April 11, 2011 at 8:57 PM, Thiago Souza wrote:

Hi Shay,

   Currently, the elasticsearch jar is ~11MB
and I don't believe that everything is necessary if
using it for a stateless client.   If this is true, you would mind creating an
stripped down elasticsearch-client jar?

Regards,Thiago Souza


(Shay Banon) #5

Which supporting jars do you need for elasticsearch? Aside from the Lucene jars, which are needed only when using the NodeClient and not TransportClient, elasticsearch has no dependencies (the ones it uses are jarjar'ed into elasticsearch, like guice, jackson, and netty).
On Tuesday, April 12, 2011 at 12:43 PM, Kristian Jörg wrote:

Hi,

I understand the implications of isolating the client stuff in its own distro. But it would be quite nice if it could be done nevertheless.
I use the client in a servlet container for a webapp and it gets rather messy to update a webapp to the lastest ES version since there are quite a few supporting jars that need to go in there to. Some of these jars are version-colliding with some of the jars I have put in so I end up having to upgrade my webapp stuff with new versions of the supporting jars (like logging etc etc). I even end up with Lucene jars in my webapp and that seems over the edge for a client.

I guees some of these "supporting" jars are not really needed for the client, and this complexity could be reduced if there was a separate client distro.
I use the native client, not the transport one.

/Kristian

Shay Banon skrev 2011-04-11 20:02:

When using transport client, then yes, it could be stripped, but its going to involve a lot of effort (and not sure how much it will save), so its not planned.
On Monday, April 11, 2011 at 8:57 PM, Thiago Souza wrote:

Hi Shay,

Currently, the elasticsearch jar is ~11MB and I don't believe that everything is necessary if using it for a stateless client.
If this is true, you would mind creating an stripped down elasticsearch-client jar?

Regards,
Thiago Souza


(Barsk) #6
Well, that was the problem. I did not know which to use and which
not to. My first tries failed, so to avoid a long trial-and-error I
threw them all in.


This is where improvements could be done. If all that is needed for
the NodeClient is the easticsearch jar and the lucene jars, then a
simple doc entry for that would help a lot. Mayby it is there, but
it eluded me at least.




Another question, if using only one instance of ES on localhost. Are
there any drawbacks of using TransportClient? There was this mention
of a double hop that I wanted to avoid. But maybe I can simplify my
client setup...




Shay Banon skrev 2011-04-12 11:45:
<blockquote cite="mid:6A4467D02FD34705AF013DC7CA4C5340@elasticsearch.com" type="cite">Which supporting jars do you need for
        elasticsearch? Aside from the Lucene jars, which are needed
        only when using the NodeClient and not TransportClient,
        elasticsearch has no dependencies (the ones it uses are
        jarjar'ed into elasticsearch, like guice, jackson, and
        netty).

On Tuesday, April 12, 2011 at 12:43 PM, Kristian Jörg wrote:

Hi,
              I understand the implications of isolating the client
              stuff in its own distro. But it would be quite nice if
              it could be done nevertheless.


              I use the client in a servlet container for a webapp
              and it gets rather messy to update a webapp to the
              lastest ES version since there are quite a few
              supporting jars that need to go in there to. Some of
              these jars are version-colliding with some of the jars
              I have put in so I end up having to upgrade my webapp
              stuff with new versions of the supporting jars (like
              logging etc etc). I even end up with Lucene jars in my
              webapp and that seems over the edge for a client.




              I guees some of these "supporting" jars are not really
              needed for the client, and this complexity could be
              reduced if there was a separate client distro.


              I use the native client, not the transport one.




              /Kristian




              Shay Banon skrev 2011-04-11 20:02:
              <blockquote type="cite">When using transport client, then
                        yes, it could be stripped, but its going to
                        involve a lot of effort (and not sure how
                        much it will save), so its not planned.

On Monday, April 11, 2011 at 8:57 PM, Thiago Souza wrote:

Hi Shay,

   Currently, the
elasticsearch jar is ~11MB and I
don't believe that everything is
necessary if using it for a
stateless client.   If this is true, you
would mind creating an stripped
down elasticsearch-client jar?

Regards,Thiago Souza

-- 
Med vänlig hälsning
Kristian Jörg

Devo IT AB
Tel: 054 - 22 14 58, 0709 - 15 83 42
E-post: kristian.jorg@devo.se
Webb: http://www.devo.se

(Shay Banon) #7

Its not doc'ed except for the maven pom definition, seems like most people use maven these days, no?
On Tuesday, April 12, 2011 at 4:06 PM, Kristian Jörg wrote:

Well, that was the problem. I did not know which to use and which not to. My first tries failed, so to avoid a long trial-and-error I threw them all in.
This is where improvements could be done. If all that is needed for the NodeClient is the easticsearch jar and the lucene jars, then a simple doc entry for that would help a lot. Mayby it is there, but it eluded me at least.

Another question, if using only one instance of ES on localhost. Are there any drawbacks of using TransportClient? There was this mention of a double hop that I wanted to avoid. But maybe I can simplify my client setup...

Shay Banon skrev 2011-04-12 11:45:

Which supporting jars do you need for elasticsearch? Aside from the Lucene jars, which are needed only when using the NodeClient and not TransportClient, elasticsearch has no dependencies (the ones it uses are jarjar'ed into elasticsearch, like guice, jackson, and netty).
On Tuesday, April 12, 2011 at 12:43 PM, Kristian Jörg wrote:

Hi,

I understand the implications of isolating the client stuff in its own distro. But it would be quite nice if it could be done nevertheless.
I use the client in a servlet container for a webapp and it gets rather messy to update a webapp to the lastest ES version since there are quite a few supporting jars that need to go in there to. Some of these jars are version-colliding with some of the jars I have put in so I end up having to upgrade my webapp stuff with new versions of the supporting jars (like logging etc etc). I even end up with Lucene jars in my webapp and that seems over the edge for a client.

I guees some of these "supporting" jars are not really needed for the client, and this complexity could be reduced if there was a separate client distro.
I use the native client, not the transport one.

/Kristian

Shay Banon skrev 2011-04-11 20:02:

When using transport client, then yes, it could be stripped, but its going to involve a lot of effort (and not sure how much it will save), so its not planned.
On Monday, April 11, 2011 at 8:57 PM, Thiago Souza wrote:

Hi Shay,

Currently, the elasticsearch jar is ~11MB and I don't believe that everything is necessary if using it for a stateless client.
If this is true, you would mind creating an stripped down elasticsearch-client jar?

Regards,
Thiago Souza

-- Med vänlig hälsning Kristian Jörg Devo IT AB Tel: 054 - 22 14 58, 0709 - 15 83 42 E-post: kristian.jorg@devo.se Webb: http://www.devo.se


(Barsk) #8
Shay Banon skrev 2011-04-12 15:17:
<blockquote cite="mid:8453BB90E2984323918717876DF6BBA2@elasticsearch.com" type="cite">Its not doc'ed except for the maven pom definition,
        seems like most people use maven these days, no?
Well, no. I am on my way there, but not there yet.
And there are so many other build methods available so I think that
expecting all users to use a specific build tool is incorrect.

On Tuesday, April 12, 2011 at 4:06 PM, Kristian Jörg wrote:

Well, that was the problem. I did not know which to use and which not to. My first tries failed, so to avoid a long trial-and-error I threw them all in.
              This is where improvements could be done. If all that
              is needed for the NodeClient is the easticsearch jar
              and the lucene jars, then a simple doc entry for that
              would help a lot. Mayby it is there, but it eluded me
              at least.




              Another question, if using only one instance of ES on
              localhost. Are there any drawbacks of using
              TransportClient? There was this mention of a double
              hop that I wanted to avoid. But maybe I can simplify
              my client setup...




              Shay Banon skrev 2011-04-12 11:45:
              <blockquote type="cite">Which supporting jars do you need
                        for elasticsearch? Aside from the Lucene
                        jars, which are needed only when using the
                        NodeClient and not TransportClient,
                        elasticsearch has no dependencies (the ones
                        it uses are jarjar'ed into elasticsearch,
                        like guice, jackson, and netty).

On Tuesday, April 12, 2011 at 12:43 PM, Kristian Jörg wrote:

Hi,
                                I understand the implications of
                                isolating the client stuff in its
                                own distro. But it would be quite
                                nice if it could be done
                                nevertheless.


                                I use the client in a servlet
                                container for a webapp and it gets
                                rather messy to update a webapp to
                                the lastest ES version since there
                                are quite a few supporting jars that
                                need to go in there to. Some of
                                these jars are version-colliding
                                with some of the jars I have put in
                                so I end up having to upgrade my
                                webapp stuff with new versions of
                                the supporting jars (like logging
                                etc etc). I even end up with Lucene
                                jars in my webapp and that seems
                                over the edge for a client.




                                I guees some of these "supporting"
                                jars are not really needed for the
                                client, and this complexity could be
                                reduced if there was a separate
                                client distro.


                                I use the native client, not the
                                transport one.




                                /Kristian




                                Shay Banon skrev 2011-04-11 20:02:
                                <blockquote type="cite">When using
                                            transport client, then
                                            yes, it could be
                                            stripped, but its going
                                            to involve a lot of
                                            effort (and not sure how
                                            much it will save), so
                                            its not planned.

On Monday, April 11, 2011 at 8:57 PM, Thiago Souza wrote:

Hi Shay,

  Â
Currently, the
elasticsearch
jar is ~11MB
and I don't
believe that
everything is
necessary if
using it for a
stateless
client.   If
this is true,
you would mind
creating an
stripped down
elasticsearch-client
jar?

Regards,Thiago
Souza

-- 
Med vänlig hälsning
Kristian Jörg

Devo IT AB
Tel: 054 - 22 14 58, 0709 - 15 83 42
E-post: kristian.jorg@devo.se
Webb: http://www.devo.se
-- 
Med vänlig hälsning
Kristian Jörg

Devo IT AB
Tel: 054 - 22 14 58, 0709 - 15 83 42
E-post: kristian.jorg@devo.se
Webb: http://www.devo.se

(Shay Banon) #9

ok, no problem to doc it.
On Wednesday, April 13, 2011 at 11:11 AM, Kristian Jörg wrote:

Shay Banon skrev 2011-04-12 15:17:

Its not doc'ed except for the maven pom definition, seems like most people use maven these days, no?
Well, no. I am on my way there, but not there yet.
And there are so many other build methods available so I think that expecting all users to use a specific build tool is incorrect.
On Tuesday, April 12, 2011 at 4:06 PM, Kristian Jörg wrote:

Well, that was the problem. I did not know which to use and which not to. My first tries failed, so to avoid a long trial-and-error I threw them all in.
This is where improvements could be done. If all that is needed for the NodeClient is the easticsearch jar and the lucene jars, then a simple doc entry for that would help a lot. Mayby it is there, but it eluded me at least.

Another question, if using only one instance of ES on localhost. Are there any drawbacks of using TransportClient? There was this mention of a double hop that I wanted to avoid. But maybe I can simplify my client setup...

Shay Banon skrev 2011-04-12 11:45:

Which supporting jars do you need for elasticsearch? Aside from the Lucene jars, which are needed only when using the NodeClient and not TransportClient, elasticsearch has no dependencies (the ones it uses are jarjar'ed into elasticsearch, like guice, jackson, and netty).
On Tuesday, April 12, 2011 at 12:43 PM, Kristian Jörg wrote:

Hi,

I understand the implications of isolating the client stuff in its own distro. But it would be quite nice if it could be done nevertheless.
I use the client in a servlet container for a webapp and it gets rather messy to update a webapp to the lastest ES version since there are quite a few supporting jars that need to go in there to. Some of these jars are version-colliding with some of the jars I have put in so I end up having to upgrade my webapp stuff with new versions of the supporting jars (like logging etc etc). I even end up with Lucene jars in my webapp and that seems over the edge for a client.

I guees some of these "supporting" jars are not really needed for the client, and this complexity could be reduced if there was a separate client distro.
I use the native client, not the transport one.

/Kristian

Shay Banon skrev 2011-04-11 20:02:

When using transport client, then yes, it could be stripped, but its going to involve a lot of effort (and not sure how much it will save), so its not planned.
On Monday, April 11, 2011 at 8:57 PM, Thiago Souza wrote:

Hi Shay,

Currently, the elasticsearch jar is ~11MB and I don't believe that everything is necessary if using it for a stateless client.
If this is true, you would mind creating an stripped down elasticsearch-client jar?

Regards,
Thiago Souza

-- Med vänlig hälsning Kristian Jörg Devo IT AB Tel: 054 - 22 14 58, 0709 - 15 83 42 E-post: kristian.jorg@devo.se Webb: http://www.devo.se

-- Med vänlig hälsning Kristian Jörg Devo IT AB Tel: 054 - 22 14 58, 0709 - 15 83 42 E-post: kristian.jorg@devo.se Webb: http://www.devo.se


(Barsk) #10
Much appreciated!




Shay Banon skrev 2011-04-13 10:12:
<blockquote cite="mid:7B5A489532AC4F458E7186EE7DAA4695@elasticsearch.com" type="cite">
ok, no problem to doc it.

On Wednesday, April 13, 2011 at 11:11 AM, Kristian Jörg wrote:

Shay Banon skrev 2011-04-12 15:17:
Its not doc'ed except for the maven pom definition, seems like most people use maven these days, no?
Well, no. I am on my way there, but not there yet.
              And there are so many other build methods available so
              I think that expecting all users to use a specific
              build tool is incorrect.

On Tuesday, April 12, 2011 at 4:06 PM, Kristian Jörg wrote:

Well, that was the problem. I did not know which to use and which not to. My first tries failed, so to avoid a long trial-and-error I threw them all in.
                                This is where improvements could be
                                done. If all that is needed for the
                                NodeClient is the easticsearch jar
                                and the lucene jars, then a simple
                                doc entry for that would help a lot.
                                Mayby it is there, but it eluded me
                                at least.




                                Another question, if using only one
                                instance of ES on localhost. Are
                                there any drawbacks of using
                                TransportClient? There was this
                                mention of a double hop that I
                                wanted to avoid. But maybe I can
                                simplify my client setup...




                                Shay Banon skrev 2011-04-12 11:45:
                                <blockquote type="cite">Which
                                            supporting jars do you
                                            need for elasticsearch?
                                            Aside from the Lucene
                                            jars, which are needed
                                            only when using the
                                            NodeClient and not
                                            TransportClient,
                                            elasticsearch has no
                                            dependencies (the ones
                                            it uses are jarjar'ed
                                            into elasticsearch, like
                                            guice, jackson, and
                                            netty).

On Tuesday, April 12, 2011 at 12:43 PM, Kristian Jörg wrote:

Hi,
                                                      I understand
                                                      the
                                                      implications
                                                      of isolating
                                                      the client
                                                      stuff in its
                                                      own distro.
                                                      But it would
                                                      be quite nice
                                                      if it could be
                                                      done
                                                      nevertheless.


                                                      I use the
                                                      client in a
                                                      servlet
                                                      container for
                                                      a webapp and
                                                      it gets rather
                                                      messy to
                                                      update a
                                                      webapp to the
                                                      lastest ES
                                                      version since
                                                      there are
                                                      quite a few
                                                      supporting
                                                      jars that need
                                                      to go in there
                                                      to. Some of
                                                      these jars are
                                                      version-colliding

                                                      with some of
                                                      the jars I
                                                      have put in so
                                                      I end up
                                                      having to
                                                      upgrade my
                                                      webapp stuff
                                                      with new
                                                      versions of
                                                      the supporting
                                                      jars (like
                                                      logging etc
                                                      etc). I even
                                                      end up with
                                                      Lucene jars in
                                                      my webapp and
                                                      that seems
                                                      over the edge
                                                      for a client.




                                                      I guees some
                                                      of these
                                                      "supporting"
                                                      jars are not
                                                      really needed
                                                      for the
                                                      client, and
                                                      this
                                                      complexity
                                                      could be
                                                      reduced if
                                                      there was a
                                                      separate
                                                      client distro.


                                                      I use the
                                                      native client,
                                                      not the
                                                      transport one.




                                                      /Kristian




                                                      Shay Banon
                                                      skrev
                                                      2011-04-11
                                                      20:02:
                                                      <blockquote type="cite">When
                                                      using
                                                      transport
                                                      client, then
                                                      yes, it could
                                                      be stripped,
                                                      but its going
                                                      to involve a
                                                      lot of effort
                                                      (and not sure
                                                      how much it
                                                      will save), so
                                                      its not
                                                      planned.

On Monday, April 11, 2011 at 8:57 PM, Thiago Souza wrote:

Hi Shay,

  Â
Currently, the
elasticsearch
jar is ~11MB
and I don't
believe that
everything is
necessary if
using it for a
stateless
client.   If
this is true,
you would mind
creating an
stripped down
elasticsearch-client

                                                      jar?

Regards,Thiago
Souza

-- 
Med vänlig hälsning
Kristian Jörg

Devo IT AB
Tel: 054 - 22 14 58, 0709 - 15 83 42
E-post: kristian.jorg@devo.se
Webb: http://www.devo.se
-- 
Med vänlig hälsning
Kristian Jörg

Devo IT AB
Tel: 054 - 22 14 58, 0709 - 15 83 42
E-post: kristian.jorg@devo.se
Webb: http://www.devo.se
-- 
Med vänlig hälsning
Kristian Jörg

Devo IT AB
Tel: 054 - 22 14 58, 0709 - 15 83 42
E-post: kristian.jorg@devo.se
Webb: http://www.devo.se

(system) #11