ES: Ways to work with frequently updated fields of document

I have forum. And every topic has such field as viewCount - how many times topic was viewed by forum users.

I wanted that all fields of topics were taken from ES (id,date,title,content and viewCount). However, this case after every topic view ES must reindex entire document again - I asked the question about particial update at stack - http://stackoverflow.com/questions/28937946/partial-update-on-field-that-is-not-indexed .

It means that if topic is viewed 1000 times ES will index it 1000 times. And if I have a lot of users many documents will be indexed again and again. This is first strategy.

The second strategy, as I think is to take some fields of topic from index and some from database. At this case I take viewAcount from DB. However, then I can store all fields in DB and use index only as INDEX - to get ids of current topic.

Are there better strategies? What is the best way to solve such problem?

--
Александр Свиридов

--
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.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/1427218099.583181766%40f355.i.mail.ru.
For more options, visit https://groups.google.com/d/optout.

Best best is to try to separate hot and cold/warm data so you are only
updating things which need to be updated.
It may make sense to split this out into different systems, but this is
really up to you.

On 25 March 2015 at 04:28, Александр Свиридов ooo_saturn7@mail.ru wrote:

I have forum. And every topic has such field as viewCount - how many times
topic was viewed by forum users.

I wanted that all fields of topics were taken from ES
(id,date,title,content and viewCount). However, this case after every topic
view ES must reindex entire document again - I asked the question about
particial update at stack -
java - Partial update on field that is not indexed - Stack Overflow
.

It means that if topic is viewed 1000 times ES will index it 1000 times.
And if I have a lot of users many documents will be indexed again and
again. This is first strategy.

The second strategy, as I think is to take some fields of topic from index
and some from database. At this case I take viewAcount from DB. However,
then I can store all fields in DB and use index only as INDEX - to get ids
of current topic.

Are there better strategies? What is the best way to solve such problem?

--
Александр Свиридов

--
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.
To view this discussion on the web visit
https://groups.google.com/d/msgid/elasticsearch/1427218099.583181766%40f355.i.mail.ru
https://groups.google.com/d/msgid/elasticsearch/1427218099.583181766%40f355.i.mail.ru?utm_medium=email&utm_source=footer
.
For more options, visit https://groups.google.com/d/optout.

--
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.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/CAEYi1X9P6L49jbDpOccA_z-ckKVFjz1o%2BXWWttN%2BYneL0YBfDg%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.

By different systems do you mean database, ES etc?

Среда, 25 марта 2015, 8:32 +11:00 от Mark Walkom markwalkom@gmail.com:

Best best is to try to separate hot and cold/warm data so you are only updating things which need to be updated.
It may make sense to split this out into different systems, but this is really up to you.

On 25 March 2015 at 04:28, Александр Свиридов < ooo_saturn7@mail.ru > wrote:

I have forum. And every topic has such field as viewCount - how many times topic was viewed by forum users.

I wanted that all fields of topics were taken from ES (id,date,title,content and viewCount). However, this case after every topic view ES must reindex entire document again - I asked the question about particial update at stack - java - Partial update on field that is not indexed - Stack Overflow .

It means that if topic is viewed 1000 times ES will index it 1000 times. And if I have a lot of users many documents will be indexed again and again. This is first strategy.

The second strategy, as I think is to take some fields of topic from index and some from database. At this case I take viewAcount from DB. However, then I can store all fields in DB and use index only as INDEX - to get ids of current topic.

Are there better strategies? What is the best way to solve such problem?

--
Александр Свиридов

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 .
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/1427218099.583181766%40f355.i.mail.ru .
For more options, visit https://groups.google.com/d/optout .

--
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 .
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/CAEYi1X9P6L49jbDpOccA_z-ckKVFjz1o%2BXWWttN%2BYneL0YBfDg%40mail.gmail.com .
For more options, visit https://groups.google.com/d/optout .

--
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.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/1427261899.358293155%40f317.i.mail.ru.
For more options, visit https://groups.google.com/d/optout.

Yes that is what I mean.

On 25 March 2015 at 16:38, Александр Свиридов ooo_saturn7@mail.ru wrote:

By different systems do you mean database, ES etc?

Среда, 25 марта 2015, 8:32 +11:00 от Mark Walkom markwalkom@gmail.com:

Best best is to try to separate hot and cold/warm data so you are only
updating things which need to be updated.
It may make sense to split this out into different systems, but this is
really up to you.

On 25 March 2015 at 04:28, Александр Свиридов <ooo_saturn7@mail.ru
https://e.mail.ru/compose/?mailto=mailto%3Aooo_saturn7@mail.ru> wrote:

I have forum. And every topic has such field as viewCount - how many times
topic was viewed by forum users.

I wanted that all fields of topics were taken from ES
(id,date,title,content and viewCount). However, this case after every topic
view ES must reindex entire document again - I asked the question about
particial update at stack -
java - Partial update on field that is not indexed - Stack Overflow
.

It means that if topic is viewed 1000 times ES will index it 1000 times.
And if I have a lot of users many documents will be indexed again and
again. This is first strategy.

The second strategy, as I think is to take some fields of topic from index
and some from database. At this case I take viewAcount from DB. However,
then I can store all fields in DB and use index only as INDEX - to get ids
of current topic.

Are there better strategies? What is the best way to solve such problem?

--
Александр Свиридов

--
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
https://e.mail.ru/compose/?mailto=mailto%3Aelasticsearch%2Bunsubscribe@googlegroups.com
.
To view this discussion on the web visit
https://groups.google.com/d/msgid/elasticsearch/1427218099.583181766%40f355.i.mail.ru
https://groups.google.com/d/msgid/elasticsearch/1427218099.583181766%40f355.i.mail.ru?utm_medium=email&utm_source=footer
.
For more options, visit https://groups.google.com/d/optout.

--
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
https://e.mail.ru/compose/?mailto=mailto%3Aelasticsearch%2Bunsubscribe@googlegroups.com
.
To view this discussion on the web visit
https://groups.google.com/d/msgid/elasticsearch/CAEYi1X9P6L49jbDpOccA_z-ckKVFjz1o%2BXWWttN%2BYneL0YBfDg%40mail.gmail.com
https://groups.google.com/d/msgid/elasticsearch/CAEYi1X9P6L49jbDpOccA_z-ckKVFjz1o%2BXWWttN%2BYneL0YBfDg%40mail.gmail.com?utm_medium=email&utm_source=footer
.
For more options, visit https://groups.google.com/d/optout.

--
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.
To view this discussion on the web visit
https://groups.google.com/d/msgid/elasticsearch/1427261899.358293155%40f317.i.mail.ru
https://groups.google.com/d/msgid/elasticsearch/1427261899.358293155%40f317.i.mail.ru?utm_medium=email&utm_source=footer
.
For more options, visit https://groups.google.com/d/optout.

--
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.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/CAEYi1X-iBdkCN-Gy%3D0%3DSWizTPyccSWp6PTEn32ju6jrTJwmP%3Dw%40mail.gmail.com.
For more options, visit https://groups.google.com/d/optout.