Core Blimey! - Sitecore Blog

Sitecore 8 xDB and Experience Profile Simplified

February 24, 2015 | 2 Minute Read

So you’ve heard the buzz around Sitecore Experience xDB and MongoDB. You may have seen some fancy demos with contact cards in the Experience Profile section, but just exactly how do you get all this up and running with your basic Sitecore 8 instance?

Here’s how in 6 steps:

Step 1 - Install Sitecore 8.

I used SIM to install my instance, be sure to read this article to get the new Sitecore 8 webroot to be recognized by SIM - http://www.sitecore.net/Learn/Blogs/Technical-Blogs/Getting-to-Know-Sitecore/Posts/2014/12/Sitecore-8-and-Sitecore-Instance-Manager.aspx

Step 2 - Fire up MongoDB.

I set up a batch file to do this and followed the instructions provided by Brian Pedersen - https://briancaos.wordpress.com/2014/10/01/sitecore-and-xdb-setting-up-mongodb-on-your-developer-machine/

You should have something like this:

mongo

Step 3 - Create some test data

I’ve created a simple form on Github which will populate the data in xDB - https://github.com/ianjohngraham/CoreBlimey.Utils/tree/master/CoreBlimey.Utils/xDB%20Contact%20Creator

form

The form uses the new analytics API to update a user’s Facets .


    var personalInfo = Tracker.Current.Contact.GetFacet<Sitecore.Analytics.Model.Entities.IContactPersonalInfo<("Personal");
    personalInfo.FirstName = txtFirstname.Text;
    personalInfo.Surname = txtSurname.Text;

Step 4 - Abandon session

The experience data will only get flushed to MongoDB on the Session End event - so ensure you call the Session.Abandon() method. My form has a button to do this!

You may find that not all data gets flushed through straight away - the way to ensure this is to call the identify method in the Analytics API or create another user again.

Step 5 - Look in RoboMongo

Create a new connection in RoboMongo and connect to the default port 27017. Expand the Analytics node in the database and examine the Contacts collection. You should have something like this.

robomongo

Step 6 - Search in the Experience Profile Section

Got to the Experience Profile section on the Sitecore 8 Dashboard.

experience

 

Search for your contact. And hey presto! Your contacts will be in the database.

jamerson