You've already forked mariadb-columnstore-engine
mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-07-29 08:21:15 +03:00
[MCOL-4709] Disk-based aggregation
* Introduce multigeneration aggregation * Do not save unused part of RGDatas to disk * Add IO error explanation (strerror) * Reduce memory usage while aggregating * introduce in-memory generations to better memory utilization * Try to limit the qty of buckets at a low limit * Refactor disk aggregation a bit * pass calculated hash into RowAggregation * try to keep some RGData with free space in memory * do not dump more than half of rowgroups to disk if generations are allowed, instead start a new generation * for each thread shift the first processed bucket at each iteration, so the generations start more evenly * Unify temp data location * Explicitly create temp subdirectories whether disk aggregation/join are enabled or not
This commit is contained in:
@ -203,6 +203,14 @@ public:
|
||||
*/
|
||||
EXPORT const std::vector<std::string> enumSection(const std::string& section);
|
||||
|
||||
enum class TempDirPurpose
|
||||
{
|
||||
Joins, ///< disk joins
|
||||
Aggregates ///< disk-based aggregation
|
||||
};
|
||||
/** @brief Return temporaru directory path for the specified purpose */
|
||||
EXPORT std::string getTempFileDir(TempDirPurpose what);
|
||||
|
||||
protected:
|
||||
/** @brief parse the XML file
|
||||
*
|
||||
|
Reference in New Issue
Block a user