#include <part.h>
Inherited by ibis::bord::part [virtual].
Public Types | |
|
typedef std::map< const char *, column *, lessi > | columnList |
| enum | TABLE_STATE { UNKNOWN_STATE = 0, STABLE_STATE, RECEIVING_STATE, PRETRANSITION_STATE, TRANSITION_STATE, POSTTRANSITION_STATE } |
Public Member Functions | |
| ibis::fileManager::ACCESS_PREFERENCE | accessHint (const ibis::bitvector &mask, unsigned elemsize=4) const |
| Evaluate the strategy to access a data file. | |
| long | append (const char *dir) |
Append data from dir. | |
| void | buildIndex (int nthr=1, const char *opt=0) |
| Load and immediately unload indexes. | |
| void | combineNames (ibis::table::namesTypes &metalist) const |
| Update the list of columns with information in this data partition. | |
| long | commit (const char *dir) |
Commit the append operation involving data from dir. | |
| void | computeMinMax () |
| Go through all the values to compute the min and max for each column. | |
| long | countHits (const ibis::qRange &cmp) const |
| Count the number of hits for a single range condition. | |
| const char * | currentDataDir () const |
| Return the name of the active data directory. | |
| long | deactivate (const char *conds) |
| Mark all rows satisfying the specified conditions as inactive. | |
| long | deactivate (const std::vector< uint32_t > &rows) |
| Mark the specified rows as inactive. | |
| const char * | description () const |
| Return a text description of the partition. | |
| void | doBackup () |
| A function to start backing up the active dir. | |
| template<typename E> | |
| long | doScan (const array_t< E > &varr, const ibis::qContinuousRange &cmp, const ibis::bitvector &mask, ibis::bitvector &hits) const |
| template<typename E> | |
| long | doScan (const array_t< E > &varr, const ibis::qRange &cmp, const ibis::bitvector &mask, ibis::bitvector &hits) const |
| Locate the records that satisfy the range condition. | |
| virtual long | doScan (const ibis::compRange &cmp, const ibis::bitvector &mask, ibis::bitvector &hits, ibis::compRange::barrel *bar=0) const |
| Locate the records that have mark value 1 and satisfy the complex range conditions. | |
| virtual long | doScan (const ibis::compRange &cmp, ibis::bitvector &hits) const |
| Locate the records that satisfy the complex range condition. | |
| virtual long | doScan (const ibis::qRange &cmp, const ibis::bitvector &mask, ibis::bitvector &hits) const |
| Evalute the range condition on the records that are marked 1 in the mask. | |
| virtual long | doScan (const ibis::qRange &cmp, ibis::bitvector &hits) const |
| Evaluate the range condition. | |
| template<> | |
| void | equalWeightBins (const array_t< double > &vals, uint32_t nbins, array_t< double > &bounds) |
| Explicit specialization for double arrays. | |
| template<> | |
| void | equalWeightBins (const array_t< float > &vals, uint32_t nbins, array_t< float > &bounds) |
| Explicit specialization for float arrays. | |
| virtual double | estimateCost (const ibis::qMultiString &cmp) const |
| virtual double | estimateCost (const ibis::qString &cmp) const |
| virtual double | estimateCost (const ibis::qDiscreteRange &cmp) const |
| virtual double | estimateCost (const ibis::qContinuousRange &cmp) const |
| Estimate the cost of evaluate the query expression. | |
| virtual long | estimateMatchAny (const ibis::qAnyAny &cmp, ibis::bitvector &low, ibis::bitvector &high) const |
| Estimate a lower bound and an upper bound on the records that are hits. | |
| virtual long | estimateRange (const ibis::qDiscreteRange &cmp, ibis::bitvector &low, ibis::bitvector &high) const |
| Estimate the discrete range condition. | |
| virtual long | estimateRange (const ibis::qContinuousRange &cmp, ibis::bitvector &low, ibis::bitvector &high) const |
| virtual long | estimateRange (const ibis::qDiscreteRange &cmp) const |
| Return an upper bound on the number of hits. | |
| virtual long | estimateRange (const ibis::qContinuousRange &cmp) const |
| Return an upper bound on the number of hits. | |
| int64_t | evaluateJoin (const std::vector< const ibis::rangeJoin * > &cmp, const ibis::bitvector64 &trial, ibis::bitvector64 &result) const |
Check a set of pairs defined in trial. | |
| int64_t | evaluateJoin (const ibis::rangeJoin &cmp, const ibis::bitvector64 &trial, ibis::bitvector64 &result) const |
Evaluate all pairs in trial to determine whether they really satisfy the range join defined in cmp. | |
| int64_t | evaluateJoin (const std::vector< const ibis::rangeJoin * > &cmp, const ibis::bitvector &mask) const |
| int64_t | evaluateJoin (const std::vector< const ibis::rangeJoin * > &cmp, const ibis::bitvector &mask, ibis::bitvector64 &pairs) const |
| Evaluate a join defined with multiple (conjunctive) range join conditions. | |
| int64_t | evaluateJoin (const ibis::rangeJoin &cmp, const ibis::bitvector &mask) const |
| Return only the number of pairs satisfying the join condition. | |
| int64_t | evaluateJoin (const ibis::rangeJoin &cmp, const ibis::bitvector &mask, const char *pairfile) const |
| Return the number of pairs satisfying the join condition. | |
| int64_t | evaluateJoin (const ibis::rangeJoin &cmp, const ibis::bitvector &mask, ibis::bitvector64 &pairs) const |
| Evaluate a self-join. | |
| virtual long | evaluateRange (const ibis::qDiscreteRange &cmp, const ibis::bitvector &mask, ibis::bitvector &res) const |
| virtual long | evaluateRange (const ibis::qContinuousRange &cmp, const ibis::bitvector &mask, ibis::bitvector &res) const |
| long | evaluateRIDSet (const ibis::RIDSet &, ibis::bitvector &) const |
| double | getActualMax (const char *name) const |
| The actual maximum value in the named column. | |
| double | getActualMin (const char *name) const |
| The actual minimum value in the named column. | |
| column * | getColumn (uint32_t ind) const |
| Returns the pointer to the ith column. | |
| column * | getColumn (const char *name) const |
| Given a name, return the associated column. | |
| double | getColumnSum (const char *name) const |
| Sum of all value in the named column. | |
| info * | getInfo () const |
| Return descriptive information about the data partition. | |
| const ibis::bitvector & | getMask () const |
| Return a reference to the mask of active rows. | |
| const std::vector< std::string > & | getMeshDimensions () const |
| Return the name of the dimensions corresponding to the vector returned from getMeshShape. | |
| const std::vector< uint32_t > & | getMeshShape () const |
| In many scientific applications, data are defined on meshes. | |
| const char * | getMetaTag (const char *) const |
| Return the value of the meta tag with the specified name. | |
| array_t< rid_t > * | getRIDs (const ibis::bitvector &mask) const |
| array_t< rid_t > * | getRIDs () const |
| uint32_t | getRowNumber (const rid_t &rid) const |
| Return the row number of the row with specified RID. | |
| TABLE_STATE | getState () const |
| Return the current state of data partition. | |
| TABLE_STATE | getStateNoLocking () const |
| virtual float | getUndecidable (const ibis::qDiscreteRange &cmp, ibis::bitvector &iffy) const |
| Discover the records that can not be decided using the index. | |
| virtual float | getUndecidable (const ibis::qContinuousRange &cmp, ibis::bitvector &iffy) const |
| Discover the records that can not be decided using the index. | |
| bool | hasRIDs () const |
| void | indexSpec (const char *) |
| Replace existing index specification with a new one. | |
| const char * | indexSpec () const |
| Return the current index specification. | |
| void | loadIndex (const char *opt=0) const |
| Load indexes of all columns. | |
| void | logMessage (const char *event, const char *fmt,...) const |
| void | logWarning (const char *event, const char *fmt,...) const |
| long | lookforString (const ibis::qMultiString &cmp) const |
| long | lookforString (const ibis::qString &cmp) const |
| Return an upper bound of the number of records that have the exact string value. | |
| long | lookforString (const ibis::qMultiString &cmp, ibis::bitvector &low) const |
| Determine the records that have the exact string values. | |
| long | lookforString (const ibis::qString &cmp, ibis::bitvector &low) const |
| Find all records that has the exact string value. | |
| virtual long | matchAny (const ibis::qAnyAny &cmp, const ibis::bitvector &mask, ibis::bitvector &hits) const |
| Perform exact match operation for an AnyAny query. | |
| virtual long | matchAny (const ibis::qAnyAny &cmp, ibis::bitvector &hits) const |
| bool | matchMetaTags (const ibis::resource::vList &mtags) const |
| Match multiple name-value pairs. | |
| bool | matchMetaTags (const std::vector< const char * > &mtags) const |
| Match multiple name-value pairs against the internally stored meta tags. | |
| bool | matchNameValuePair (const char *name, const char *value) const |
| Match a name-value pair in the meta tags. | |
| std::string | metaTags () const |
| Return the list of meta tags as a single string. | |
| const char * | name () const |
| Return the name of the partition. | |
| size_t | nColumns () const |
| Return the number of attributes in the partition. | |
| virtual long | negativeScan (const ibis::qRange &cmp, const ibis::bitvector &mask, ibis::bitvector &hits) const |
| Compute the records (marked 1 in the mask) that does not satisfy the range condition. | |
| size_t | nRows () const |
| Return the number of rows. | |
| part (const ibis::resource::vList &mtags) | |
| Initialize a partition with given meta tags. | |
| part (const std::vector< const char * > &mtags) | |
| Initialize a partition with given meta tags. | |
| part (const char *adir, const char *bdir) | |
| Initialize a table from the named directories. | |
| part (const char *prefix=0) | |
| Initialize a data partition object. | |
| void | print (std::ostream &out) const |
| Output a description of every column of the data partition. | |
| long | purgeInactive () |
| Purge all inactive rows from the partition. | |
| void | purgeIndexFiles () const |
| Remove existing index files! | |
| void | queryTest (const char *pref, long *nerrors) const |
| void | quickTest (const char *pref, long *nerrors) const |
| long | reactivate (const char *conds) |
| Make sure the rows satisfying the specified conditionis are active. | |
| long | reactivate (const std::vector< uint32_t > &rows) |
| Make sure the specified rows are active. | |
| long | reorder (const ibis::table::stringList &names) |
Sort rows according the values of the columns specified in names. | |
| long | reorder () |
| Sort rows with the lowest cardinality attribute first. | |
| long | rollback () |
| Rollback the append operation. | |
| array_t< double > * | selectDoubles (const char *name, const ibis::bitvector &mask) const |
| array_t< float > * | selectFloats (const char *name, const ibis::bitvector &mask) const |
| array_t< int32_t > * | selectInts (const char *name, const ibis::bitvector &mask) const |
| array_t< int64_t > * | selectLongs (const char *name, const ibis::bitvector &mask) const |
| array_t< uint32_t > * | selectUInts (const char *name, const ibis::bitvector &mask) const |
| virtual long | selfTest (int nth=1, const char *pref=0) const |
| Perform predefined set of tests and return the number of failures. | |
| void | setMeshShape (const char *shape) |
| Digest the mesh shape stored in the string. | |
| time_t | timestamp () const |
| Return the time stamp on the partition. | |
| void | unloadIndex () const |
| Unload indexes of all columns. | |
| void | updateTDC () const |
| Write the TDC file to record the changes to the partition. | |
| virtual | ~part () |
| Destuctor. | |
| long | get1DDistribution (const char *constraints, const char *cname, uint32_t nbin, std::vector< double > &bounds, std::vector< uint32_t > &counts) const |
| Compute conditional 1D histogram with adaptive bins. | |
| long | get1DDistribution (const char *cname, uint32_t nbin, std::vector< double > &bounds, std::vector< uint32_t > &counts) const |
| Compute 1D histogram with adaptive bins. | |
| long | get1DDistribution (const char *constraints, const char *cname, double begin, double end, double stride, std::vector< uint32_t > &counts) const |
Count the number of records falling in the regular bins defined by the begin:end:stride triplet. | |
| long | get2DDistribution (const char *constraints, const char *name1, const char *name2, uint32_t nb1, uint32_t nb2, std::vector< double > &bounds1, std::vector< double > &bounds2, std::vector< uint32_t > &counts) const |
| Compute conditional 2D histogram with adaptive bins. | |
| long | get2DDistribution (const char *cname1, const char *cname2, uint32_t nb1, uint32_t nb2, std::vector< double > &bounds1, std::vector< double > &bounds2, std::vector< uint32_t > &counts, const char *const option=0) const |
| Compute 2D histogram with adaptive bins. | |
| long | get2DDistribution (const char *constraints, const char *cname1, double begin1, double end1, double stride1, const char *cname2, double begin2, double end2, double stride2, std::vector< uint32_t > &counts) const |
| Compute conditional 2D histogram with regularly spaced bins. | |
| long | get3DDistribution (const char *constraints, const char *cname1, double begin1, double end1, double stride1, const char *cname2, double begin2, double end2, double stride2, const char *cname3, double begin3, double end3, double stride3, std::vector< uint32_t > &counts) const |
| Compute conditional 3D histogram with regularly spaced bins. | |
| long | getCumulativeDistribution (const char *constraints, const char *name, uint32_t nbc, double *bounds, uint32_t *counts) const |
| Compute the conditional distribution and return the distribution in the arrays provided. | |
| long | getCumulativeDistribution (const char *name, uint32_t nbc, double *bounds, uint32_t *counts) const |
This version of getCumulativeDistribution uses two user supplied arrays bounds and counts. | |
| long | getCumulativeDistribution (const char *constraints, const char *name, std::vector< double > &bounds, std::vector< uint32_t > &counts) const |
Compute the cumulative distribution of the variable named name under the specified constraints. | |
| long | getCumulativeDistribution (const char *name, std::vector< double > &bounds, std::vector< uint32_t > &counts) const |
| Compute a cumulative distribution (a cumulative histogram). | |
| long | getDistribution (const char *name, const char *constraints, uint32_t nbc, double *bounds, uint32_t *counts) const |
| Compute the conditional binned data distribution with the specified maximum number of bins. | |
| long | getDistribution (const char *name, uint32_t nbc, double *bounds, uint32_t *counts) const |
| Compute the binned distribution with the specified maximum number of bins. | |
| long | getDistribution (const char *constraints, const char *name, std::vector< double > &bounds, std::vector< uint32_t > &counts) const |
| Compute the conditional binned data distribution. | |
| long | getDistribution (const char *name, std::vector< double > &bounds, std::vector< uint32_t > &counts) const |
The array bounds defines the following bins:. | |
| long | getJointDistribution (const char *constraints, const char *name1, const char *name2, std::vector< double > &bounds1, std::vector< double > &bounds2, std::vector< uint32_t > &counts) const |
| Compute the joint distribution of two variables. | |
Static Public Member Functions | |
| static uint32_t | countPages (const ibis::bitvector &mask, unsigned elemsize=4) |
Given a bitvector, compute the number of pages would be accessed. | |
| static void | genName (const ibis::resource::vList &mtags, std::string &name) |
| Generate name for a partition based on the meta tags. | |
| static void | genName (const std::vector< const char * > &mtags, std::string &name) |
| Generate name for a partition based on the meta tags. | |
| static char * | readMetaTags (const char *const dir) |
| A class function to read the meta tags in the tdc file. | |
Protected Member Functions | |
| long | append1 (const char *dir) |
| Perform append operation using only only one data directory. | |
| long | append2 (const char *dir) |
| Perform append operation with two data directories. | |
| long | appendToBackup (const char *dir) |
Append data in dir to the partition in the backup directory. | |
| int | coarsenBins (const ibis::column &col, uint32_t nbin, std::vector< double > &bnds, std::vector< ibis::bitvector * > &btmp) const |
| Produce a set of bitmaps corresponding to a set of coarse bins. | |
| template<typename T1, typename T2> | |
| long | count2DBins (array_t< T1 > &vals1, const double &begin1, const double &end1, const double &stride1, array_t< T2 > &vals2, const double &begin2, const double &end2, const double &stride2, std::vector< uint32_t > &counts) const |
| Count the number of values in 2D bins. | |
| template<typename T1, typename T2, typename T3> | |
| long | count3DBins (const array_t< T1 > &vals1, const double &begin1, const double &end1, const double &stride1, const array_t< T2 > &vals2, const double &begin2, const double &end2, const double &stride2, const array_t< T3 > &vals3, const double &begin3, const double &end3, const double &stride3, std::vector< uint32_t > &counts) const |
| Count the number of values in 3D bins. | |
| long | deactivate (const ibis::bitvector &rows) |
Mark the rows identified in rows as inactive. | |
| void | deriveBackupDirName () |
| void | digestMeshShape (const char *shape) |
| Convert the string describing the shape into internal storage format. | |
| template<typename T, typename F1, typename F2> | |
| long | doCompare (const array_t< T > &vals, F1 cmp1, F2 cmp2, const ibis::bitvector &mask, ibis::bitvector &hits) const |
| The actual scan function. | |
| template<typename T, typename F> | |
| long | doCompare (const array_t< T > &vals, F cmp, const ibis::bitvector &mask, ibis::bitvector &hits) const |
| Accepts an externally passed comparison operator. | |
| template<typename T> | |
| long | doCompare (const char *file, const ibis::bitvector &mask, ibis::bitvector &hits, const ibis::qRange &cmp) const |
| template<typename T> | |
| long | doCompare (const array_t< T > &array, const ibis::bitvector &mask, ibis::bitvector &hits, const ibis::qRange &cmp) const |
| template<typename T, typename F1, typename F2> | |
| long | doCompare0 (const array_t< T > &vals, F1 cmp1, F2 cmp2, const ibis::bitvector &mask, ibis::bitvector &hits) const |
| This version uses uncompressed bitvector to store the scan results internally. | |
| template<typename T, typename F> | |
| long | doCompare0 (const array_t< T > &vals, F cmp, const ibis::bitvector &mask, ibis::bitvector &hits) const |
| This version uses an uncompressed bitvector to store the scan results internally. | |
| template<typename T, typename F1, typename F2> | |
| long | doCount (const array_t< T > &vals, const ibis::bitvector &mask, F1 cmp1, F2 cmp2) const |
| template<typename T, typename F> | |
| long | doCount (const array_t< T > &vals, const ibis::bitvector &mask, F cmp) const |
| template<typename T> | |
| long | doCount (const array_t< T > &vals, const ibis::qRange &cmp, const ibis::bitvector &mask) const |
| template<typename T> | |
| long | doCount (const ibis::qRange &cmp) const |
| void | extendMetaTags () |
| void | freeRIDs () const |
| Remove the rids list from memory. | |
| long | get1DDistribution (const ibis::column &col, uint32_t nbin, std::vector< double > &bounds, std::vector< uint32_t > &counts) const |
| Comptue 1D histogram from index. | |
| long | get2DDistributionA (const ibis::column &col1, const ibis::column &col2, uint32_t nb1, uint32_t nb2, std::vector< double > &bounds1, std::vector< double > &bounds2, std::vector< uint32_t > &counts) const |
| Compute 2D histogram with adaptive bins from base data. | |
| long | get2DDistributionI (const ibis::column &col1, const ibis::column &col2, uint32_t nb1, uint32_t nb2, std::vector< double > &bounds1, std::vector< double > &bounds2, std::vector< uint32_t > &counts) const |
| Compute 2D histogram from indexes. | |
| long | get2DDistributionU (const ibis::column &col1, const ibis::column &col2, uint32_t nb1, uint32_t nb2, std::vector< double > &bounds1, std::vector< double > &bounds2, std::vector< uint32_t > &counts) const |
| Compute 2D histogram with uniform bins from base data. | |
| void | logError (const char *event, const char *fmt,...) const |
| Write out a message with indication of severe error. | |
| void | makeBackupCopy () |
Spawn another thread to copy the content of activeDir to backupDir. | |
| template<typename T> | |
| long | negativeCompare (const char *file, const ibis::bitvector &mask, ibis::bitvector &hits, const ibis::qRange &cmp) const |
| template<typename T> | |
| long | negativeCompare (const array_t< T > &array, const ibis::bitvector &mask, ibis::bitvector &hits, const ibis::qRange &cmp) const |
| void | numbersToBitvector (const std::vector< uint32_t > &, ibis::bitvector &) const |
| Convert a set of numbers to an ibis::bitvector. | |
| long | old2DDistribution (const char *constraints, const char *name1, const char *name2, uint32_t nb1, uint32_t nb2, std::vector< double > &bounds1, std::vector< double > &bounds2, std::vector< uint32_t > &counts) const |
| The old implementation that uses binary lookup. | |
| long | packCumulativeDistribution (const std::vector< double > &bounds, const std::vector< uint32_t > &counts, uint32_t nbc, double *bptr, uint32_t *cptr) const |
| Pack a cumulative distribution stored in two std::vectors into two arrays provided by the caller. | |
| long | packDistribution (const std::vector< double > &bounds, const std::vector< uint32_t > &counts, uint32_t nbc, double *bptr, uint32_t *cptr) const |
| Pack a binned distribution. | |
| long | reactivate (const ibis::bitvector &rows) |
Mark the rows identified in rows as active. | |
| void | readMeshShape (const char *const dir) |
| Read shape of the mesh from tdc file. | |
| void | readRIDs () const |
| Read RIDs from file 'rids'. | |
| int | readTDC (size_t &nrows, columnList &plist, const char *dir) |
| Read TDC file. | |
| template<typename T> | |
| long | reorderValues (const char *fname, const array_t< uint32_t > &indin, array_t< uint32_t > &indout, array_t< uint32_t > &starts) |
| Write the named data file in a segmented sorted order. | |
| void | setMetaTags (const std::vector< const char * > &mts) |
| Make a deep copy of the incoming name-value pairs. | |
| void | setMetaTags (const ibis::resource::vList &mts) |
| Make a deep copy of the incoming name-value pairs. | |
| void | stringToBitvector (const char *, ibis::bitvector &) const |
| Convert a set of range conditions to an ibis::bitvector. | |
| long | verifyBackupDir () |
| void | writeTDC (const uint32_t nrows, const columnList &plist, const char *dir) const |
| Write TDC file. | |
| template<typename T> | |
| long | writeValues (const char *fname, const array_t< uint32_t > &ind) |
| Write the named data file with values in the given order. | |
Static Protected Member Functions | |
| template<typename T1, typename T2> | |
| static void | adaptive2DBins (const array_t< T1 > vals1, const array_t< T2 > vals2, uint32_t nb1, uint32_t nb2, std::vector< double > &bounds1, std::vector< double > &bounds2, std::vector< uint32_t > &counts) |
| Adaptive binning through initial uniform bins. | |
| template<typename T> | |
| static void | adaptiveFloats (const array_t< T > &vals, const T vmin, const T vmax, uint32_t nbins, std::vector< double > &bounds, std::vector< uint32_t > &counts) |
| The adaptive binning function for floats. | |
| template<typename T> | |
| static void | adaptiveInts (const array_t< T > &vals, const T vmin, const T vmax, uint32_t nbins, std::vector< double > &bounds, std::vector< uint32_t > &counts) |
| The adaptive binning function for integer values. | |
| template<typename T> | |
| static void | equalWeightBins (const array_t< T > &vals, uint32_t nbins, array_t< T > &bounds) |
| template<typename T> | |
| static void | mapValues (const array_t< T > &vals, std::map< T, uint32_t > &hist) |
| template<typename E1, typename E2> | |
| static void | mapValues (array_t< E1 > &val1, array_t< E2 > &val2, uint32_t nb1, uint32_t nb2, array_t< E1 > &bnd1, array_t< E2 > &bnd2, std::vector< uint32_t > &cnts) |
| The templated function to decide the bin boundaries and count the number of values fall in each bin. | |
Protected Attributes | |
| char * | activeDir |
| The active data directory. | |
| ibis::bitvector | amask |
| Active rows are maked 1. | |
| char * | backupDir |
| The backup data directory. | |
| std::vector< const column * > | colorder |
| An ordering of columns. | |
| columnList | columns |
| List of the columns. | |
| char * | idxstr |
| Index specification. | |
| char * | m_desc |
| Free form description of the partition. | |
| char * | m_name |
| Name of the data partition. | |
| ibis::resource::vList | metaList |
| Meta tags as name-value pairs. | |
| ibis::part::cleaner * | myCleaner |
| The cleaner for the file manager. | |
| size_t | nEvents |
| Number of events (rows) in the partition. | |
| array_t< rid_t > * | rids |
| The object IDs (row id). | |
| std::vector< std::string > | shapeName |
| Names of the dimensions. | |
| std::vector< uint32_t > | shapeSize |
| Sizes of the dimensions. | |
| TABLE_STATE | state |
| time_t | switchTime |
| Time of last switch operation. | |
Friends | |
| class | advisoryLock |
| class | cleaner |
| struct | info |
| class | mutexLock |
| class | readLock |
| class | writeLock |
Classes | |
| class | advisoryLock |
| An non-blocking version of writeLock. More... | |
| class | barrel |
| To read a list of variables at the same time. More... | |
| class | cleaner |
| A cleaner to be used by the fileManager::unload function. More... | |
| struct | indexBuilderPool |
| struct | info |
| A simple class to describe an ibis::part object. More... | |
| class | mutexLock |
| Provide a mutual exclusion lock on an ibis::part object. More... | |
| class | readLock |
| Provide a read lock on an ibis::part. More... | |
| struct | thrArg |
| class | vault |
| To read variables in certain order. More... | |
| class | writeLock |
| Provide a write lock on an ibis::part. More... | |
The current implementation is designed to work with vertically partitioned data files. This class contains common information and operations on a partition.
| ibis::part::part | ( | const char * | prefix = 0 |
) | [explicit] |
Initialize a data partition object.
The default prefix (NULL) tells it to use names in global namespace of the resource list (ibis::gParameters).
Use ibis::gParameters to get the file names.
When a valid string is specified, it looks for data directory names under 'prefix.dataDir1=aaaa' and 'prefix.dataDir2=bbbb'.
| ibis::part::part | ( | const char * | adir, | |
| const char * | bdir | |||
| ) |
Initialize a table from the named directories.
Construct a partition from the named directories.
Prefer to have full and complete path.
Originally, FastBit was designed to work with a pair of directories, adir and bdir. Normally, data is stored only in one directory, specify the directory as adir and leave bdir as null.
References activeDir, ibis::fileManager::addCleaner(), ibis::bitvector::adjustSize(), amask, backupDir, ibis::util::logger::buffer(), ibis::bitvector::cnt(), columns, ibis::fileManager::flushFile(), ibis::gParameters(), ibis::gVerbose, ibis::fileManager::instance(), ibis::resource::isStringTrue(), m_desc, m_name, myCleaner, nEvents, print(), ibis::bitvector::read(), readRIDs(), readTDC(), rids, ibis::bitvector::set(), ibis::bitvector::size(), switchTime, and ibis::bitvector::write().
| ibis::part::part | ( | const std::vector< const char * > & | mtags | ) |
Initialize a partition with given meta tags.
The meta tags are specified as a list of name-value strings, where each string in one name-value pair.
References genName(), and setMetaTags().
| ibis::part::part | ( | const ibis::resource::vList & | mtags | ) |
Initialize a partition with given meta tags.
The name-value pairs are specified in a structured form.
References genName(), and setMetaTags().
| void ibis::part::adaptive2DBins | ( | const array_t< T1 > | vals1, |
| cons |