Databases
This article is about choice of database models and implementations.
Copyleft free to modify and free in cost software is strongly preferred over other solutions. Minimal modifications required could be another preference as that means maintenance of the chosen solution is minimized in that aspect.
Known types of databases
- Relational database provided by a RDBMS and queried with SQL. Track-proven technology.
- Subject-predicate-object database are provided by graph databases, specialized native triplestores and piggy-packing solutions that use an RDBMS to store and query the triplets and the networks they compose.
- Graph databases would intuitively appear more advanced than using RDF-triplet composed semantic networks but are not much different on the outside. Both jump through the same hoops but with different efficiency and grace.
- Object databases are old but on the rise with NoSQL-based thinking and the modern needs, like leanness, real-time need and scaleability for which the other solutions might be too limiting.
Relational database
Together Consumerium and Consumium run all the 3 major free full fledged RDBMS there are:
- w:MariaDB, a binary compatible drop-in replacement for MySQL that provides some technical advantages and the warm feeling that this is a fork of MySQL by the original MySQL AB founders.
- w:MySQL, the most widely known of free databases powering this Development Wiki
- w:PostgreSQL powering the https://media.consumium.org w:GNU MediaGoblin
Subject-predicate-object database
Subject-predicate-object databases basically construct w:semantic networks from interlinked atomic units called a w:triplet so they are not fundamentally different from graph databases in functionality and utility offered.
These networks may be queried with a suitable query language such as w:SPARQL which in practice allows you to compose semantic queries.
Relevant subject-predicate-object database powered systems to interoperate with
Things to consider in selection of triplestore
A w:triplestore maybe a native implementation from ground up or be standing on the shoulders of a standard RDBMS system where actual w:SQL is formulated by the interpreter and then queried from SQL. This probably has upsides and downsides.
Lists and comparisons of subject-predicate-object databases and SPARQL implementations
Graph database
A graph database stores and queries graphs which can be stored in and constructed from RDF triplets so they are quite alike and overlapping in functionality offered but the query performance varies (see talk page for more).