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

Jialin Qiao closed IOTDB-6.
---------------------------
    Resolution: Cannot Reproduce

> IoTDB query optimization 
> -------------------------
>
>                 Key: IOTDB-6
>                 URL: https://issues.apache.org/jira/browse/IOTDB-6
>             Project: Apache IoTDB
>          Issue Type: Improvement
>            Reporter: Gaofei Cao
>            Assignee: Gaofei Cao
>            Priority: Major
>              Labels: pull-request-available
>          Time Spent: 20m
>  Remaining Estimate: 0h
>
> Some query optimizations to complete.
>  
> h1. Improve the performance of query with value filter.
> 1) Replace the method ```*TsPrimitiveType getValueInTimestamp(long timestamp) 
> throws IOException;*``` in class ```
> *EngineReaderByTimeStamp*``` with ```*Object getValueInTimestamp(long 
> timestamp) throws IOException;*```.
> Construct the TsPrimitiveType will consume more time than Object.
> 2) Push the implementation of ReaderByTimestamp to lower level. Currently we 
> only use the interface ```*EngineReaderByTimeStamp*``` to complete the query 
> with filter. But the subclasses of ```*EngineReaderByTimeStamp*``` are never 
> used.
> We can use the given common timestamp calculated by value filter to filter 
> some data. e.g. the common time is [10, 20, 100], but the page data of 
> projection series is [1,2,3,4,5], in this situation, this page can be skipped 
> and no need to be deserialized.
> 3) Implement the optimization method which is used in TsFile.
> see 
> ```*org.apache.iotdb.tsfile.read.query.timegenerator.TimeGeneratorImpl*``` 
> and 
> ```*org.apache.iotdb.tsfile.read.query.executor.ExecutorWithTimeGenerator*```
>  
>  
> h1. Replace the single point next logic with batch data load.
> 1) The subclass of
> ```*org.apache.iotdb.db.query.reader.IReader``* has not implemented these 
> methods
> ```
> *boolean hasNextBatch();*
>  *BatchData nextBatch();*
>  *BatchData currentBatch();*
> ```
> these methods can speed up query effiency a lot.
>  
>  
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to