Information Technology News.


Microsoft releases its Trinity technology under a MIT license

Share on Twitter.

Sponsered ad: Get a Linux Enterprise server with 92 Gigs of RAM, 16 CPUs and 8 TB of storage at our liquidation sale. Only one left in stock.

Sponsered ad: Order the best SMTP service for your business. Guaranteed or your money back.

February 20, 2017

We learned today that Microsoft has released its Trinity technology, now named Graph Engine, on an open-source basis under the MIT licencing agreement.

Graph Engine lands in an odd kind of place, however. According to DB-Engines, the most popular graph DBMS by some magnitudes is Neo4j, followed by OrientDB and Aurelius's TitanDB graph databases, which both have about fifteen percent as many users.

But OrientDB and TitanDB have both been subjected to several complaints that they are not production-ready, yet they are both in use.

Alongside Neo4j, they are essentially open-source NoSQL databases, which Graph Engine arguably is as well, although it has not been designed to do the things that graph databases are known for doing.

By definition, graph databases are specialized to perform complex queries on highly interconnected data. In theory, they cater to queries multiple levels deep for which multi-way JOINs in relational databases would be prohibitively computationally expensive, although performance in terms of how many levels may actually be traversed varies between graph database offerings.

All graph databases are made up of the lines connecting the data items within them. These would be considered nodes by graph theory proponents (which almost all graph database users are) and are roughly equivalent to rows in relational databases.

Both the edges and nodes contain properties, which function like key-value pairs for the purposes of querying data. But while all graph databases are constituted of the relationship between data items, the graph databases currently available on the market today are quite different in the workloads they're optimised for.

Some, such as Neo4j, employ a single data model that's been optimized, while others like OrientDB use different data models. This is where Graph Engine offers something different, Microsoft claims.

The company's Graph Engine has not been tuned to query or store data, however. Nor is it ACID transaction compliant, unlike most other graph databases.

Rather, MS' Graph Engine lets you crunch analytical workloads, including online transactional processing using the memory of a distributed system.

As one researcher from the Graph Engine team described it, the software is a "distributed in-memory data processing engine" with a strongly typed distributed key-value store as the storage backend.

In other words, the computation takes place across a cluster of various machines (a cloud) where the storage infrastructure holds data in-memory.

As the data is being held in-memory, it cannot be located through a physical address to a location on a networked hard disk, but instead it is tracked using hashes and replicated index tables across the cloud itself.

Microsoft claims that this lets you perform those classic graph queries that delve multiple levels deep, only that they are sped up through the utilization of an in-memory-based storage infrastructure.

It also means that offline graph analytics can be improved with parallel processing provided for by the distributed architecture, if the needed hardware is available.

A key difference for most graph databases is the query languages they utilise. Each one is independent to its own graph. For example, Neo4j's language is called Cypher, which is a declarative SQL-inspired language for depicting various patterns in graphs visually using an ASCII-art syntax.

OrientDB's query language commits to being SQL-like, while TitanDB uses the Gremlin query language, which is vying to become the standard.

Similar to Cypher, it chains traversal operators together to form path-like expressions of how the query should be executed throughout the graph.

According to Microsoft, TitanDB allows users to express their query logic using lambda expressions. "It combines the capability of quicker graph exploration and the flexibility of lambda expression.

Source: Microsoft.


Sponsered ad: Get a Linux Enterprise server with 92 Gigs of RAM, 16 CPUs and 8 TB of storage at our liquidation sale. Only one left in stock.

Sponsered ad: Order the best SMTP service for your business. Guaranteed or your money back.

Share on Twitter.

IT News Archives | Site Search | Advertise on IT Direction | Contact | Home

All logos, trade marks or service marks on this site are the property of their respective owners.

Sponsored by Sure Mail™, Avantex and
by Montreal Server Colocation.

       © IT Direction. All rights reserved.