commit | d3204f7b47ae2a3e1c77748774591a58c3e00757 | [log] [tgz] |
---|---|---|
author | Indhumathi27 <indhumathim27@gmail.com> | Thu Jan 09 15:41:44 2020 +0530 |
committer | ajantha-bhat <ajanthabhat@gmail.com> | Mon Mar 23 11:23:09 2020 +0530 |
tree | 2b3fc6d76234397526027c2773387d94e8eebe8f | |
parent | 8ab12b76c797de2140fcdb909f3fdd73ab5d9b63 [diff] |
[CARBONDATA-3718] Support SegmentLevel MinMax for better Pruning and less driver memory usage for cache Why is this PR needed? In Cloud scenarios, index is too big to store in SparkDriver, since VM may not have so much memory. Currently in Carbon, we will load all indexes to cache for first time query. Since Carbon LRU Cache does not support time-based expiration, indexes will be removed from cache based on LeastRecentlyUsed mechanism, when the carbon lru cache is full. In some scenarios, where user's table has more segments and if user queries only very few segments often, we no need to load all indexes to cache. For filter queries, if we prune and load only matched segments to cache, then driver's memory will be saved. What changes were proposed in this PR? Added all block minmax with column-id and sort_column info to segment metadata file and prune segment based on segment files and load index only for matched segment. Added a configurable carbon property 'carbon.load.all.index.to.cache' to allow user to load all indexes to cache if needed. BY default, value will be true, which loads all indexes to cache. Does this PR introduce any user interface change? Yes. Is any new testcase added? Yes This closes #3584
Apache CarbonData is an indexed columnar data store solution for fast analytics on big data platform, e.g.Apache Hadoop, Apache Spark, etc.
You can find the latest CarbonData document and learn more at: http://carbondata.apache.org
CarbonData file format is a columnar store in HDFS, it has many features that a modern columnar format has, such as splittable, compression schema ,complex data type etc, and CarbonData has following unique features:
CarbonData is built using Apache Maven, to build CarbonData
This is an active open source project for everyone, and we are always open to people who want to use this system or contribute to it. This guide document introduce how to contribute to CarbonData.
To get involved in CarbonData:
Apache CarbonData is an open source project of The Apache Software Foundation (ASF).