Impala
Impalaistheopensource,nativeanalyticdatabaseforApacheHadoop.
|
Classes | |
struct | BuildPartition |
struct | Partition |
Public Member Functions | |
DataPartitioner (MemPool *pool, RuntimeProfile *profile, int size, int hash_offset) | |
void | AddData (int n, uint8_t *data) |
int | size_per_block () const |
int | NumTuples (const Partition &partition) const |
int | NumTuples (const Partition &partition, int block_idx) const |
bool | Finalize (vector< Partition > *results) |
Private Member Functions | |
uint8_t * | Allocate (BuildPartition *partition, int p, int size=0) |
Partition | ToOutputPartition (const BuildPartition &build) const |
int | TotalTuples (const BuildPartition &partition) const |
int | NumLastBlock (int p) const |
int | NumTuples (const BuildPartition &partition, int block_idx) const |
bool | Split (const BuildPartition &build_partition) |
Private Attributes | |
MemPool * | pool_ |
RuntimeProfile * | profile_ |
RuntimeProfile::Counter * | bytes_allocated_ |
RuntimeProfile::Counter * | bytes_copied_ |
RuntimeProfile::Counter * | split_time_ |
RuntimeProfile::Counter * | add_time_ |
RuntimeProfile::Counter * | splits_ |
int | size_ |
int | hash_offset_ |
int | tuples_per_partition_ |
int | partitions_per_level_ |
int | partition_idx_mask_ |
vector< PointerValue > | outputs_ |
vector< int32_t > | split_counts_ |
vector< int > | partitions_at_level_ |
vector< BuildPartition > | build_partitions_ |
vector< BuildPartition > | child_partitions_ |
Static Private Attributes | |
static const int | L1_size = 24 * 1024 |
static const int | MIN_SPLITS = 4 |
static const int | HASH_BIT_SHIFT = 4 |
Definition at line 91 of file tuple-splitter-test.cc.
|
inline |
Definition at line 93 of file tuple-splitter-test.cc.
References ADD_COUNTER, NextPowerOfTwo(), and pool.
void DataPartitioner::AddData | ( | int | n, |
uint8_t * | data | ||
) |
Definition at line 251 of file tuple-splitter-test.cc.
References COUNTER_ADD, impala::hash, Memcpy16(), and SCOPED_TIMER.
|
inlineprivate |
Definition at line 221 of file tuple-splitter-test.cc.
References DataPartitioner::BuildPartition::blocks, and COUNTER_ADD.
Definition at line 166 of file tuple-splitter-test.cc.
References DataPartitioner::BuildPartition::num_last_block, and SCOPED_TIMER.
|
inlineprivate |
Definition at line 239 of file tuple-splitter-test.cc.
|
inline |
Definition at line 157 of file tuple-splitter-test.cc.
References DataPartitioner::Partition::blocks, and DataPartitioner::Partition::num_last_block.
|
inline |
Definition at line 161 of file tuple-splitter-test.cc.
References DataPartitioner::Partition::blocks, and DataPartitioner::Partition::num_last_block.
|
inlineprivate |
Definition at line 243 of file tuple-splitter-test.cc.
References DataPartitioner::BuildPartition::blocks, and DataPartitioner::BuildPartition::num_last_block.
|
inline |
Definition at line 139 of file tuple-splitter-test.cc.
|
private |
Definition at line 270 of file tuple-splitter-test.cc.
References DataPartitioner::BuildPartition::blocks, COUNTER_ADD, impala::hash, DataPartitioner::BuildPartition::level, Memcpy16(), DataPartitioner::BuildPartition::num_last_block, and tuples.
|
inlineprivate |
Definition at line 231 of file tuple-splitter-test.cc.
References DataPartitioner::BuildPartition::blocks, and DataPartitioner::BuildPartition::num_last_block.
|
inlineprivate |
Definition at line 235 of file tuple-splitter-test.cc.
References DataPartitioner::BuildPartition::blocks, and DataPartitioner::BuildPartition::num_last_block.
|
private |
Definition at line 201 of file tuple-splitter-test.cc.
|
private |
Definition at line 218 of file tuple-splitter-test.cc.
|
private |
Definition at line 198 of file tuple-splitter-test.cc.
|
private |
Definition at line 199 of file tuple-splitter-test.cc.
|
private |
Definition at line 219 of file tuple-splitter-test.cc.
|
staticprivate |
Definition at line 195 of file tuple-splitter-test.cc.
|
private |
Definition at line 205 of file tuple-splitter-test.cc.
|
staticprivate |
Definition at line 193 of file tuple-splitter-test.cc.
|
staticprivate |
Definition at line 194 of file tuple-splitter-test.cc.
|
private |
Definition at line 209 of file tuple-splitter-test.cc.
|
private |
Definition at line 208 of file tuple-splitter-test.cc.
|
private |
Definition at line 211 of file tuple-splitter-test.cc.
|
private |
Definition at line 207 of file tuple-splitter-test.cc.
|
private |
Definition at line 196 of file tuple-splitter-test.cc.
|
private |
Definition at line 197 of file tuple-splitter-test.cc.
|
private |
Definition at line 204 of file tuple-splitter-test.cc.
|
private |
Definition at line 210 of file tuple-splitter-test.cc.
|
private |
Definition at line 200 of file tuple-splitter-test.cc.
|
private |
Definition at line 202 of file tuple-splitter-test.cc.
|
private |
Definition at line 206 of file tuple-splitter-test.cc.