Data Analytics

Announcing retirement of IBM Graph, availability of Compose for JanusGraph

Share this post:

Compose for JanusGraph graph database

We are announcing the retirement of the IBM Graph service on November 27th, 2017. This service is being replaced by Compose for JanusGraph, see below for detailed steps on how to migrate to our new service. The graph database technology at the core of IBM Graph, Titan, has evolved to JanusGraph, which is governed by the Linux Foundation. We are excited to bring this technology, as a production-ready, managed service, to the IBM Cloud.


Here’s what you need to know:

End of Marketing Date: November 27th, 2017

As of November 27th, 2017, new IBM Graph instances cannot be provisioned. However, existing instances will continue to be supported.

End of Support Date: April 24th, 2018

  • For a period of 148 days after the End of Marketing Date throughApril 24th, 2018, all existing instances will continue to be available on the Services dashboard in the Bluemix console. All existing instances will also continue to be supported by IBM Graph
  • Any instance still provisioned as of the End of Support Date will be deleted. Please extract data that is still desired as soon as possible
  • Please remember to delete your IBM Graph service instances before the End of Support Date.

Migration: All IBM Graph users can transition to Compose for JanusGraph available in the IBM Bluemix catalog

Any program that makes calls to IBM Graph must adopt the following changes:

  1. The JanusGraph service uses a different endpoint than the IBM Graph service. Users will need to update the service endpoint they’re sending requests to, including the authentication.
  2. The JanusGraph service no longer provides the following endpoints: /schema, /gremlin, /bulkload, /graphs, /index, /vertices, or /edges.
    If you’re using any of these commands, you must change them to send the corresponding gremlin for completing these actions.

    • /schema (modelling): See the Gremlin equivalent modelling
    • /schema (indexing) and /index: See the Gremlin equivelent indexing
    • /graphs: Graphs are managed in an internal graph which should only be queried. Writing values to this graph will impact the availability of your graphs.
      • list all graphs: janusConfigurationGraph.traversal().V().values(“graph.graphname”);
      • truncate a graph: def graph =; graph.close(); JanusGraphCleanup.clear(graph); (where graph_name is the name of your graph).
    • /gremlin, /vertices, or /edges: Send gremlin commands as shown in this documentation
    • /bulkload: Not currently supported – Users can send gremlin queries for adding the data into JanusGraph using the addVertex() and addEdge() gremlin tasks for each element that needs to be added.
  3. The JanusGraph service no longer provides a graph-specific URL for sending gremlin queries (e.g, https://service_endpoint/service_instance_id/graph_name/gremlin). Users must update their gremlin queries to explicitly open the graph using“graph_name”) and send their gremlin query to the JanusGraph base URI.  Reference:
  4. The JanusGraph service does not currently support mixed indices.  You will need to convert them into composite or vertex centric indexes.  This would be a change to your indexes and schema when you initialize your graph:

For users who have their complete data set locally and tools to upload that data set:

  1. Adapt your tool as described in the previous section.
  2. Stand up a new instance of Compose JanusGraph and run your tool to import the data.
  • You may need to vertically and horizontally scale your JanusGraph Engines temporarily to import your data.  This is currently not available in the Service Management Console.  Contact Bluemix Support to perform this action.
  • You may need to vertically scale your JanusGraph Storage (backend nodes) for optimal performance.  You may do this on service management console by selecting “Scale Resources”.


If you don’t have complete copy of your dataset locally, please submit ticket with Bluemix support to get a copy of your data.


*This version represents a revised timeline of the IBM Graph Deprecation. 

As always, we’re here to help! Reach out to us in the support forums or on Twitter.



Offering Manager // Watson Data Platform

More Data Analytics stories

Actiance solution on IBM Cloud and Watson APIs keeps business communications compliant and secure

Actiance, Inc. is on a mission to enable the security, management and compliance of unified communications, Web 2.0 and social media channels for corporate customers worldwide. With IBM Cloud as a key partner and enabler, Actiance helps support and manage more than 500 million daily conversations across 80 communications channels. Customers include the top 10 U.S., top 5 Canadian, top 8 European, and top 3 Asian banks. A key Actiance advantage is that its platforms help its customers stay ahead of compliance and uncover patterns and relationships hidden within their data, so they can be more proactive and less reactive.

Continue reading

How to Layout Big Data in IBM Cloud Object Storage for Spark SQL

When you have vast quantities of rectangular data, the way you lay it out on object storage systems like IBM Cloud Object Storage (COS) makes a big difference to both cost and performance of SQL queries. However, this task is not as simple as it sounds. Here we survey some tricks of the trade.

Continue reading

New features for IBM Cloudant

Over the past few weeks, we have been rolling out the ability for IBM Cloudant users to have more control over their Cloudant Standard plans and provisioned throughput capacity. Customers will have the ability to more accurately set the provisioned throughput capacity according to the needs of their applications. The Standard plan is backed by 99.95% SLA at all prices points and changes to provisioned throughput capacity are usually available within seconds.

Continue reading