strus  0.17
Classes | Typedefs | Functions
strus Namespace Reference

strus toplevel namespace More...

Classes

class  AclReaderInterface
 Interface for accessing document attributes from a strus storage. More...
 
class  AttributeReaderInterface
 Interface for accessing document attributes from a strus storage. More...
 
struct  Constants
 Some reserved global constants that document some dependencies (hacks) that did not get yet into interfaces (and probably never will). More...
 
class  DatabaseBackupCursorInterface
 Database cursor interface that can be used for backup. More...
 
class  DatabaseClientInterface
 Interface for accessing the strus key value storage database. More...
 
class  DatabaseCursorInterface
 Interface to database cursor. More...
 
class  DatabaseInterface
 Interface to the create,destroy the key value store database. More...
 
class  DatabaseOptions
 Structure for passing some options to the strus key value storage database. More...
 
class  DatabaseTransactionInterface
 Interface for transactions for writing on the strus key value storage database. More...
 
class  DocumentTermIteratorInterface
 Structure that allows to iterate on document term occurrencies. More...
 
class  ForwardIteratorInterface
 Iterator on the forward index mapping occurrencies to the terms inserted. More...
 
class  FunctionDescription
 Structure that describes a function (weighting or summarizer function) for introspection. More...
 
struct  GlobalStatistics
 Global document statistics, if passed down with the query. More...
 
class  IndexRange
 
class  InvAclIteratorInterface
 Iterator of sets of documents used to implement ACL access restrictions. More...
 
class  MetaDataReaderInterface
 Interface for accessing meta data from a strus storage. More...
 
class  MetaDataRestrictionInstanceInterface
 Class for building up a metadata restriction. More...
 
class  MetaDataRestrictionInterface
 Class for building up a metadata restriction. More...
 
class  PostingIteratorInterface
 Structure that represents a set of feature occurrencies (postings) as iterator. More...
 
class  PostingJoinOperatorInterface
 Interface for creating iterators on joined sets of postings. More...
 
class  QueryEvalInterface
 Defines a query evaluation scheme. More...
 
class  QueryInterface
 Defines a strus information retrieval query. More...
 
class  QueryProcessorInterface
 Defines all object instances involved in query evaluation addressable by name. More...
 
class  QueryResult
 Structure defining the result of a strus query. More...
 
class  ResultDocument
 Structure defining one result element of a strus query. More...
 
class  ScalarFunctionInstanceInterface
 Interface for parameterizing a scalar function. More...
 
class  ScalarFunctionInterface
 Interface for a scalar function type. More...
 
class  ScalarFunctionParserInterface
 Interface for parsing scalar function definitions. More...
 
class  StatisticsBuilderInterface
 Interface for a builder for a statistics message (distributed index) More...
 
class  StatisticsIteratorInterface
 Interface for an iterator on statistics. More...
 
class  StatisticsProcessorInterface
 Interface for packing/unpacking messages with statistics used for query evaluation. More...
 
class  StatisticsViewerInterface
 Interface for a viewer of a statistics message (distributed index) More...
 
class  StorageAlterMetaDataTableInterface
 Interface to declare changes in the meta data table structure of the storage. More...
 
class  StorageClientInterface
 Interface of a strus IR storage. More...
 
class  StorageDocumentInterface
 Object to declare all items for one insert/replace of a document in the storage. More...
 
class  StorageDocumentUpdateInterface
 Object to declare the items for an update of a document in the storage. More...
 
class  StorageDumpInterface
 Interface for fetching the dump of a strus IR storage. More...
 
class  StorageInterface
 Interface to the create and alter a storage for strus. More...
 
class  StorageObjectBuilderInterface
 Interface providing a mechanism to create complex multi component objects for the storage and the query evaluation. More...
 
class  StorageTransactionInterface
 Object to declare all items for one insert/update of a document in the storage. More...
 
class  StructIteratorInterface
 Structure that represents relations of position info index ranges (directed graph) per document. More...
 
