NoSQL Benchmarks NoSQL use cases NoSQL Videos NoSQL Hybrid Solutions NoSQL Presentations Big Data Hadoop MapReduce Pig Hive Flume Oozie Sqoop HDFS ZooKeeper Cascading Cascalog BigTable Cassandra HBase Hypertable Couchbase CouchDB MongoDB OrientDB RavenDB Jackrabbit Terrastore Amazon DynamoDB Redis Riak Project Voldemort Tokyo Cabinet Kyoto Cabinet memcached Amazon SimpleDB Datomic MemcacheDB M/DB GT.M Amazon Dynamo Dynomite Mnesia Yahoo! PNUTS/Sherpa Neo4j InfoGrid Sones GraphDB InfiniteGraph AllegroGraph MarkLogic Clustrix CouchDB Case Studies MongoDB Case Studies NoSQL at Adobe NoSQL at Facebook NoSQL at Twitter



infinitegraph: All content tagged as infinitegraph in NoSQL databases and polyglot persistence

A Comparison of 7 Graph Databases

The main page of InfiniteGraph, a graph database commercialized by Objectivity, features an interesting comparison of 7 graph databases (InfiniteGraph, Neo4j, AllegroGraph, Titan, FlockDB, Dex, OrientDB) based on 16 criteria: licensing, source, scalability, graph model, schema model, API, query method, platforms, consistency, concurrency (distributed processing), partitioning, extensibility, visualizing tools, storage back end/persistency, language, backup/restore.

7 graph databases

Unfortunately the image is almost unreadable, but Peter Karussell has extracted the data in a GoogleDoc spreadsheet embedded below.

Original title and link: A Comparison of 7 Graph Databases (NoSQL database©myNoSQL)

What Is the Most Promising Graph Datastore?

Very interesting answer on Quora from professor Josep Lluis Larriba Pey.

  1. for very lager data size (TB): Infinitegraph, DEX
  2. for query speed: DEX
  3. for transaction support: Neo4j

Original title and link: What Is the Most Promising Graph Datastore? (NoSQL database©myNoSQL)


InfiniteGraph 2.1 Features Gremlin Support and a Plugin Framework

A new version of InfiniteGraph, the graph database from Objectivity, was announced today. This release features:

  • a plugin framework: Two kinds of plugins are supported. A navigator plugin bundles components that assist in navigation queries, such as result qualifiers, path qualifiers, and guides. The Formatter plugin formats and outputs results of graph queries.
  • enhanced IG Visualizer: The advanced Visualizer is now tightly integrated with InfiniteGraph’s Plugin Framework allowing indexing queries for edges, the Formatter plugin framework export GraphML and JSON (built-in) or other user defined plugin formats.
  • support for Tinkerpop Blueprints and Gremlin: InfiniteGraph provides a clean integration with Blueprints that is well suited for applications that want to traverse and query graph databases using Gremlin

A bit more details can be found in the InfiniteGraph 2.1 release notes.

Klint Finley

Original title and link: InfiniteGraph 2.1 Features Gremlin Support and a Plugin Framework (NoSQL database©myNoSQL)

A Survey of Graph Databases for the Java Programmers

Jasper Pei Lee provides an overview of the following graph databases from the perspective of the Java developer: Neo4j, InfiniteGraph, DEX, InfoGrid, HyperGraphDB, Trinity, AllegroGraph:

Graph Databases for the Java Programmers

His review is similar to the Quick Review of Existing Graph Databases, but stays focused on using these graph databases from a Java environment, this making it less generic than the NoSQL Graph Database Matrix.

The only part that I didn’t understand is the closing:

High-performance and distributed deploy are supposed to be supported by all products.

Without qualifying what high-performance means is difficult to assess if all reviewed products are on par[1]. And scaling graph databases is far from being a solved problem.

  1. AllegroGraph takes pride in breaking records related to the number of stored triples, while others are focused on access speed, or reliability.  

Original title and link: A Survey of Graph Databases for the Java Programmers (NoSQL database©myNoSQL)


Graph Database Apps Ideas: The InfiniteGraph Contest's Winners

Two of the three winning projects of the InfiniteGraph competition look like really interesting solutions for graph-oriented problems:

  • “InfiniteCommits”, developed by William Cheung, allows users of GitHub to quickly obtain useful information that isn’t currently available through the GitHub web interface.  This application uses Play (a rapid Java and Scala web development framework) to generate a report of the most active files in a GitHub repository, while using InfiniteGraph’s Data Visualizer to see the latest changes and notes associated with each change.

  • “Call Graph Analysis”, developed by Vimal Kumar, analyzes “call graphs” extracted from large code-bases.  Vimal’s application uses InfiniteGraph to explore millions or billions of lines of code, and then quickly find all the connections and relationships between countless functions contained within the code.  This gives developers the ability to quickly understand and visualize the most complex structures and interactions among different software modules, which is incredibly useful not only in their work, but for training new code contributors, or as a visual aid for debugging and testing purposes.

Congrats to the winners and InfiniteGraph for organizing the contest!

It would have been even greater if these applications or the InfiniteGraph-related parts would have been open sourced to serve as learning materials for graph database newbies.

Original title and link: Graph Database Apps Ideas: The InfiniteGraph Contest’s Winners (NoSQL database©myNoSQL)


What Is a Graph Database?

The InfiniteGraph guys put together a page providing a short definition of what graph databases are and what advantages they bring to the table:

