[
https://issues.apache.org/jira/browse/RYA-416?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel&focusedCommentId=16300681#comment-16300681
]
ASF GitHub Bot commented on RYA-416:
------------------------------------
GitHub user jessehatfield opened a pull request:
https://github.com/apache/incubator-rya/pull/254
RYA-416 Optionally invoke aggregation pipeline to execute MongoDB queries
[WIP] Provides tools for converting some or all of a SPARQL query to an
aggregation pipeline.
<!--
Licensed to the Apache Software Foundation (ASF) under one
or more contributor license agreements. See the NOTICE file
distributed with this work for additional information
regarding copyright ownership. The ASF licenses this file
to you under the Apache License, Version 2.0 (the
"License"); you may not use this file except in compliance
with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing,
software distributed under the License is distributed on an
"AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
KIND, either express or implied. See the License for the
specific language governing permissions and limitations
under the License.
-->
## Description
>What Changed?
[Brief Description of what changed]
### Tests
>Coverage?
[Description of what tests were written]
### Links
[Jira](https://issues.apache.org/jira/browse/RYA-NUMBER)
### Checklist
- [ ] Code Review
- [ ] Squash Commits
#### People To Reivew
[Add those who should review this]
You can merge this pull request into a Git repository by running:
$ git pull https://github.com/jessehatfield/incubator-rya
RYA-416-aggregation-pipeline
Alternatively you can review and apply these changes as the patch at:
https://github.com/apache/incubator-rya/pull/254.patch
To close this pull request, make a commit to your master/trunk branch
with (at least) the following in the commit message:
This closes #254
----
commit 3eed2f92cc534768a6627a8c348eeef2c820c0e9
Author: Jesse Hatfield <jesse.hatfield@...>
Date: 2017-12-21T22:32:47Z
A new query node type to represent a MongoDB aggregation pipeline whose
results can be converted to binding sets, and tools for optionally transforming
some SPARQL expressions into such a node.
----
> Add the ability use the MongoDB aggregation pipeline to evaluate simple
> SPARQL expressions
> ------------------------------------------------------------------------------------------
>
> Key: RYA-416
> URL: https://issues.apache.org/jira/browse/RYA-416
> Project: Rya
> Issue Type: New Feature
> Reporter: Jesse Hatfield
> Assignee: Jesse Hatfield
>
> MongoDB provides the [aggregation pipeline
> framework|https://docs.mongodb.com/manual/core/aggregation-pipeline/] for
> multi-stage data processing. Currently, the query engine invokes this
> framework to apply individual statement patterns (using a "$match" expression
> for each and iterating through the results), then applies higher-level query
> operations (join, filter, select, project, etc) client-side.
> In principle, those high-level query operations could be rewritten as
> aggregation pipeline stages as well ($group, $match, $project, etc). This
> would allow more query evaluation logic to be executed by the MongoDB server
> itself, enabling server-side optimization. This could be used as a general
> query optimization, but would additionally be useful for any tool that only
> needed to write query results back to the server: adding a write step to the
> end of the resulting pipeline could obviate the need to communicate
> individual results to the client at all.
--
This message was sent by Atlassian JIRA
(v6.4.14#64029)