[JBoss JIRA] (TEIID-2627) Accumulo as a Supported Data Source
by Ramesh Reddy (JIRA)
[ https://issues.jboss.org/browse/TEIID-2627?page=com.atlassian.jira.plugin... ]
Ramesh Reddy commented on TEIID-2627:
-------------------------------------
Accumulo has concept of tables, and it is a key/value store. A key structure is looks like
||rowid|| Column Family(CF)||Column Qualifier(CQ)||Timestamp||
||rowid||VALUE||
Based on the above a table structure could be derived that could work in SQL world, where
rowid = becomes a identity column , which is PK
CF/CQ = together or CF alone can become the column name in table
CQ/VALUE = one of them will be values of the column.
This is basis how a table is formed in Accumulo. One caveat is the column type will be always byte[]. However, if user modeled their schema in Teiid to start with, Teiid will convert back and forth between byte[] and defined data type when data is going back and forth between queries.
If the user uses equality or IN predicate on the ROWID column, then it will be converted to Range based query navigation. If user uses different column for predicate , then a iterator is pushed in to the tablet servers that more or less do a table scan. Teiid query engine's evalution engine is fitted for this task, so this translator can support variety of SQL criteria on single table. Since Teiid engine is in Accumulo, it will be filtering out data much earlier in query cycle.
Since all the Accumulo design happens in context of single table, no JOIN capabilities at source will be supported, they will be handled by Teiid engine entirely. This translator will also support the insert/update/delete along with select.
todo: still need to implement inverted index table on the columns that are defined as index columns in metadata for faster access during querying.
> Accumulo as a Supported Data Source
> -----------------------------------
>
> Key: TEIID-2627
> URL: https://issues.jboss.org/browse/TEIID-2627
> Project: Teiid
> Issue Type: Feature Request
> Components: Connector API
> Affects Versions: 8.6
> Reporter: devin pinkston
> Assignee: Ramesh Reddy
> Labels: accumulo, data_source
> Fix For: Open To Community
>
>
> Support for Accumulo as a data source in Teiid. Would require Resource Adapter and Translator development.
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years
[JBoss JIRA] (TEIID-2736) MongoDB: failed to translate to mongo query with boolean value expression
by RH Bugzilla Integration (JIRA)
[ https://issues.jboss.org/browse/TEIID-2736?page=com.atlassian.jira.plugin... ]
RH Bugzilla Integration commented on TEIID-2736:
------------------------------------------------
Van Halbert <vhalbert(a)redhat.com> changed the Status of [bug 1033077|https://bugzilla.redhat.com/show_bug.cgi?id=1033077] from MODIFIED to ON_QA
> MongoDB: failed to translate to mongo query with boolean value expression
> --------------------------------------------------------------------------
>
> Key: TEIID-2736
> URL: https://issues.jboss.org/browse/TEIID-2736
> Project: Teiid
> Issue Type: Bug
> Components: Query Engine
> Affects Versions: 8.6
> Environment: Teiid 8.6 beta with mongoDB
> Reporter: Ivan Chan
> Assignee: Ramesh Reddy
> Labels: Beta2, teiid
> Fix For: 8.4.1, 8.6
>
>
> Fail to translate the following SQL to mongo query:
> select "grade",
> "name",
> "score",
> "state",
> "grade" as "test",
> ("name" = "state") as "name2"
> from "mongoDBDS"."grades"
> where "grade" = 'B'
> However, it works with the query contains group by and boolean value expression:
> elect "grade" as "test",
> "grade",
> ("name" = "state") as "name2",
> sum("score") as "sum_score"
> from "mongoDBDS"."grades"
> where "grade" = 'B'
> group by "grade", "grade", ("name" = "state")
> order by "grade", "test", "name2"
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years
[JBoss JIRA] (TEIID-2776) ArrayIndexOutOfBoundsException
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-2776?page=com.atlassian.jira.plugin... ]
Steven Hawkins resolved TEIID-2776.
-----------------------------------
Resolution: Done
Added the key to the stree value indexes.
> ArrayIndexOutOfBoundsException
> ------------------------------
>
> Key: TEIID-2776
> URL: https://issues.jboss.org/browse/TEIID-2776
> Project: Teiid
> Issue Type: Bug
> Components: Query Engine
> Affects Versions: 8.5
> Reporter: Bram Gadeyne
> Assignee: Steven Hawkins
> Priority: Critical
> Labels: exception, teiid
> Fix For: 8.6
>
>
> When executing the following query:
> insert into #tmp_labres
> select f.patientid as admissionid, f.variableid, f.sampledate, f.value, f.stringvalue, f.status
> from (
> select v.*, rank() over(partition by v.patientid,v.VariableID, v.sampledate order by v.SampleTime,v.resultno desc) as resultrank
> from #tmp_labrestimecast v
> ) f
> where f.resultrank = 1;
> I get and ArrayIndexOutOfBoundsException. In the logs it only says "11:31:44,537 ERROR [org.teiid.PROCESSOR] (Worker15031_QueryProcessorQueue278439) yfgMWpMOgQdg TEIID30019 Unexpected exception for request yfgMWpMOgQdg.43: java.lang.ArrayIndexOutOfBoundsException
> "
> A few log entries before this I find a stack trace for an ArrayIndexOutOfBoundsException. Since I have executed this query multiple times I think it's a stack trace for the same query. I suppose this has something to do with the rank function. A normal select on #tmp_labrestimecast works without a problem.
> 16:25:39,765 ERROR [org.teiid.PROCESSOR] (Worker13352_QueryProcessorQueue214542) 90UM8pskkEDH TEIID30019 Unexpected exception for request 90UM8pskkEDH.255: java.lang.ArrayIndexOutOfBoundsException: 1
> at java.util.Arrays$ArrayList.get(Arrays.java:2866) [rt.jar:1.7.0_25]
> at org.teiid.query.processor.relational.WindowFunctionProjectNode.nextBatchDirect(WindowFunctionProjectNode.java:270) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:278) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.query.processor.relational.ProjectNode.nextBatchDirect(ProjectNode.java:146) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:278) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.query.processor.relational.SelectNode.nextBatchDirect(SelectNode.java:104) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:278) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.query.processor.relational.ProjectNode.nextBatchDirect(ProjectNode.java:146) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:278) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.query.processor.relational.ProjectIntoNode.nextBatchDirect(ProjectIntoNode.java:138) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:278) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.query.processor.relational.RelationalPlan.nextBatch(RelationalPlan.java:136) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:151) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:114) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:155) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.dqp.internal.process.RequestWorkItem.processMore(RequestWorkItem.java:435) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.dqp.internal.process.RequestWorkItem.process(RequestWorkItem.java:320) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.dqp.internal.process.AbstractWorkItem.run(AbstractWorkItem.java:51) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.dqp.internal.process.RequestWorkItem.run(RequestWorkItem.java:248) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:269) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:119) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:214) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_25]
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_25]
> at java.lang.Thread.run(Thread.java:724) [rt.jar:1.7.0_25]
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years
[JBoss JIRA] (TEIID-2776) ArrayIndexOutOfBoundsException
by Steven Hawkins (JIRA)
[ https://issues.jboss.org/browse/TEIID-2776?page=com.atlassian.jira.plugin... ]
Steven Hawkins updated TEIID-2776:
----------------------------------
Component/s: Query Engine
> ArrayIndexOutOfBoundsException
> ------------------------------
>
> Key: TEIID-2776
> URL: https://issues.jboss.org/browse/TEIID-2776
> Project: Teiid
> Issue Type: Bug
> Components: Query Engine
> Affects Versions: 8.5
> Reporter: Bram Gadeyne
> Assignee: Steven Hawkins
> Priority: Critical
> Labels: exception, teiid
> Fix For: 8.6
>
>
> When executing the following query:
> insert into #tmp_labres
> select f.patientid as admissionid, f.variableid, f.sampledate, f.value, f.stringvalue, f.status
> from (
> select v.*, rank() over(partition by v.patientid,v.VariableID, v.sampledate order by v.SampleTime,v.resultno desc) as resultrank
> from #tmp_labrestimecast v
> ) f
> where f.resultrank = 1;
> I get and ArrayIndexOutOfBoundsException. In the logs it only says "11:31:44,537 ERROR [org.teiid.PROCESSOR] (Worker15031_QueryProcessorQueue278439) yfgMWpMOgQdg TEIID30019 Unexpected exception for request yfgMWpMOgQdg.43: java.lang.ArrayIndexOutOfBoundsException
> "
> A few log entries before this I find a stack trace for an ArrayIndexOutOfBoundsException. Since I have executed this query multiple times I think it's a stack trace for the same query. I suppose this has something to do with the rank function. A normal select on #tmp_labrestimecast works without a problem.
> 16:25:39,765 ERROR [org.teiid.PROCESSOR] (Worker13352_QueryProcessorQueue214542) 90UM8pskkEDH TEIID30019 Unexpected exception for request 90UM8pskkEDH.255: java.lang.ArrayIndexOutOfBoundsException: 1
> at java.util.Arrays$ArrayList.get(Arrays.java:2866) [rt.jar:1.7.0_25]
> at org.teiid.query.processor.relational.WindowFunctionProjectNode.nextBatchDirect(WindowFunctionProjectNode.java:270) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:278) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.query.processor.relational.ProjectNode.nextBatchDirect(ProjectNode.java:146) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:278) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.query.processor.relational.SelectNode.nextBatchDirect(SelectNode.java:104) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:278) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.query.processor.relational.ProjectNode.nextBatchDirect(ProjectNode.java:146) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:278) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.query.processor.relational.ProjectIntoNode.nextBatchDirect(ProjectIntoNode.java:138) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.query.processor.relational.RelationalNode.nextBatch(RelationalNode.java:278) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.query.processor.relational.RelationalPlan.nextBatch(RelationalPlan.java:136) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.query.processor.QueryProcessor.nextBatchDirect(QueryProcessor.java:151) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.query.processor.QueryProcessor.nextBatch(QueryProcessor.java:114) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.query.processor.BatchCollector.collectTuples(BatchCollector.java:155) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.dqp.internal.process.RequestWorkItem.processMore(RequestWorkItem.java:435) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.dqp.internal.process.RequestWorkItem.process(RequestWorkItem.java:320) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.dqp.internal.process.AbstractWorkItem.run(AbstractWorkItem.java:51) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.dqp.internal.process.RequestWorkItem.run(RequestWorkItem.java:248) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.dqp.internal.process.DQPWorkContext.runInContext(DQPWorkContext.java:269) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$RunnableWrapper.run(ThreadReuseExecutor.java:119) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at org.teiid.dqp.internal.process.ThreadReuseExecutor$3.run(ThreadReuseExecutor.java:214) [teiid-engine-8.5.0.Final.jar:8.5.0.Final]
> at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [rt.jar:1.7.0_25]
> at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [rt.jar:1.7.0_25]
> at java.lang.Thread.run(Thread.java:724) [rt.jar:1.7.0_25]
--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira
11 years