DataStore Tree Structure

All DataElements are stored (internally) in the DataStore in a tree structure.

Descriptor Root [Schema]

All DataElements have a type attribute which references a descriptor object in the schema. Each miner will create the descriptor objects it requires. Since descriptor objects are them selves DataElements they also need a type. The DataStore provides the following basic types for creating new descriptor objects in the schema:

  • DE.T_OBJECT_DESCRIPTOR
  • DE.T_COMMAND_DESCRIPTOR
  • DE.T_RELATION_DESCRIPTOR
Host root

The host root is intended by the DataStore as a starting point for browsing host system data. Miners create the actual data objects in the miner data tree and create links from the host root to the data objects to facilitate browsing by the user. We are not using the host root subtree since our users will not be directly navigating the DataStore tree from the user interface (we have created our own user interface with a thin layer of code between the UI and DataStore which handles navigation and browsing.)

Log Root

Central place for logging DataStore commands, actions and other information.

Miner Root

The file minerFile.dat stores a list of all miners the DataStore should load and use at runtime. Each line of this text file specifies the class name for a miner to be loaded. For example:

com.ibm.dstore.miners.filesystem.FileSystemMiner
com.ibm.dstore.miners.command.CommandMiner
com.ibm.cpp.miners.search.SearchMiner
com.ibm.cpp.miners.parser.ParseMiner
com.ibm.dstore.miners.test.TestMiner
For each Miner loaded by the DataStore, a unique miner element is created under the miner root. In turn each miner element has three children; data, state and transient. All data objects created by the Miner (or created by the front-end on behalf of the Miner) should only be created in the Miner s data subtree. The specific layout of this subtree may be unique for each Miner and is outlined in the Miners documentation.
Unique Identifiers

DataElement ids should be considered as internal use only by the DataStore and MUST NOT be used in Miners or front-end code.

Contact Us