I'm using elastic search 2.2.3 As described here:
If you’re using Java, the Transport client should be chosen over the Node client unless the performance gain from using a Node client turns out to be large enough to warrant the additional network complexity. Use benchmarks to verify the performance gains.
https://www.elastic.co/blog/found-interfacing-elasticsearch-picking-client
I heard that on version 5.0 the native client will be dismessd? Is it true? Which is the best integration client in java? (rest http or native?)