Databases and the D Standard Library

Mark via Digitalmars-d digitalmars-d at puremagic.com
Sun Jan 1 12:28:43 PST 2017


On Sunday, 1 January 2017 at 03:24:31 UTC, Adam Wilson wrote:
> 2. There are so many different types of data storage systems, 
> how do you design a system generic enough for all of them?
>
> My answer: You don't. Nobody else has bothered trying, and I 
> believe that our worry over that question is a large part of 
> why we don't have anything substantive today.
>
> My idea: Split the data storage systems out by category of 
> data-store.
> For example:
> 	- SQL: std.database.sql (PostgreSQL, MySQL, MSSQL, etc.)
> 	- Document: std.database.document (Mongo, CouchDB, etc.)
> 	- Key-Value: std.database.keyvalue (Redis, etcd2, etc.)

I think that these can all be seen as special cases of a 
hypegraph database. So on the face of it you probably can build 
some common interface (apparently the fellows in hypergraphdb.org 
are trying to do something in this spirit). You can then have 
specialized interfaces inheriting from it. But given how general 
hypergraph dbs are,  I'm not sure if this is a worthwhile 
abstraction.

By the way, what about XML? The documentaion on std.xml says that 
the module will be replaced at some point in the future. I wonder 
when and with what...


More information about the Digitalmars-d mailing list