DataMap Developer Guide
Introduction
DataMap is a data structure that can be used to accelerate certain query of the table. Different DataMap can be implemented by developers. Currently, there are two 2 types of DataMap supported:
- IndexDataMap: DataMap that leveraging index to accelerate filter query
- MVDataMap: DataMap that leveraging Materialized View to accelerate olap style query, like SPJG query (select, predicate, join, groupby)
DataMap provider
When user issues CREATE DATAMAP dm ON TABLE main USING 'provider'
, the corresponding DataMapProvider implementation will be created and initialized. Currently, the provider string can be:
- preaggregate: one type of MVDataMap that do pre-aggregate of single table
- timeseries: one type of MVDataMap that do pre-aggregate based on time dimension of the table
- class name IndexDataMapFactory implementation: Developer can implement new type of IndexDataMap by extending IndexDataMapFactory
When user issues DROP DATAMAP dm ON TABLE main
, the corresponding DataMapProvider interface will be called.