lucene-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Mikhail Khludnev (JIRA)" <j...@apache.org>
Subject [jira] [Updated] (SOLR-10144) redesign block-join support
Date Thu, 16 Feb 2017 20:14:41 GMT

     [ https://issues.apache.org/jira/browse/SOLR-10144?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel
]

Mikhail Khludnev updated SOLR-10144:
------------------------------------
    Description: 
This is a placeholder for new block join design. Let's comeup with the name first: whether
it will be nested, child docs or blocks? 
h2. Feature Delivery plan
h3. Naming
Nested Documents

h3. Scopes in schema.xml 
*# fields can be grouped with {{<scope name="parent" default="true">}}
*# it can be _any_ level deep, and fan out _any_ subscopes (they are necessary for distinguishing
{{sons}}, {{daugthers}})
*# (?) I'm not sure whether {{name}} is uniq or traverse path is unique. btw, maybe  {{type}}
(?).   
*# {{default}} attribute is necessary to map existing blocks, which has only single nesting
dimension: {{childrenDocuments}}      
*# fields beside of scopes (_global_) can appear on any scope
*# coming to roots (?) how many root scopes we can have? I think we can have a few ones that
introducing notion of document types. 

h3. Updates
*# All formats XML, JSON, JSONdoc, Javabin accept nesting in named scopes. 
*# Current format (unnamed nesting) is supported by {{default}} marked scope.
*# field are accepted only if they are defined at the certain scope, beside of the _global_
ones

h3. Default experience 
*# submitting {{q=*:*&fl=*}} responds root documents with all children from all subscopes
nested in according to the scopes hierarchy. i.e. \[child] is *on* by default
*# {{fq=}} aims root docs

h3. Query
*# let's follow -Elastic- JSON.facet idea, and piggyback on its' request parsing facilities
  
*# this query should contains of nested nodes, every node represent \{!parser param=baram
v='input'}
*# this syntax should have handy defaluts/shortcut, to search {{foo:bar}} in less than fifteen
brackets,quotes and commas
*# it should use existing QParsers including \{!func} 
*# searching scopes is supported by _named scope_ QParser, handled in this syntax by regular
way
*# subscope query should be easily hooked in any occur (should, must, not )  
*# it should be available in a dedicated \[transformer], and support the following scenarios:
search parents by certain children, return them nested in response _without repeating query_,
do the same but return all children of selected parents   
*# naming separate nodes and named references is cool    

h3. Update/deletes/uniqueness/versioning
*# delete query/id hits root docs, and also nukes subordinate children
*# updating existing root doc completely removes existing subdocs, and replace all of them
with the new one 
*# field update fully rewrites whole doc hierarchy, and can aim any subdoc in hierarchy (this
won't be easy, how to identify children?)
*# (!) unique id value should span whole block (?) oh'really?? _it seems like we can avoid
it_ 
*# (?) do we need to identify separate subdocs with id? probably _yes_ for field updates 

*# _version_ should span whole block (_If I've got the recent SOLR-10114 right_) 

h3. Faceting
subject for support by Json.facet

h3. Named scopes support in DIH
_Old sport_, you know.

h2. Inception
[comment|https://issues.apache.org/jira/browse/LUCENE-7674?focusedCommentId=15855698&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-15855698]
and [the next one|https://issues.apache.org/jira/browse/LUCENE-7674?focusedCommentId=15855708&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-15855708]

  was:
This is a placeholder for new block join design. Let's comeup with the name first: whether
it will be nested, child docs or blocks? 
h2. Feature Delivery plan
<TBC> 
h2. Idea
[comment|https://issues.apache.org/jira/browse/LUCENE-7674?focusedCommentId=15855698&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-15855698]
and [the next|https://issues.apache.org/jira/browse/LUCENE-7674?focusedCommentId=15855708&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-15855708]


> redesign block-join support
> ---------------------------
>
>                 Key: SOLR-10144
>                 URL: https://issues.apache.org/jira/browse/SOLR-10144
>             Project: Solr
>          Issue Type: Improvement
>      Security Level: Public(Default Security Level. Issues are Public) 
>          Components: query parsers, update
>         Environment: Java. https://wiki.apache.org/solr/HowToContribute
>            Reporter: Mikhail Khludnev
>              Labels: gsoc2017, java
>
> This is a placeholder for new block join design. Let's comeup with the name first: whether
it will be nested, child docs or blocks? 
> h2. Feature Delivery plan
> h3. Naming
> Nested Documents
> h3. Scopes in schema.xml 
> *# fields can be grouped with {{<scope name="parent" default="true">}}
> *# it can be _any_ level deep, and fan out _any_ subscopes (they are necessary for distinguishing
{{sons}}, {{daugthers}})
> *# (?) I'm not sure whether {{name}} is uniq or traverse path is unique. btw, maybe 
{{type}} (?).   
> *# {{default}} attribute is necessary to map existing blocks, which has only single nesting
dimension: {{childrenDocuments}}      
> *# fields beside of scopes (_global_) can appear on any scope
> *# coming to roots (?) how many root scopes we can have? I think we can have a few ones
that introducing notion of document types. 
> h3. Updates
> *# All formats XML, JSON, JSONdoc, Javabin accept nesting in named scopes. 
> *# Current format (unnamed nesting) is supported by {{default}} marked scope.
> *# field are accepted only if they are defined at the certain scope, beside of the _global_
ones
> h3. Default experience 
> *# submitting {{q=*:*&fl=*}} responds root documents with all children from all subscopes
nested in according to the scopes hierarchy. i.e. \[child] is *on* by default
> *# {{fq=}} aims root docs
> h3. Query
> *# let's follow -Elastic- JSON.facet idea, and piggyback on its' request parsing facilities
  
> *# this query should contains of nested nodes, every node represent \{!parser param=baram
v='input'}
> *# this syntax should have handy defaluts/shortcut, to search {{foo:bar}} in less than
fifteen brackets,quotes and commas
> *# it should use existing QParsers including \{!func} 
> *# searching scopes is supported by _named scope_ QParser, handled in this syntax by
regular way
> *# subscope query should be easily hooked in any occur (should, must, not )  
> *# it should be available in a dedicated \[transformer], and support the following scenarios:
search parents by certain children, return them nested in response _without repeating query_,
do the same but return all children of selected parents   
> *# naming separate nodes and named references is cool    
> h3. Update/deletes/uniqueness/versioning
> *# delete query/id hits root docs, and also nukes subordinate children
> *# updating existing root doc completely removes existing subdocs, and replace all of
them with the new one 
> *# field update fully rewrites whole doc hierarchy, and can aim any subdoc in hierarchy
(this won't be easy, how to identify children?)
> *# (!) unique id value should span whole block (?) oh'really?? _it seems like we can
avoid it_ 
> *# (?) do we need to identify separate subdocs with id? probably _yes_ for field updates
 
> *# _version_ should span whole block (_If I've got the recent SOLR-10114 right_) 
> h3. Faceting
> subject for support by Json.facet
> h3. Named scopes support in DIH
> _Old sport_, you know.
> h2. Inception
> [comment|https://issues.apache.org/jira/browse/LUCENE-7674?focusedCommentId=15855698&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-15855698]
and [the next one|https://issues.apache.org/jira/browse/LUCENE-7674?focusedCommentId=15855708&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-15855708]



--
This message was sent by Atlassian JIRA
(v6.3.15#6346)

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


Mime
View raw message