Integrating MongoDB with Diffusion Cloud – Part 2

Martin Cowie - July 25, 2016

In prior post How to Integrate MongoDB with Diffusion Cloud, we discussed how Diffusion Cloud’s JSON topics dovetail with MongoDB’s JSON documents, and how in turn a MongoDB collection can be reflected as a branch of JSON topics. This approach gives the end consumer a means of subscribing to a MongoDB collection and changes to it. Additionally, it makes the information easily available to smartphones and web browsers, who are likely far removed from your MongoDB server.

Making things interesting with real data.

In our the prior blog, we created 100 Mongo documents to test the system out. This time, we’ll use real data to make things more interesting, and draw on the real foreign exchange data free available from TrueFX.

This standalone script polls the TrueFX service every 500ms, and gets real prices for a handful of currency pairs. The service is free, and registration gets you more than the basic set of currency pairs.

Visualizing the data

You can use the Diffusion Cloud Console to prove that the system works, but here we have had a little more fun and built a desktop GUI to visualize the FX prices using Electron from Github. Only recently released (May 2016) Electron combines the best of the Chromium & Node JavaScript worlds to empower developers building desktop apps with web technologies. Our client ran to 184 lines of code and looks like this:

Visualizing Data

 

As prices rise and fall the tables cells flicker red and green. Web development is very far from my forte, nevertheless I was greatly impressed at how quickly a project could begin and get off the ground. The Electron name is a great piece of wordplay, being the ‘shell’ within which GitHub’s ‘Atom’ project exists. Keep on punning and developing guys, it’s only version one and it’s already looking great!

Let’s have a look at it all in action in our short video.

A quick summary

This blog began as a vehicle to explore the JSON features in Diffusion Cloud and any challenges encountered connecting it to something else, but has grown into something more ornate drawing in real data, and visualizing it a familiar manner:

Demo Architecture

We encountered essentially zero issues handling the JSON between MongoDB and Diffusion Cloud. Using JSON made it trivial to populate MongoDB with data delivered as CSV, and the JavaScript environment inside Electron made is trivial to build and update an HTML table from the delivered JSON.

Try Diffusion Cloud

Try Diffusion Cloud for yourself for free to see how easy it is for Diffusion Cloud to reflect a MongoDB collection into the topic tree.

Want to see how easy it is to get started with Diffusion Cloud? Sign up for a free demo here.


The Diffusion® Intelligent Event-Data Platform makes it easy to consume, enrich and deliver event-data in real-time across all network conditions. Push Technology pioneered and is the sole provider of real-time delta data streaming™ technology that powers mission-critical business applications worldwide. Leading brands use Push Technology to bring innovative products to market faster by reducing the software development efforts using the low-code features. The Diffusion® Intelligent Event-Data Platform is available on-premise, in-the-cloud, or in a hybrid configuration. Learn how Push Technology can reduce infrastructure costs, and increase speed, efficiency, and reliability, of your web, mobile, and IoT application.

Learn More: View Blog Posts and Developer Resources

Share:

Check out these other resources

Info

Info Center

Case Studies, White Papers, and Tech Talk notes relating to Diffusion and the customers benefiting from using it.

Info

Quick Start Guide

Step-by-step guide to getting started fast with Diffusion or Diffusion Cloud.

Info

Diffusion Cloud

Get the facts and the details about our Diffusion Cloud platform.