33 lines
1.4 KiB
Plaintext
33 lines
1.4 KiB
Plaintext
dddb (Distributed DisVM Database) is a WIP RDBMS, aimed
|
|
to run on DisVM, hosted or native.
|
|
|
|
TODO Components and functionalities
|
|
|
|
* dddbctl fs - authenticated 9p fs to control, request, and query
|
|
operations related to the database instance; it
|
|
is the main driver for grid database
|
|
* dddbclient fs - the tcp port 'dddb' is used such that clients
|
|
can have a fs in which queries can be opened;
|
|
it will support ANSI SQL
|
|
* db registry - each instance will, on startup, connect to
|
|
other instances defined in an ndb configuration
|
|
file, register itself in that instance, and
|
|
will be able to use it for: duplicating data,
|
|
sharding data, and mount further instances;
|
|
(i.e if a cluster is behind a firewall, and
|
|
only one instance exposed, the hidden ones
|
|
can be mounted outside the fw)
|
|
* data structures (1) - primitives, pages, sections, indices,
|
|
tables, rows
|
|
* data structures (2) - B-trees, Bloom filters
|
|
* storage operations - a mounted directory tree will be used
|
|
for RDRW operations; memfs will be used
|
|
for caching the data in RAM (performance?)
|
|
* venti/vac support - venti + vac + memfs should suffice for
|
|
storing and persisting data (ramfossil-like);
|
|
this means scripts will clean and archive it
|
|
* SQL parser - obviously
|
|
* statement optimizer - obviously
|
|
* wm/dddbmon - a nice admin monitor would be nice
|
|
* dddbjdbc/dddbodbc - JDBC and ODBC drivers are mandatory
|