Migrating from Realtime node usage to Indexing Service and/or Tranquility

Hello fellow Druid users,

I currently have a Druid 0.9 cluster utilizing Realtime nodes for ingestion. I’d like to move from the Realtime node to the Indexing Service and if it makes sense leverage Tranquility as well. I’ve gone through the latest 0.9 documentation, but I’m not exactly sure how to go about migrating from Realtime Nodes to Indexing Service nodes. Likewise for Tranquility. I’ve reviewed the latest documentation on Github, but haven’t figured out how Tranquility fits into the picture. In what scenarios would using Tranquility be preferred over the Indexing Service itself? I don’t believe I’d be using Tranquility as a library, but instead be running it as a service.

I thought of an additional question: is the Indexing Service a drop-in replacement for the Realtime node? By that, I mean can I have a cluster composed of a combination of Realtime Nodes AND Indexing Service nodes (Overlords and Middle Managers). This wouldn’t be a permanent setup, but I’m trying to avoid downtime. If I could change a Realtime node to a Indexing Service node without taking down the other nodes in the cluster, that would be preferred.

you can think of Realtime Nodes to be equivalent to RealtimeTask in Indexing Service. Indexing service has couple of added benefits like ability to create tasks programmatically and providing better control over Resource Management. Tranquility uses IndexingService to run index tasks. So for using tranquility, you need to have indexing-service.

more on Indexing Service can be found here - http://druid.io/docs/latest/Indexing-Service.html

Also, It is possible to have both Realtime Nodes and Indexing Service running for during the migration phase and move 1 datasource at a time.