How to avoid join queries

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

How to avoid join queries

root23
Hi all,
I have a following use case.
lets say my document is like this.
doc={
          name:abc,
          status:def,
          store_id:store_1
          parent:nike
}

Now lets say in our use case at some point of time store_1 moved under a
different parent. lets say adidas.
Our business use case we want to move all the existing documents also to the
new parent. So the parent should see all the documents even which are
inserted when the store_1 was under parent: nike.

How do we do this ?

These are the two approaches which i explored.

1. write parent field as part of the document (as shown above) and if the
parent is changed update all the documents with the new parent.

2. separate the parent outside of this document to a different core which
maintains the relationship between a store and its parent. And then on query
time join these two cores to get the desired result.


option 1 is  not feasible as this might require updating millions of
records.  So we are mostly leading towards the second option of join. But i
know use of join is discouraged in solr and i do not want to use it. But i
am not able to figure out a way around this.

If someone else has another idea to model it differently so that we can
avoid joins ,please enlighten me.

Thanks !!!



--
Sent from: http://lucene.472066.n3.nabble.com/Solr-User-f472068.html
Reply | Threaded
Open this post in threaded view
|

Re: How to avoid join queries

Erik Hatcher-4


> On Jun 13, 2018, at 4:24 PM, root23 <[hidden email]> wrote:

...

>  But i
> know use of join is discouraged in solr and i do not want to use it.



Why do you say that?   I, for one, find great power and joy using `{!join}`.

        Erik