Einstein Analytics Developer Experience

Einstein Analytics Developer Experience

We start with  “What is Einstein Analytics?”. We also intend to cover Einstein Analytics about the developers and Einstein Discovery. Analytics as we know is about understanding the data and we need to understand the datasets. For the developers, it is important to understand the platform and embed it inside the application.

What is Einstein Analytics?​

Salesforce Einstein is equipped with a set of AI technologies that enables the Salesforce users to analyze the Salesforce data – with the help of algorithms. First, let us delve into some of the terms that are useful for Einstein Analytics.

Some Terms Associated with Einstein Analytics

What is a Dataset?

There is a story behind each dataset. The data must have a format that can be manipulated and enables you to raise some queries and transformation of the data. It is formatted and highly optimized, for large scale queries. It reaches a new level of scalability that is unthinkable, when we consider the core data in Salesforce. The manipulation of the data is done by the Data Flows. Let us now turn all our attention towards understanding some of the terms associated with Dataset. These are:

  • Data Flows
  • Lens
  • Dashboards

The Data Flows

The Data Flows has a schedule at regular intervals and includes all the instructions for ELTs.(Extract, Load and Transform). This is about turning the data in a form that is suitable for Einstein Analytics – with the help of controls such as join, merge, transforms.

Lens

This is visualization of data in datasets. This is a view on a dataset with Salesforce Analytics Query language (SAQL). Queries can be build on dashboards and data can be explored graphically with a lens.

Dashboards

This displays not just an object but has curated analytics data with the helps of charts, metrics and tables. This  is interactive in nature.

Apps

These are basically a collection of datasets, lenses and dashboards. The Einstein Analytics apps is a curated set of paths and analyzes, through the data and comes with powerful tools for in-depth exploration.

App Templates

Prototypes of app that creates as enables to customize app instances. This helps to distribute the application to different user or orgs. Traditionally, packaging in Salesforce is designed based on metadata. It is the template that changes the data, equivalent to dashboards, datasets so as to match it with your org.

Here is where we need to introduce the Einstein Analytics Developer Experience (EADX).

Einstein Analytics Developer Experience

It is about “how tos” on installation and interactions with applications. While developing an application, we need to first understand the role played by the templates.

What are Templates?

If you would like to build an app in Einstein Analytics then it is mandatory to create a template. The templates consist of sample data and comprises of the following:

  • Datasets (Dataflow)
  • Datasets (CSV)
  • Dashboard
  • Lenses
  • XMD (Conditional formatting)
  • Einstein Discovery Stories

However, there are reasons to create templates.

Why Create Templates?

The reasons for which developers opt to use a template is all orgs are customized to be different. Not only do they use custom objects but comes with different features and different definitions.

We can also find out the org readiness for this template as we find answers on whether the org has the right features, right shape and other such factors. Moreover, there is a customized wizard that we can use. It is possible to transform the app to the template and vice versa.

Next, we will explain you about “How to Create Template?”.

How to Create a Template?

The work of the development team starts from building an app. We have already explained that this app is a combination of datasets, lenses, dashboards and data flows.

This is what is explained in the below figure.

How to Create a Template

It is possible to create a template from an app – with the help of Analytics template. This template acts as a blueprint. The plan for the app appears as a template object – that consists of JSON files. This blueprint then can be used by other organizations to create a version of app that is suitable for their organization. This analyzes the Salesforce Data. Other organizations can also create an app using the Salesforce org. This depends on their individual Analytics needs.

These requirements may vary from one another such as creating higher/lesser number of dashboards, creating custom security settings or even using custom objects. We have configuration wizards that comes with templates. This is useful but optional and enables the admins to customize the app.

The Configuration Wizard

The wizard is for guidance of the developer through the app building process. This asks you questions on:

  • How you view data in your app?
  • How you store data in the Salesforce org.

What are the JSON Files?

The JSON files open a whole lot of flexibility in the world of app building. It is the JSON files that consist of all the instructions of the Analytics app for creating an app. We need to explain here the concept of the master app and the exec only template.

The Master App & Execs Only Template

The original app created by the developer has one master app. This is used for creation of an app. This creates the Execs Only Template. It is from this template that multiple instances of the app are formed. However, if you create an app from the template, it will not be possible to create a new template from that same app.

The Master App & Execs Only Template

In the Winter 19 Release Notes, Einstein Analytics has been integrated with Einstein Discovery.

Einstein Discovery API

In Einstein Discovery, the first asset to be considered is the story. You can get insights on your Datasets, as you select your desired outcome. This is based on a predictive model and a statistical analysis. The predictive model explains what is happening inside the data set.

The predictive model backs a story and is used for scoring as it is deployed in a different entity. The model is exported to Salesforce and used for the purpose of scoring.

As a developer you can leverage on this model with a scoring API. The three ways to use scoring API are:

  • Here you need to call  /predict and feed with an entity. a prediction definition with a model along with it.
  • The model can also improve the score with some actions taken by the model with actionable variables.
  • You can override/add columns by pulling them from other APIs.

There is an warning section here for missing column.

  • Feed with own data and you build a model based on historical data as datasets in Einstein Analytics.

So, we make use of the Einstein Analytics model to predict values for scores that  appear in the entity page.

Summary

Salesforce Einstein is equipped with a set of AI technologies that enables the Salesforce users to analyze the Salesforce data – with the help of algorithms. There is a story behind each dataset. The data must have a format that can be manipulated and enables you to some queries and transformation of the data.

Einstein Analytics Developer Experience is about “how tos” on installation and interactions with applications. While developing an application, we need to first understand the role played by the templates.

In Einstein Discovery, the first asset to be considered is the story. You can get insights on your Datasets, as you select your desired outcome. This is based on a predictive model and a statistical analysis. The predictive model explains what is happening inside the data set.

Deepali Kulshrestha

Salesforce Certified Developer | Delivery Management Head
"Areas of expertise:- Project, Program and Delivery management. Implement Agile methodology with Dynamic planning process. Quality Audits and Client Coordination."

Leave a Reply

Close Menu