nmdb - A multiprotocol network database manager Alberto Bertogli (albertito@gmail.com) --------------------------------------------------- nmdb is a network database that can use several protocols to communicate with it's clients. At the moment, it supports TIPC, TCP and UDP. It consists of an in-memory cache, that saves (key, value) pairs, and a persistent backend that stores the pairs on disk. Both work combined, but the use of the persistent backend is optional, so you can use the server only for cache queries, pretty much like memcached. This source distribution is composed of several parts: the server called "nmdb", the library and bindings for Python, D and NewLISP. Each one has a separate directory, and is licensed individually. See the LICENSE file for more information. Documentation ------------- Most documentation is in the nmdb and libnmdb manpages, and inside the doc/ directory. It is recommended that you read the User Guide (doc/guide.rst, or the online version) to learn how to setup and use nmdb. For additional documentation and resources, go to the project's website at http://auriga.wearlab.de/~alb/nmdb. How to compile, test and install -------------------------------- General requisites: * libevent (http://www.monkey.org/~provos/libevent/). * qdbm (http://qdbm.sf.net/). Requisites to enable TIPC: * Running Linux kernel >= 2.6.16 with TIPC enabled. * Kernel headers also >= 2.6.16. Alternatively, you can run a TIPC patched kernel, and have the tipc.h header somewhere in the include path. To compile the server and the library, you can just use "make" on the top level directory. To install them, use "make install". By default, all protocols are enabled, including TIPC. To disable any of them, run something like "make ENABLE_TIPC=0". To run some tests, start the server and then go to the "tests/c/" directory. Run "make.sh build" and then run any of the generated tests. To compile the Python bindings, you need to have the library already installed. Use "make python_install" at the top level directory to build and install the modules. The module will be named "nmdb". Where to report bugs -------------------- Please report any bugs, suggestions, issues or comments to me, Alberto Bertogli, at albertito@gmail.com.