DataMap Developer Guide


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:

  1. IndexDataMap: DataMap that leveraging index to accelerate filter query
  2. 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:

  1. preaggregate: one type of MVDataMap that do pre-aggregate of single table
  2. timeseries: one type of MVDataMap that do pre-aggregate based on time dimension of the table
  3. 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.