Sones GraphDB
Developer(s) | sones GmbH |
---|---|
Stable release | 2.0 / May 11, 2011 |
Operating system | Cross-platform |
Available in | English, German |
Type | Database |
License | Dual licensing: Community Edition is AGPLv3, Enterprise Edition is commercial & proprietary |
Website | sones.de |
Sones GraphDB was declared bankrupt in Germany on January 1, 2012.
Sones GraphDB was developed by the company sones in Erfurt and Leipzig. GraphDB is a new type of database with its design based on weighted graphs. The open source edition has been available since July 2010.[1] The commercially available enterprise version offers a wider variety of functions.
GraphDB was entirely developed in C# and runs on Microsoft's .NET platform as well as on the open source reimplementation Mono.[2][3]
GraphDB is available as SaaS on the Microsoft cloud Azure Services Platform.[4]
The company sones is a member of Lisog; GraphDB is a component of an open source solution stack.
Functionality
Index-free adjacency
Graph databases like the sones GraphDB address the paradigm of the index-free adjacency. That means that is not necessary to manage a global index for relationships between nodes/entities. The linked objects contain direct reference to their adjacent neighboring nodes.
Handling semi-structured data
The semi-structured data approach was established in the mid-90s. This approach is based on the fact that many application areas rarely allow a structured table structure due to complex information characteristics. An example of such problem domains can be found in bioinformatics or the Semantic Web. The sones graph database is able to store and retrieve unstructured properties in any node of the graph. The idea is also to transfer unstructured data to structured data and vice versa.
Dynamic type extension
Another advantage is that structured data can be dynamically extended with high performance in nodes and edges during runtime. Additional properties can easily be entered or deleted from vertex types in a short amount of time. The number of nodes is irrelevant here.
Graph query language
The sones GraphQL is a user-friendly domain-specific language and can be thought of as an "SQL for graphs." The similarity to SQL is intentional and makes the transition much easier for developers/consultants. It enables queries to the sones graph database property hypergraph and can be dynamically extended during runtime using plugins such as functions or aggregates.
Solving the object-relational depiction problem
sones GraphDB solves this problem by using an object-oriented concept. This results in better integration into object-oriented languages, since no O/R mapper is required.
Interfaces
REST API
In addition to providing a number of interfaces (e.g., Java, C#, WebShell, WebDAV) the sones graph database also offers a REST API. This enables uncomplicated interaction with state-of-the-art web technologies. A REST-query is all that is required to execute CRUD operations directly on the database.
Traverser API
The Traverser API makes it possible to analyze local data. Based on a number of nodes (local), neighboring nodes can be searched recursively (breadth/depth first).
Architecture
The sones GraphDB has a modular structure consisting of 4 application layers. The storage engines act as the interface to different storage media. The GraphFS serializes and deserializes database objects (nodes and edges) and operates the available storage engines. The actual graph-oriented database logic as well as all functionalities specific to the database are implemented in the GraphDB. The GraphDS provides the interface for using the database. The interfaces between the application layers are generic, which makes it possible to update components separately.
See also
References
External links
- Official website (dead link!)
- Download of open source edition (dead link!)
- Download of community edition 2.1
- German Interview with Alexander Oelling on RadioTUX
- Presentation on the GraphDB at the 2010 NoSQL conference in Frankfurt
- Sones at TechCrunch