thinking outside the table

24
Thinking Outside the Table

Upload: ontotext

Post on 16-Apr-2017

4.353 views

Category:

Technology


0 download

TRANSCRIPT

Thinking Outside the Table

1

A reliable home for the business data

of thousands of organizations,relational databases dominated

the world of data storage and retrieval since

the 1980s.

2

Storing data in neat tables of predefined relations of rows and columns was (andstill is for certain implementations) the best fit for managing strictly structured information, such as financial records, logistical information, bank data etc.

Considered secure, stable and mature for a variety of business cases, however, the relational model is quite expensive and resource-consuming when it comes to meeting the challenges of today’s exponentially growing in volume and interconnectedness data.

3

Rows and tables do have hard time expressing the richness of these relationships together with mapping their meaning.

4

Designed for data that fitsa predetermined schema,relational databasesaren’t flexible enough for handling complex data modeling.At the very least, not efficiently and at an acceptable cost.

5

The huge amount of heterogeneous, diverse datathat surround us is not tobe shoehorned into tables and tamed with the availabletools for interconnecting that relational databasesprovide.

6

7

To build that home, thinking outside the table is required

One of the alternativesoutside the tableis the graph database

8

9

A graph database is “a database that uses graph structures for semantic queries with nodes, edges and properties to represent and store data.” This model allows for storing highly connected data and for complex querying of these data.

Representing Relationships in a Relational DatabaseIf you want to represent, store and query the

relationships within a relationaldatabase you will need to create a table which

describes these relationshipstogether with another table which describes any new

relationship(called JOINs)

10

11

For example, if you want to express that Fred, Wilma and Pebbles Flintstone, together with the notorious Bamm-Bamm Rubble are instances of the entity Person and live in the instance of City Bedrock, you can do that with the following table, where you will describe these relations:

For instance, in order to express that Pebbles Flintstone becameBamm-Bamm’s wife, another table has to be created. This will be a junction table, representing Bab-Bamm (Person.014) as an instanceof the entity Husband and Pebbles (Person.013) as an instance of theentity Wife:

12

As things change with time, and the number and the variety of relationships grow, you will need additional tables. For the newly occurred relations to be expressed, you will create more and more tables.

Needless to say, interconnected data (the most obvious example being the data from social networks) are everything but easy to tame with the above mechanism of creating more and more junction tables and additional elements to record the ever-increasing number of relationships between data items.

13

Joining tables vs. traversing pathsWithin a graph database you won’t have to create additional relationships as they are implicitly part of the model.

14

In a graph database, instead of creating tables for each relationship separately, you will just add edges (relationships) to corresponding nodes (things) and thusA node’s connection will in turn become a connection to the other nodes, connected to the one you’ve added the connection to.

15

M a k i n g s e n s e o f t e x t a n d d a t a

To get back to our Flintstone’s example, all the tables that you’ve created for each and every relationship separately, describing the relations among Fred, Wilma, Pebbles and Bamm-Bamm, a graph database would express the following way:

16

M a k i n g s e n s e o f t e x t a n d d a t a

Thus the system will implicitly hold the information, without you having to keep a record ofmultiple joins and tablesto retrieve it.

17

M a k i n g s e n s e o f t e x t a n d d a t a

In a sense, withgraph databasesdata are allowed to organically growand easily connectwith more and more items.

18

M a k i n g s e n s e o f t e x t a n d d a t a

It’s only natural to consider a graph database for complex data, with many connections, the pattern of which you want to track and know about.

19

M a k i n g s e n s e o f t e x t a n d d a t a

20

Still, the decision to build a home for all your data, neatly classified and labelled, related, interconnected and easily searchable, is a matter of cost andbenefit analysis.

21

For the ultimate question is not:Should I use a relational or graph database?

M a k i n g s e n s e o f t e x t a n d d a t a

It rather is:What is the best home for my data and am I ready to do more with these data?As a database can be a lot more than just a storage cupboard for siloed archives.A database can be a springboard for discovery and exploration.

22

Explore Class Dependencies

www.ontotext.comYou can also reach us via email at

[email protected] directly by calling

1-866-972-6686 (North America),or +359 2 974 61 60 (Europe)

If you are intrigued by the alternatives outside the table and want to see a graph database in action,

do check GraphDB™ Freeto learn more.