OpenCog Framework
Branch: master, revision 6f0b7fc776b08468cf1b74aa9db028f387b4f0c0
|
The directory opencog/persist groups various libraries that allow storing atomspaces or part of it to persistent storage devices. These include:
In this context, it is worth reading Distributed Architecture RFC. This page is a high level overview; to dig into the details read the comprehensive overview.
To build it, use:
The library does NOT use the modern BackingStore interface from atomspace library. SavingLoading is the main class for the library. It is able to save() and load() all atoms from an AtomSpace to a file and uses list of pairs - names and SavableRepository instances amendable with addSavableRepository(). Such repositories are TimeServerSavable and SpaceServerSavable.
CompositeRenumber updates all VersionHandles of the versioned TVs in this object using the HandleMap passed as argument. It makes use of CoreUtils - the class for including any core-specific common utilities .
To build it, use:
Dependencies:
The library uses the modern BackingStore interface from atomspace library to handle IO requests in AtomspaceHTabler class. See wiki page for implementation notes.
The library is not part of the tree generated by cmake and is NOT using the modern BackingStore interface from atomspace library. It is an experimental prototype for opencog persistence, making use of the memcache API, and the memcachedb daemon.
At this time, development in this directory has been abandoned.
To build it, use:
Dependencies:
The library does NOT use the modern BackingStore interface from atomspace library. It has an AtomStorage that makes use of ODBCConnection and ODBCRecordSet to do its job. PersistModule provides commands (sql-open, sql-close, sql-load, sql-store) as a Module for interactive use.
The core design defines only a few very simple SQL tables, and some simple readers and writers to save and restore atoms from an SQL database. The current design can save/restore individual atoms, and it can bulk-save/bulk-restore the entire contents of an AtomTable.
To build it, use:
Dependencies:
The library does NOT use the modern BackingStore interface from atomspace library.
XMLBufferReader is the interface that requires open(), read() and close(). StringXMLBufferReader and FileXMLBufferReader implement this interface.
NMXmlExporter's method toXML() exports a subset of the AtomSpace to XML. NMXmlParser, on the other hand, implements an XML parser that reads XML files and inserts the corresponding structure of nodes and links in the AtomSpace.
Previous | Next |