You've already forked mariadb-columnstore-engine
mirror of
https://github.com/mariadb-corporation/mariadb-columnstore-engine.git
synced 2025-11-24 08:41:09 +03:00
MCOL-4912 This patch introduces Extent Map index to improve EM scaleability
EM scaleability project has two parts: phase1 and phase2.
This is phase1 that brings EM index to speed up(from O(n) down
to the speed of boost::unordered_map) EM lookups looking for
<dbroot, oid, partition> tuple to turn it into LBID,
e.g. most bulk insertion meta info operations.
The basis is boost::shared_managed_object where EMIndex is
stored. Whilst it is not debug-friendly it allows to put a
nested structs into shmem. EMIndex has 3 tiers. Top down description:
vector of dbroots, map of oids to partition vectors, partition
vectors that have EM indices.
Separate EM methods now queries index before they do EM run.
EMIndex has a separate shmem file with the fixed id
MCS-shm-00060001.
This commit is contained in:
committed by
Leonid Fedorov
parent
fb3eaabd29
commit
4c26e4f960
@@ -109,8 +109,10 @@ class MasterSegmentTable
|
||||
static const int VSSSegment = 3;
|
||||
/// specifies the copy lock segment
|
||||
static const int CLSegment = 4;
|
||||
/// specifies the EM Index segment
|
||||
static const int EMIndex = 5;
|
||||
/// the number of tables currently defined
|
||||
static const int nTables = 5;
|
||||
static const int nTables = 6;
|
||||
|
||||
/** @brief This function gets the specified table.
|
||||
*
|
||||
|
||||
Reference in New Issue
Block a user