public interface IndexService
| 限定符和类型 | 字段和说明 |
|---|---|
static BitSet |
NOP_PROJECTION
Special projection indicating no projection is needed, all fields will be included.
|
| 限定符和类型 | 方法和说明 |
|---|---|
Iterator<GenericRecord> |
getQueryAllIterator(Optional<List<String>> recordProjection,
boolean ascOrder)
Return an iterator to query all records of a tablespace.
|
Iterator<GenericRecord> |
getQueryIteratorBySk(String skName,
List<Object> lower,
ComparisonOperator lowerOperator,
List<Object> upper,
ComparisonOperator upperOperator,
Optional<List<String>> recordProjection,
boolean ascOrder)
Return record iterator by secondary key (SK) in a tablespace.
|
Iterator<GenericRecord> |
getRangeQueryIterator(List<Object> lower,
ComparisonOperator lowerOperator,
List<Object> upper,
ComparisonOperator upperOperator,
Optional<List<String>> recordProjection,
boolean ascOrder)
Return an iterator to do range query by primary key in a tablespace.
|
Index |
loadIndexPage(long pageNumber)
Load index page by page number.
|
List<GenericRecord> |
queryAll(Optional<java.util.function.Predicate<GenericRecord>> recordPredicate,
Optional<List<String>> recordProjection)
Query all records in a tablespace.
|
List<GenericRecord> |
queryByPageNumber(int pageNumber)
Query all records by single index page.
|
List<GenericRecord> |
queryByPageNumber(long pageNumber)
Query all records by single index page.
|
GenericRecord |
queryByPrimaryKey(List<Object> key,
Optional<List<String>> recordProjection)
Query record by primary key in a tablespace with projection list.
|
List<GenericRecord> |
rangeQueryByPrimaryKey(List<Object> lower,
ComparisonOperator lowerOperator,
List<Object> upper,
ComparisonOperator upperOperator,
Optional<java.util.function.Predicate<GenericRecord>> recordPredicate,
Optional<List<String>> recordProjection)
Range query records by primary key in a tablespace with a filter and projection.
|
static final BitSet NOP_PROJECTION
List<GenericRecord> queryByPageNumber(int pageNumber)
pageNumber - page number (int type), can be leaf or non-leaf pageList<GenericRecord> queryByPageNumber(long pageNumber)
pageNumber - page number (long type), can be leaf or non-leaf pageList<GenericRecord> queryAll(Optional<java.util.function.Predicate<GenericRecord>> recordPredicate, Optional<List<String>> recordProjection)
Note this will cause out-of-memory if the table size is too big. Make sure fields are included in projection for predicate to use.
recordPredicate - optional filtering, if predicate returns true upon
record, then it will be added to result setrecordProjection - optional projection of selected column names, if no present, all
fields will be includedGenericRecord queryByPrimaryKey(List<Object> key, Optional<List<String>> recordProjection)
For single key, the the list size should be one, for composite key the size will be more than one.
key - key list of primary key, single key or a composite keyrecordProjection - optional projection of selected column names, if no present, all
fields will be includedList<GenericRecord> rangeQueryByPrimaryKey(List<Object> lower, ComparisonOperator lowerOperator, List<Object> upper, ComparisonOperator upperOperator, Optional<java.util.function.Predicate<GenericRecord>> recordPredicate, Optional<List<String>> recordProjection)
For single key the lower or upper list size should be one, for composite key the size will be more than one.
lower - lower boundlowerOperator - comparison operator for lowerupper - upper boundupperOperator - comparison operator for upperrecordPredicate - optional filtering, if predicate returns true upon a
record, then it will be added to result setrecordProjection - optional projection of selected column names, if no present, all
fields will be includedIterator<GenericRecord> getQueryAllIterator(Optional<List<String>> recordProjection, boolean ascOrder)
This is friendly to memory since only one page is loaded per batch.
recordProjection - optional projection of selected column names, if no present, all
fields will be includedascOrder - if set result records in ascending orderIterator<GenericRecord> getRangeQueryIterator(List<Object> lower, ComparisonOperator lowerOperator, List<Object> upper, ComparisonOperator upperOperator, Optional<List<String>> recordProjection, boolean ascOrder)
This is friendly to memory since only one page is loaded per batch.
For single key the lower or upper list size should be one, for composite key the size will be more than one.
lower - lower boundlowerOperator - comparison operator for lowerupper - upper boundupperOperator - comparison operator for upperrecordProjection - optional projection of selected column names, if no present, all
fields will be includedascOrder - if set result records in ascending orderIterator<GenericRecord> getQueryIteratorBySk(String skName, List<Object> lower, ComparisonOperator lowerOperator, List<Object> upper, ComparisonOperator upperOperator, Optional<List<String>> recordProjection, boolean ascOrder)
This is friendly to memory since only one page is loaded per batch.
For single key the lower or upper list size should be one, for composite key the size will be more than one.
skName - secondary key name in SHOW CREATE TABLE commandlower - lower boundlowerOperator - comparison operator for lowerupper - upper boundupperOperator - comparison operator for upperrecordProjection - optional projection of selected column names, if no present, all
fields will be includedascOrder - if set result records in ascending orderIndex loadIndexPage(long pageNumber)
pageNumber - page numberCopyright © 2019–2020 Alibaba Group Holding Limited. All rights reserved.