class  SummarizationVariable
 Structure describing a variable referencing a named match of a subexpression. Variables are attached to features used for summarization. More...
 
class  SummarizerFunctionContextInterface
 Interface for the summarization execution context. More...
 
class  SummarizerFunctionInstanceInterface
 Interface for a parameterized instance of summarization. More...
 
class  SummarizerFunctionInterface
 Interface for summarization functions (additional info about the matches in the result ranklist of a retrieval query) More...
 
class  SummaryElement
 One result element of summarization. More...
 
class  TermStatistics
 Global term statistics, if passed down with the query. More...
 
class  TermStatisticsChange
 Structure describing the change of statistics of one term in the collection. More...
 
class  ValueIteratorInterface
 Structure that represents a set of strings as iterator. More...
 
class  VectorQueryResult
 Result of a vector similarity search (associated feature value with weight) More...
 
class  VectorStorageClientInterface
 Interface to a repository for vectors representing word embeddings. More...
 
class  VectorStorageDumpInterface
 Interface for fetching the dump of a strus vector storage. More...
 
class  VectorStorageInterface
 Interface for storing an retrieving vectors of floating point numbers representing word embeddings. More...
 
class  VectorStorageTransactionInterface
 Interface for building a repository of vectors with classifiers to map them to discrete features. More...
 
class  WeightedDocument
 Pure ranking result of a strus query without the attributes. More...
 
class  WeightingFunctionContextInterface
 Interface for a weighting function with its state and context used during calculation. More...
 
class  WeightingFunctionInstanceInterface
 Interface for a parameterized weighting function instance. More...
 
class  WeightingFunctionInterface
 Interface for a weighting function that can be used for ranking in the query evaluation. More...
 

Typedefs

typedef int32_t Index
 Number type generally used for locally counted indices. More...
 
typedef int64_t GlobalCounter
 Number type generally used for indices globally shared between different instances of strus. More...
 
typedef std::vector< float > WordVector
 

Functions

DatabaseInterfacecreateDatabaseType_leveldb (const std::string &workdir, ErrorBufferInterface *errorhnd)
 Get the database interface implemented with leveldb with the functions for accessing the key/value store database. More...
 
QueryEvalInterfacecreateQueryEval (ErrorBufferInterface *errorhnd)
 Create a parameterizable instance of a query evaluation scheme. More...
 
QueryProcessorInterfacecreateQueryProcessor (const FileLocatorInterface *filelocator, ErrorBufferInterface *errorhnd)
 Create a query processor with the functions and operators needed for query evaluation. More...
 
ScalarFunctionParserInterfacecreateScalarFunctionParser_default (ErrorBufferInterface *errorhnd)
 Create an interface to the default scalar function parser. More...
 
StatisticsProcessorInterfacecreateStatisticsProcessor (ErrorBufferInterface *errorhnd)
 
StorageInterfacecreateStorageType_std (const std::string &workdir, ErrorBufferInterface *errorhnd)
 
StorageObjectBuilderInterfacecreateStorageObjectBuilder_default (const FileLocatorInterface *filelocator, ErrorBufferInterface *errorhnd)
 Create a storage object builder with the builders from the standard strus core libraries (without module support) More...
 
StorageAlterMetaDataTableInterfacecreateAlterMetaDataTable (const StorageObjectBuilderInterface *objbuilder, ErrorBufferInterface *errorhnd, const std::string &config)
 Create a alter metadata table interface with the object builder passed. More...
 
StorageClientInterfacecreateStorageClient (const StorageObjectBuilderInterface *objbuilder, ErrorBufferInterface *errorhnd, const std::string &config)
 Create a storage client interface with the object builder passed. More...
 
VectorStorageClientInterfacecreateVectorStorageClient (const StorageObjectBuilderInterface *objbuilder, ErrorBufferInterface *errorhnd, const std::string &config)
 Create a vector storage client interface with the object builder passed. More...
 
