Methods and Systems for Flexible and Scalable Databases
Publication Date: 2012-Jun-26
The IP.com Prior Art Database
Methods and systems for utilizing a database are disclosed. The methods and systems determine a key representative of a storage location of first RDF data in a NoSQL database. In addition, the methods and systems read the first RDF data in the NoSQL database using the key. The methods and systems also write second RDF data derived from the first RDF data into a second database stored in memory. The methods and systems may also modify the second RDF data, and write third RDF data derived from the modified second RDF data into the NoSQL database.
methods and systems for flexible and scalable databases
 The present disclosure relates to the field of database flexibility and scalability and, more particularly, methods and systems for utilizing NoSQL and the Resource Description Framework (RDF) to achieve database flexibility and scalability.
 The Resource Description Framework (RDF) is a standard model for data interchange on the Internet. RDF allows for data expressions to be made in the form of triples. An RDF triple contains three components: a subject, a predicate, and an object. A subject in an RDF triple indicates what resource is described by the triple. A predicate in an RDF triple indicates characteristics of the resource, and may provide a relationship between the resource and the object of the RDF triple. For example, in the context of customer billing, the subject in an RDF triple could be an account, the predicate in the RDF triple could be an account balance, and the object in the RDF triple could be a numerical value reflecting a customer’s account balance. By using this model, a database of RDF triples can be maintained that can be processed and shared across different applications. In addition, RDF databases have indices that relate resources to the triples for which the resources are subjects, predicates, or values. As such, complex queries can be made against an RDF database. However, because of the need to maintain a large number of indices and triples, RDF databases have traditionally suffered from a lack of scalability.
 NoSQL databases are databases not based on the Structured Query Language (SQL). NoSQL databases can be designed to be linearly scalable by using several servers where data is distributed and replicated among the servers. Linearly scalable NoSQL databases typically access data using a primary key, which may be composed of one or more sub-keys (e.g., a row key and column key). In a key-value database, a key is used to look up a corresponding value, or “cell,” that can contain data.
 In order to increase flexibility, NoSQL databases are sometimes arranged as two-dimensional tabular databases that are looked up using both a row key and a column key. That is, the primary key in a two-dimensional tabular database may comprise a row key and a column key. Looking up data in a two-dimensional tabular database typically requires either access to both a row key and column key that correspond to target data, or access to one of the row and column keys combined with a requirement to scan a substantial portion of the database. However, maintaining a plurality of indices while ensuring the indices are consistent with the indexed data may be costly in terms of performance. In order to ease index maintenance, applications that utilize typical two-dimensional tabular NoSQL databases will often be limited to a small number of indices, limiting the variety of queries that can be e...