Bureaucrats, developer, Administrators
9,867
edits
(link to w:database models) |
(fix introductory paragraph links to be internal, Wikipedia ones are there. fix headings once again, this time pluralizing) |
||
Line 1: | Line 1: | ||
'''This article is about choice of database models and implementations.''' | '''This article is about choice of database models and implementations.''' | ||
''' Types of databases of interest''' | ''' Types of databases of interest being evaluated''' | ||
* [[ | * [[#Relational databases|Relational database]] provided by a [[w:RDBMS|RDBMS]] and queried with [[w:SQL|SQL]]. Track-proven technology. | ||
* [[ | * [[#NoSQL databases|NoSQL]]-type databases, ( "Not Only SQL" or have your pick on the other supposed significations ) variates include among others: | ||
** [[ | ** [[#Subject-predicate-object databases|Subject-predicate-object databases]] are implemented by [[w:graph databases|graph databases]], specialized native [[w:Triplestore|triplestore]]s and piggy-packing solutions that use an RDBMS to store and query the triplets and the networks they compose. | ||
** [[ | ** [[#Graph databases|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|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. | ||
All of these may be used to store semantic data though advantages and disadvantages vary depending on task at hand. | All of these may be used to store semantic data though advantages and disadvantages vary depending on task at hand. | ||
Line 18: | Line 18: | ||
* Minimal modifications required could be another preference as that means maintenance of the chosen solution is minimized in that aspect. | * Minimal modifications required could be another preference as that means maintenance of the chosen solution is minimized in that aspect. | ||
== Relational | == Relational databases == | ||
Relational databases work by storing data in [[w:Table (database)|tabular form]] where [[w:column (database)|columns]] represent data items of predetermined type and [[w:row (database)|rows]] represent the values each "item" has. Relational databases are accessed mainly with [[w:SQL|SQL]] ( Structured Query Language ). However the RDBMS converts that into [[w:relational algebra|relational algebra]] and optimizes that and the relational algebra query actually returns the result table that has those columns and rows you requested. | Relational databases work by storing data in [[w:Table (database)|tabular form]] where [[w:column (database)|columns]] represent data items of predetermined type and [[w:row (database)|rows]] represent the values each "item" has. Relational databases are accessed mainly with [[w:SQL|SQL]] ( Structured Query Language ). However the RDBMS converts that into [[w:relational algebra|relational algebra]] and optimizes that and the relational algebra query actually returns the result table that has those columns and rows you requested. | ||
Line 41: | Line 41: | ||
---- | ---- | ||
=== Subject-predicate-object | === Subject-predicate-object databases === | ||
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. | 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. | ||
Line 65: | Line 65: | ||
---- | ---- | ||
=== Graph | === Graph databases === | ||
A [[w:graph database|graph database]] stores and queries [[w:Graph (abstract data type)|graphs]]. | A [[w:graph database|graph database]] stores and queries [[w:Graph (abstract data type)|graphs]]. | ||
Line 78: | Line 78: | ||
---- | ---- | ||
=== Object | === Object databases === | ||
{{Q|An object database stores complex data and relationships between data directly, without mapping to relational rows and columns, and this makes them suitable for applications dealing with very complex data.|Wikipedia|[[w:Object_database#Comparison_with_RDBMSs|functional difference between object and relational databases]]}} | {{Q|An object database stores complex data and relationships between data directly, without mapping to relational rows and columns, and this makes them suitable for applications dealing with very complex data.|Wikipedia|[[w:Object_database#Comparison_with_RDBMSs|functional difference between object and relational databases]]}} | ||
''' Lists of object databases ''' | ''' Lists of object databases ''' | ||
* [[w:Object_database#Timeline|Wikipedia's list of object databases by publication date.]] | * [[w:Object_database#Timeline|Wikipedia's list of object databases by publication date.]] |