“A graph database… uses graph structures with nodes, edges, and properties to represent and store information.”

“Compared with relational databases, graph databases are often faster for associative data sets, and map more directly to the structure of object-oriented applications. They can scale more naturally to large data sets as they do not typically require expensive join operations. As they depend less on a rigid schema, they are more suitable to manage ad-hoc and changing data with evolving schemas.”

In terms of graph database applicability, the short answer would be: graph databases are useful for storing, traversing, and processing highly complex relationships. The expanded version:

Graph databases can help improve intelligence, predictive analytics, social network analysis, and decision and process management - which all involve highly complex relationships.

Both object databases and graph databases have been touting a lot of promises, but even if graph database scenarios abound I still think they are seen as the underdogs.

Original title and link: What Is a Graph Database? (NoSQL database©myNoSQL)


InfiniteGraph and RDF Tuples or Why Using a Specialized Solution Is the Way to Go

An excellent explanation for why it makes sense to use a specialized tool for the job:

Yes, InfiniteGraph can be used to analyze triples and RDF. But if that’s all you want to do, then you really should just use a triple store.

Our graph database trades some of the runtime flexibility (but not a lot) for well defined types and performance. RDF is fine for all the examples that have been circulated, if I just want to list all my friends or all the people I know who are married, its no big deal because the fanout of a single degree is extremely small. In fact, you can probably even just do it in mySQL for that matter. When we talk about scalability however, it’s not really about how much data we can store, but how quickly we can run across it. Storing RDF makes this effort slower. Its hard to make RDF perform, because the whole graph is self describing and therefore is computationally expensive to parse… Think of it like representing data in XML versus a defined binary format. XML is lovely to work with, basically human readable, but it is very verbose and inefficient.

The little secret here is that using a generic solution will usually work in the beginning. And if using a specialized solution implies bigger costs or longer time to market starting with what you know is just fine. But once your application grows, a specialized solution would not only provide an optimized solution, but will get you passed the initial problems that come with growth.

Original title and link: InfiniteGraph and RDF Tuples or Why Using a Specialized Solution Is the Way to Go (NoSQL database©myNoSQL)


Globals: InterSystems Free NoSQL database for Java

As of now 5 hours until we will get Globals, yet another NoSQL database from InterSystems, the Caché object database creators.

Will it be a graph database like the Objectivity spin off InfiniteGraph?

Update: the countdown is at zero for a while and nothing happened.

Original title and link: Globals: InterSystems Free NoSQL database for Java (NoSQL databases © myNoSQL)

InfiniteGraph 1.1 Released with New Indexing Options

A new version of InfiniteGraph, the graph database from Objectivity, has been released with a new indexing solution offering improved performance for indexing, data imports, and lookups.

InfiniteGraph’s graph processing strengths are well suited to many applications, including those in intelligence, internet systems and services around social media, location based networking and personalization, discovering networks of people that have business, influence or other value, analysis of financial transactions to detect and prevent fraud, and in adding new capabilities to enterprise business intelligence (BI) systems.

For next releases, it sounds like a lot of work is already scheduled, InfiniteGraph’s team planning to focus on:

  • improving data import
  • parallel ingest capabilities leveraging the distributed processing strengths of InfiniteGraph
  • integrating with the open source Blueprints project
  • faster graph processing
  • range querying and geo-hashed indexes
  • options to relax InfiniteGraph’s fully ACID compliant consistency model

Things in the graph database space are getting more exciting by the day. Unfortunately compared to the other NoSQL databases categories, the top graph databases are all commercial products and I think this can be notice when looking at adoption rates.

Original title and link: InfiniteGraph 1.1 Released with New Indexing Options (NoSQL databases © myNoSQL)


InfiniteGraph for Mac OS X 1.0 Released

After being available only on Windows and Linux, now InfiniteGraph has released a version for Mac OS X 64bit. You can get it from ☞ here. As far as I know the guys at InfiniteGraph are working on a friendlier licensing model for developers.

Original title and link: InfiniteGraph for Mac OS X 1.0 Released (NoSQL databases © myNoSQL)

Distributed Graph Databases and Usecases

Darren Wood[1] presentation containing a mix of details on distributed graph databases and graph databases use cases:

According to Darren distributed graph databases characteristics are:

  • High performance distributed persistence
  • Ability to deal with remote data reads (fast)
  • Intelligent local cache of subgraphs
  • Distributed navigation processing
  • Distributed, multi-source concurrent ingest
  • Write modes supporting both strict and eventually consistency

You might want to check Marko Rodrigues’ Graph Databases: more than an introduction for a more complete list of possible graph databases use cases.

  1. Darren Wood, Chief Architect InfiniteGraph  ()

Original title and link: Distributed Graph Databases and (NoSQL databases © myNoSQL)

InfiniteGraph Use Case: Modeling Stackoverflow

I didn’t hear much about InfiniteGraph after its 1.0 release, except this post that uses Stackoverflow data as input to demo some features of graph databases:

The vertices in the graph are represented as the Users, Questions and Answers above while the edges are represented as the interactions between them (i.e. a User “Posts” a Question, an Answer is “For” a Question, a User “Comments On” a Question or Answer). Simple enough, and like most other social graphs, users seem to be the focal points with the majority of connected edges. Now all I needed was a sample application that could construct the graph data model from the XML sources and run some queries.

Original title and link for this post: InfiniteGraph Use Case: Modeling Stackoverflow (published on the NoSQL blog: myNoSQL)