bool load_queryeval_program (QueryEvalInterface &qeval, const std::vector< std::string > &analyzerterms, const QueryProcessorInterface *qproc, const std::string &source, ErrorBufferInterface *errorhnd)
 Load a query evaluation program from source. More...
 
int load_metadata_assignments (StorageClientInterface &storage, const std::string &metadataName, const std::multimap< std::string, strus::Index > *attributemapref, const std::string &file, int commitSize, ErrorBufferInterface *errorhnd)
 Load some meta data assignments for a storage from a stream. More...
 
int load_attribute_assignments (StorageClientInterface &storage, const std::string &attributeName, const std::multimap< std::string, strus::Index > *attributemapref, const std::string &file, int commitSize, ErrorBufferInterface *errorhnd)
 Load some attribute assignments for a storage from a stream. More...
 
int load_user_assignments (StorageClientInterface &storage, const std::multimap< std::string, strus::Index > *attributemapref, const std::string &file, int commitSize, ErrorBufferInterface *errorhnd)
 Load some user rights assignments for a storage from a stream. More...
 
bool load_vectors (VectorStorageClientInterface *vstorage, const std::string &vectorfile, bool networkOrder, char typeValueSeparator, int commitSize, ErrorBufferInterface *errorhnd)
 Adds the feature definitions in the file (word2vec text or binary format) given by a path to a vector storage. More...
 

Detailed Description

strus toplevel namespace

Vector repository transaction implementation.

Interface for vector storage operations needed for efficient similar vector retrieval in the strus storage.

Client interface for mapping vectors of floating point numbers of a given dimension to a list of features.

Interface for building up metadata restrictions.

Interface for a metadata restriction instance.

Typedef Documentation

Number type generally used for indices globally shared between different instances of strus.

Number type generally used for locally counted indices.

typedef std::vector<float> strus::WordVector

Function Documentation

StorageAlterMetaDataTableInterface* strus::createAlterMetaDataTable ( const StorageObjectBuilderInterface *  objbuilder,
ErrorBufferInterface *  errorhnd,
const std::string &  config 
)

Create a alter metadata table interface with the object builder passed.

Parameters
[in]objbuilderobject builder
[in]errorhnderror buffer interface
[in]configobject configuration (source, not a filename)
DatabaseInterface* strus::createDatabaseType_leveldb ( const std::string &  workdir,
ErrorBufferInterface *  errorhnd 
)

Get the database interface implemented with leveldb with the functions for accessing the key/value store database.

Returns
the database interface
QueryEvalInterface* strus::createQueryEval ( ErrorBufferInterface *  errorhnd)

Create a parameterizable instance of a query evaluation scheme.

Returns
the program reference
QueryProcessorInterface* strus::createQueryProcessor ( const FileLocatorInterface *  filelocator,
ErrorBufferInterface *  errorhnd 
)

Create a query processor with the functions and operators needed for query evaluation.

Returns
the allocated processor
ScalarFunctionParserInterface* strus::createScalarFunctionParser_default ( ErrorBufferInterface *  errorhnd)

Create an interface to the default scalar function parser.

StatisticsProcessorInterface* strus::createStatisticsProcessor ( ErrorBufferInterface *  errorhnd)
StorageClientInterface* strus::createStorageClient ( const StorageObjectBuilderInterface *  objbuilder,
ErrorBufferInterface *  errorhnd,
const std::string &  config 
)

Create a storage client interface with the object builder passed.

Parameters
[in]objbuilderobject builder
[in]errorhnderror buffer interface
[in]configobject configuration (source, not a filename)
StorageObjectBuilderInterface* strus::createStorageObjectBuilder_default ( const FileLocatorInterface *  filelocator,
ErrorBufferInterface *  errorhnd 
)

Create a storage object builder with the builders from the standard strus core libraries (without module support)

Parameters
[in]filelocatorinterface to get paths of resource files and the working directory
[in]errorhnderror buffer interface
StorageInterface* strus::createStorageType_std ( const std::string &  workdir,
ErrorBufferInterface *  errorhnd 
)
VectorStorageClientInterface* strus::createVectorStorageClient ( const StorageObjectBuilderInterface *  objbuilder,
ErrorBufferInterface *  errorhnd,
const std::string &  config 
)

