When is _source required?


(Ryan Pedela) #1

I know there are certain features that require _source to be enabled such
as highlighting. Is there a succinct list of features that require _source
to be enabled?

--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


(Luca Cavanna) #2

Hi,
the update upi needs it to allow to reindex documents giving as input only
a script or a partial document instead entire documents. In general, if you
disable _source you can never retrieve what you sent to elasticsearch
entirely, but only what you explictly configured as stored.

Other apis need it but can work around it if not available. For instance,
highlighting needs to retrieve what needs to be highlighted from lucene
stored fields, by default the _source one, but it can also be a specific
field that you explicitly configured as stored in your mapping. Same goes
for more like this.

Nothing else springs to mind right now but I might be missing some other
apis. Do take into account that the _source field is really convenient and
in a lot of cases even more performant than retrieving fields that are
explicitly stored in lucene, since that would require multiple disk seeks
(one per field potentially), while the _source is only one single field.

On Sunday, November 24, 2013 6:28:35 PM UTC+1, Ryan Pedela wrote:

I know there are certain features that require _source to be enabled such
as highlighting. Is there a succinct list of features that require _source
to be enabled?

--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


(Ryan Pedela) #3

So highlighting and the update API. Yeah that is all I came up with as well.

For my use case, storing the data is redundant but would be willing to do
it if a particular feature I need requires it.

On Monday, November 25, 2013 1:52:33 AM UTC-7, Luca Cavanna wrote:

Hi,
the update upi needs it to allow to reindex documents giving as input only
a script or a partial document instead entire documents. In general, if you
disable _source you can never retrieve what you sent to elasticsearch
entirely, but only what you explictly configured as stored.

Other apis need it but can work around it if not available. For instance,
highlighting needs to retrieve what needs to be highlighted from lucene
stored fields, by default the _source one, but it can also be a specific
field that you explicitly configured as stored in your mapping. Same goes
for more like this.

Nothing else springs to mind right now but I might be missing some other
apis. Do take into account that the _source field is really convenient and
in a lot of cases even more performant than retrieving fields that are
explicitly stored in lucene, since that would require multiple disk seeks
(one per field potentially), while the _source is only one single field.

On Sunday, November 24, 2013 6:28:35 PM UTC+1, Ryan Pedela wrote:

I know there are certain features that require _source to be enabled such
as highlighting. Is there a succinct list of features that require _source
to be enabled?

--
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscribe@googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.


(system) #4