Getting Started Tutorial 2.x

The MarkLogic Data Hub Framework is free and open source under the Apache 2 License and is supported by the community of developers who build and contribute to it. Please note that Data Hub Framework is not a supported MarkLogic product.

This tutorial is for version 2.x of the Data Hub Framework which works with MarkLogic 9. If you need the 1.x version for MarkLogic 8, go to the 1.x Getting Started Tutorial


Before you get started you might want to check out our high level introductions:

Building an Online Shopping Hub

This tutorial will walk you through setting up a very simple hub for harmonizing online shopping data.

The story is:

Our company sells board games and board game accessories. We have been tasked with creating a Data Hub on top of MarkLogic. We must load all of our Product and Order data into MarkLogic and harmonize it for use in a new application. Our approach will be broken down into five main steps.

  1. Load Product data As-Is
  2. Harmonize Product data
  3. Load Order data As-Is
  4. Harmonize Order data
  5. Serve the data to downstream clients

In a Hurry?

The finished version of this tutorial is available for you to download and play with. Finished Online Shopping Hub Example


This tutorial uses QuickStart, a simple User Interface that you can run locally to start working with the Data Hub Framework quickly. With QuickStart you will have a working hub in a matter of minutes. No need to worry about deployment strategies or configuration details. Simply run the QuickStart war (java web archive) and point it at your MarkLogic installation. Quickstart is a devops tool. It is meant to be run on your development machine to aid you in quickly deploying your hub.


Before you can run the hub, you will need to have some some software installed.

  • Oracle’s Java 8 (We have not tested with OpenJDK)
  • MarkLogic 9 (Installed and initialized)
  • A Modern Browser. (Chrome or FireFox work best. Use IE at your own risk.)

Table of Contents

  1. Install the Data Hub Framework
  2. Loading Products
    1. Create the Product Entity
    2. Create the Product Input Flow
    3. Load the Product Data As-Is
  3. Harmonizing Products
    1. Browse and Understand the Product Data
    2. Modeling the Product Entity
    3. Harmonizing the Product Data
  4. Loading Orders
    1. Create the Order Entity
    2. Create the Order Input Flow
    3. Load the Orders As-Is
  5. Harmonizing Orders
    1. Modeling the Order Entity
    2. Harmonizing the Order Data
  6. Serve the Data Out of MarkLogic
  7. Wrapping Up