[ 
https://issues.apache.org/jira/browse/SOLR-5320?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=13796585#comment-13796585
 ] 

Anshum Gupta commented on SOLR-5320:
------------------------------------

My initial thought about splitting the 32 bits forced me to have a separate 
router that extended the composite id router.
Here's the original thought:

Document Id: myapp!dummyuser!doc
This could also look like: myapp/numBits1!dummyuser/numBits2!doc
where numBits* are less than or equal to 8 (or not present, when it defaults to 
8).

Considering have 8/8/16 bits split between the 3 components of the id.
The point of concern is, in case numBits = 1 (or any other number), how to 
split the remaining 7 bits or rather 31.
I was trying to equally split the remainder among the 2 components (not really 
cleanly possible in case of odd bits).

I plan on adding remainder bits to the component that is derived from the docId 
i.e. 16+7. The new split becomes 1/8/23 bits among the components.

With that in place, I can just change compositeId router to also cater to 
3-level composite id routing.

Thoughts?

> Multi level compositeId router
> ------------------------------
>
>                 Key: SOLR-5320
>                 URL: https://issues.apache.org/jira/browse/SOLR-5320
>             Project: Solr
>          Issue Type: New Feature
>          Components: SolrCloud
>            Reporter: Anshum Gupta
>   Original Estimate: 336h
>  Remaining Estimate: 336h
>
> This would enable multi level routing as compared to the 2 level routing 
> available as of now. On the usage bit, here's an example:
> Document Id: myapp!dummyuser!doc
> myapp!dummyuser! can be used as the shardkey for searching content for 
> dummyuser.
> myapp! can be used for searching across all users of myapp.
> I am looking at either a 3 (or 4) level routing. The 32 bit hash would then 
> comprise of 8X4 components from each part (in case of 4 level).



--
This message was sent by Atlassian JIRA
(v6.1#6144)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscr...@lucene.apache.org
For additional commands, e-mail: dev-h...@lucene.apache.org

Reply via email to