Get a Demo

Build a Data Warehouse for Salesforce in 10 Minutes

Sep 12th, 2017

This blog post was originially published by Rekener, now a Brainshark company.

As sales and BizOps leaders, we’re well aware that Salesforce struggles with certain reports. Because of the way Salesforce data is structured, it’s difficult to run a number of important queries, like which accounts have purchased which products. This is because Product Line Items live under Opportunities, which live under Accounts. Doing a quick Google search of “Salesforce report on accounts that don’t have a certain product” returns a number of Salesforce Success Community pages with questions, but few have answers. Most are like this one.  

The logical next step is to think, “Well, Salesforce has a lot of the data I need, but it just doesn’t have a data model that makes it useful. If I could just put all my Salesforce data into a data warehouse, then I could join and query my Salesforce data any way I want. That would let me determine how many contacts I have in each Salesforce account or which of my Salesforce accounts haven’t yet purchased a given product. I could also put other data sources into that same data warehouse. Then, I could join Salesforce with Marketo data, or HubSpot data, or Mixpanel data, or my custom product usage data.” So, what’s required to make this happen?

Choose a Data Warehouse

First, you’d need to choose your data warehouse. The data warehouse is the place where your Salesforce data will sit, along with any other data sources that you want to have in there. Common data warehouse platforms include Amazon Redshift and PostgreSQL. Others are out there, too, like Apache Spark, Amazon S3, Microsoft Azure, and many more. 

Set up an ETL

The next step is to choose an ETL (Extract, Transform, Load) tool. The ETL tool is the tool that will take the data from Salesforce, Marketo, Mixpanel, Pendo, and your other sources and put it into your data warehouse in the proper format. Common ETL tools used for populating a data warehouse with your BizOps data are Segment, Fivetran, and Jitterbit. There are many others out there, too.

Run Reports

So now you have your data from Salesforce and other systems hooked up to an ETL tool.  That ETL tool is putting your BizOps data into your data warehouse on a regular basis. What’s next? Now it’s time to make sense of the data by querying it — running reports. There are two approaches here.

  1. The first is to run SQL queries against your Salesforce and other BizOps data in the data warehouse. There are a lot of free and open source querying tools for SQL, such as Apache Zeppelin. The key requirement here is that you or someone on your team needs to know SQL.  

  2. The other approach is to connect a Business Intelligence (BI) tool to your data warehouse. Popular BI tools for this type of data are Looker and Tableau. Others include Chartio and Periscope.

So let’s summarize the steps you had to take to set up a data warehouse to analyze your Salesforce and other BizOps data.  

  • You had to choose a database, and will have to maintain and grow that database over time as your volume of Salesforce data, Marketo data, Mixpanel data, and other BizOps data grows over time. That will get expensive as it grows.  

  • You had to either buy or build an ETL tool, and then had to connect that ETL tool to Salesforce, Marketo, Mixpanel, and all the other BizOps data sources that you will add to the data warehouse. 

  • You had to define how the data from the various BizOps systems is joined together. This is not trivial — for instance, what’s the best way to join your product usage data to your Salesforce Opportunities? It’s easy if you already have a Salesforce join key explicitly defined on your product usage data records, but if not, then you’ve got work to do.  

  • And lastly, you had to either learn SQL, hire someone who knows SQL, or buy an expensive BI tool to make any sense of your data.  

Looking at it all together, this is a very expensive and time-consuming effort. It requires a team that knows all of your BizOps systems; has the technical chops to stand up, maintain, and query a data warehouse; and is capable of interacting with business leaders in order to extract real value from your BizOps data. And when you think about how much time it will take to research, evaluate, select, buy, setup and integrate all of these systems, there are additional hard costs and opportunity costs to consider.  Is there a faster/easier/less expensive/better way? Yes.

How the Rekener Platform Can Help

Rekener (now Brainshark) does everything we described above, automatically, so you don’t need to set up a data warehouse, ETL tool or BI tool.

The platform creates and maintains the data warehouse for you, so you never need to worry about capacity, maintenance, upgrades, or any of that.

  • Rekener has connectors, instead of having to use ETL tools to bring your Salesforce, Marketo, HubSpot, Mixpanel, Zendesk, and other data into its data warehouse.

  • Rekener automatically joins data across sources, right out of the box, so you don’t need to worry about how to join Salesforce and Zendesk data for instance. It’s flexible, too, so if you have a preferred way to manage joins, it’s supported.

  • The Rekener Platform’s analytical layer lets you perform the queries you need to make sense of the data — and you don’t need to know SQL. It offers an intuitive drag-and-drop, pick list-style interface that gives you the power to manipulate the SQL in the data warehouse easily. So it’s got all the power of SQL, with the ease-of-use of pick list interfaces. Advanced users can also use an Excel-like querying language called Rekscript to get insights from their data.


All of this means one important thing: you can finally take action based on the wealth of BizOps data you’ve collected throughout the account lifecycle. For the first time, you can analyze patterns in your accounts in order to put prioritized lists of accounts in the hands of your sales, customer success, account management, and marketing teams.