Create a vector storage client interface with the object builder passed.

Parameters
[in]objbuilderobject builder
[in]errorhnderror buffer interface
[in]configobject configuration (source, not a filename)
int strus::load_attribute_assignments ( StorageClientInterface &  storage,
const std::string &  attributeName,
const std::multimap< std::string, strus::Index > *  attributemapref,
const std::string &  file,
int  commitSize,
ErrorBufferInterface *  errorhnd 
)

Load some attribute assignments for a storage from a stream.

Parameters
[in,out]storagethe storage to instrument
[in]attributeNamename of the attribute to assign
[in]attributemaprefmap that maps the update key to a list of document numbers to update (NULL, if the docid or docno is the key)
[in]filethe file to read from
[in]commitSizenumber of documents to update until an implicit commit is called (0 => no implicit commit)
[in,out]errorhndbuffer for reporting errors (exceptions)
Returns
the number of documents (non distinct) updated
int strus::load_metadata_assignments ( StorageClientInterface &  storage,
const std::string &  metadataName,
const std::multimap< std::string, strus::Index > *  attributemapref,
const std::string &  file,
int  commitSize,
ErrorBufferInterface *  errorhnd 
)

Load some meta data assignments for a storage from a stream.

Parameters
[in,out]storagethe storage to instrument
[in]metadataNamename of the meta data field to assign
[in]attributemaprefmap that maps the update key to a list of document numbers to update (NULL, if the docid or docno is the key)
[in]filethe file to read from
[in]commitSizenumber of documents to update until an implicit commit is called (0 => no implicit commit)
[in,out]errorhndbuffer for reporting errors (exceptions)
Returns
the number of documents (non distinct) updated
bool strus::load_queryeval_program ( QueryEvalInterface &  qeval,
const std::vector< std::string > &  analyzerterms,
const QueryProcessorInterface *  qproc,
const std::string &  source,
ErrorBufferInterface *  errorhnd 
)

Load a query evaluation program from source.

Parameters
[in,out]qevalquery evaluation interface to instrument
[in,out]qdescrquery descriptors to instrument
[in]analyzertermsquery terms configured in the query analysis configuration
[in]sourcesource string (not a file name!) to parse
[in,out]errorhndbuffer for reporting errors (exceptions)
Returns
true on success, false on failure
int strus::load_user_assignments ( StorageClientInterface &  storage,
const std::multimap< std::string, strus::Index > *  attributemapref,
const std::string &  file,
int  commitSize,
ErrorBufferInterface *  errorhnd 
)

Load some user rights assignments for a storage from a stream.

Parameters
[in,out]storagethe storage to instrument
[in]attributemaprefmap that maps the update key to a list of document numbers to update (NULL, if the docid or docno is the key)
[in]filethe file to read from
[in]commitSizenumber of documents to update until an implicit commit is called (0 => no implicit commit)
[in,out]errorhndbuffer for reporting errors (exceptions)
Returns
the number of documents (non distinct) updated
bool strus::load_vectors ( VectorStorageClientInterface *  vstorage,
const std::string &  vectorfile,
bool  networkOrder,
char  typeValueSeparator,
int  commitSize,
ErrorBufferInterface *  errorhnd 
)

Adds the feature definitions in the file (word2vec text or binary format) given by a path to a vector storage.

Parameters
[in]vstoragevector storage object where to add the loaded vectors to
[in]vectorfilePath of the file to parse, either a google binary vector file format or text
[in]networkOrdertrue, if the vector elements are stored in platform independent network order (hton).
[in]typeValueSeparatorcharacter separating type and value in a word2vec vector identifier, 0 if untyped
[in]commitSizenumber of vectors to insert/update until an implicit commit is called (0 => no implicit commit)
[in,out]errorhndbuffer for reporting errors (exceptions)
Returns
true on success