Databases and the D Standard Library

Adam Wilson via Digitalmars-d digitalmars-d at puremagic.com
Sun Jan 1 17:29:53 PST 2017


Mark wrote:
> 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.
>

My experience with graph DB's is that the reality has never been 
anywhere close to the hype. I don't think it's a worthwhile abstraction. 
But that is my opinion. And if it is, we should be able to add it over 
the top of this layer if we really want too.

> 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...

I have no idea. It's a great question! That said it's a bit outside the 
scope of this topic. :)

-- 
Adam Wilson
IRC: LightBender
//quiet.dlang.dev


More information about the Digitalmars-d mailing list