SlideShare a Scribd company logo
Integrating with Einstein Analytics
pat@streamsets.com, @metadaddy
Pat Patterson, Community Champion at StreamSets
Forward-Looking Statements
Statement under the Private Securities Litigation Reform Act of 1995:
This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties materialize or if
any of the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results expressed or implied by the forward-
looking statements we make. All statements other than statements of historical fact could be deemed forward-looking, including any projections of
product or service availability, subscriber growth, earnings, revenues, or other financial items and any statements regarding strategies or plans of
management for future operations, statements of belief, any statements concerning new, planned, or upgraded services or technology developments
and customer contracts or use of our services.
The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new functionality for our
service, new products and services, our new business model, our past operating losses, possible fluctuations in our operating results and rate of
growth, interruptions or delays in our Web hosting, breach of our security measures, the outcome of any litigation, risks associated with completed and
any possible mergers and acquisitions, the immature market in which we operate, our relatively limited operating history, our ability to expand, retain,
and motivate our employees and manage our growth, new releases of our service and successful customer deployment, our limited history reselling
non-salesforce.com products, and utilization and selling to larger enterprise customers. Further information on potential factors that could affect the
financial results of salesforce.com, inc. is included in our annual report on Form 10-K for the most recent fiscal year and in our quarterly report on Form
10-Q for the most recent fiscal quarter. These documents and others containing important disclosures are available on the SEC Filings section of the
Investor Information section of our Web site.
Any unreleased services or features referenced in this or other presentations, press releases or public statements are not currently available and may
not be delivered on time or at all. Customers who purchase our services should make the purchase decisions based upon features that are currently
available. Salesforce.com, inc. assumes no obligation and does not intend to update these forward-looking statements.
Pat Patterson
Community Champion
pat@streamsets.com
@metadaddy
Agenda
Einstein Analytics Basics
• Datasets, dataflows, lenses, dashboards
Integrating with Einstein Analytics via API
• External Data API, SAQL Queries
Creating Analytics Applications
• Templates, Packaging
Example Application : Transaction Analysis
Simple App: Transaction Analysis
We’re going to be working with:
• Transaction Data
• Timestamps, Amounts, Payment Type
etc
• Periodic Uploads via API
• Dashboard showing KPIs
Einstein Analytics Basics
Dataset
A set of source data
• Formatted and optimized for interactive
exploration
• Denormalized, highly compressed
• Comprises Date, Dimension & Measure fields
Create from
• Salesforce data
• External Sources
• CSV Upload
• API
• Dataflow
The foundation for lenses, dashboards, apps
Dataflow
A set of JSON instructions that runs to extract data and
create datasets
Composed of transformation nodes
• sfdcDigest, edgemart
• append, augment, computeExpression,
computeRelative, delta, dim2mea, filter, flatten,
sliceDataset, update
• sfdcRegister
Create via JSON definition file or Dataflow Editor
Start/stop/monitor/schedule via UI
Internal API to list/get/put/start
Lens
Interactive query
• Point-and-click
• SAQL
Wide variety of charts, plus tables
Great for exploring data
Basis for building dashboards
Dashboard
Continuously monitor key metrics of your business, analyzing
the results by key dimensions
Comprises charts, tables
Can include filters to allow data exploration
Integrating with Einstein Analytics via API
SAQL
Salesforce Analytics Query Language
Used to access data in Analytics Datasets
Used internally in lenses and dashboards to gather data for visualizations
Submit SAQL queries via the Analytics REST API, Dashboard/Lens JSON definition
q = load "streamsets_wave__Taxi";
q = filter q by 'payment_type' == "CRD";
q = group q by 'credit_card_type';
q = foreach q generate 'credit_card_type' as 'credit_card_type', count() as 'count';
q = order q by 'count' desc;
q = limit q 2000;
Analytics REST API
Execute queries, manipulate Analytics resources and metadata
Run Query:
• POST /services/data/v40.0/wave/query
{
"query” : "q = load "0Fb36000000LJM6CAO/0Fc36000002rEJhCAM"; q =
foreach q generate total_amount as total_amount; q = order q by
total_amount desc; q = limit q 10;”
}
Manipulate Dataset:
• GET/DELETE/PATCH
https://na1.salesforce.com/services/data/v40.0/wave/datasets/{ID}
Analytics External Data API
Asynchronous API, leveraging SObjects
• Create InsightsExternalData, InsightsExternalDataPart via REST or SOAP
• Data in InsightsExternalDataPart.DataFile as Base64-encoded CSV
• Set InsightsExternalData.Action to Process to start job
• Poll InsightsExternalData.Status to monitor job completion
Payload is CSV
medallion hack_license vendor_id payment_type fare_amount surcharge
F6F7D02179BE915B23EF2DB57836442D 088879B44B80CC9ED43724776C539370 VTS CRD 12 0.5
BE386D8524FCD16B3727DCF0A32D9B25 4EB96EC9F3A42794DEE233EC8A2616CE VTS CRD 12 0.5
E9FF471F36A91031FE5B6D6228674089 72E0B04464AD6513F6A613AABB04E701 VTS CRD 5.5 0.5
89D227B655E5C82AECF13C3F540D4CF4 BA96DE419E711691B9445D6A6307C170 CMT CSH 6.5 0
0BD7C8F5BA12B88E0B67BED28BEA73D8 9FD8F69F0804BDB5549F40E9DA1BE472 CMT CSH 6 0.5
0BD7C8F5BA12B88E0B67BED28BEA73D8 9FD8F69F0804BDB5549F40E9DA1BE472 CMT CSH 5.5 1
DFD2202EE08F7A8DC9A57B02ACB81FE2 51EE87E3205C985EF8431D850C786310 CMT CSH 5 0.5
Bonus: Insights Internal API
Officially undocumented, but used in open source Analytics Cloud DatasetUtils
List dataflows, get/put dataflow JSON, run dataflow programmatically!
RESTful interface, JSON payload
Use at your own risk!
Get/Update Dataflow JSON:
• GET/PATCH https://na1.salesforce.com/insights/internal_api/v1.0/esObject/workflow/{ID}/json
Run Dataflow:
• PUT https://na1.salesforce.com/insights/internal_api/v1.0/esObject/workflow/{ID}/start
Creating Analytics
Applications
Creating Analytics Applications
Analytics App is a container for other assets:
Lenses, Dashboards, Datasets etc
Prebuilt apps from Salesforce
• Sales Analytics
• Service Analytics
Create your own
• One-off
• Master app for a template
Analytics Template
Master app defines the template
Template contains dashboards, lenses, datasets, and,
optionally, dataflows
• At least one dashboard, and at least one dataset
• Your integration can access these resources via APIs – for
example add more datasets and run dataflows
Analytics Template assets control templatization of master
app
• template-info.json, variables.json, ui.json &
folder.json
Analytics Template Gotchas
You must use Workbench and either the
Force.com IDE or Force.com Migration Tool
• JSON template assets are accessed via the
Metadata API
• Skip Sauls has written a utility that helps!
You cannot include external datasets in your
template
• You will get a cryptic ‘EdgemartData null not found’
error message when you try to create an app
• If necessary, create a dummy dataset from CSV
Packaging Your Application
Similar to packaging any other app
• Setup | Create | Packages
Select the Wave Template only
• It’s tempting to select the master app, dataflow,
datasets etc, but doing so will cause errors when you
try to install the package!
Test, test and test!
Conclusion
Conclusion
Einstein Analytics is a platform for third-party innovation
There are some rough edges, but it is evolving quickly
Read the Analytics Template documentation carefully – here be dragons!
Resources
Einstein Analytics Developer Center
• https://developer.salesforce.com/devcenter/analytics
Analytics REST API Developer Guide
• https://developer.salesforce.com/docs/atlas.en-
us.bi_dev_guide_rest.meta/bi_dev_guide_rest/bi_resources_query.htm
Analytics SAQL Reference
• https://developer.salesforce.com/docs/atlas.en-
us.bi_dev_guide_saql.meta/bi_dev_guide_saql/bi_saql_intro.htm
External Data API Developer Guide
• https://developer.salesforce.com/docs/atlas.en-
us.bi_dev_guide_ext_data.meta/bi_dev_guide_ext_data/bi_ext_data_overview.htm
EADX_Samples Package
• https://login.salesforce.com/packaging/installPackage.apexp?p0=04tB00000009YKT
Integrating with Einstein Analytics

More Related Content

What's hot

Introduction to A.I in Sales Cloud and Sales Cloud Einstein (April 27, 2017)
Introduction to A.I in Sales Cloud and Sales Cloud Einstein (April 27, 2017)Introduction to A.I in Sales Cloud and Sales Cloud Einstein (April 27, 2017)
Introduction to A.I in Sales Cloud and Sales Cloud Einstein (April 27, 2017)
Salesforce Partners
 
Unit economics example for B2B SaaS company
Unit economics example for B2B SaaS companyUnit economics example for B2B SaaS company
Unit economics example for B2B SaaS company
Martin Steinman
 
investor pitch deck template 2017
investor pitch deck template 2017investor pitch deck template 2017
investor pitch deck template 2017
Fraser Hay
 
Lead Generation on SlideShare: A How-to Guide
Lead Generation on SlideShare: A How-to GuideLead Generation on SlideShare: A How-to Guide
Lead Generation on SlideShare: A How-to Guide
SlideShare
 
Product Marketing Framework
Product Marketing FrameworkProduct Marketing Framework
Product Marketing Framework
Steve Robins
 
The Key Drivers for SaaS Success
The Key Drivers for SaaS SuccessThe Key Drivers for SaaS Success
The Key Drivers for SaaS Success
David Skok
 
Salesforce Deck Template
Salesforce Deck TemplateSalesforce Deck Template
Salesforce Deck Template
Phil Weinmeister
 
Admin Best Practices: Introducing Einstein Recommendation Builder
Admin Best Practices: Introducing Einstein Recommendation BuilderAdmin Best Practices: Introducing Einstein Recommendation Builder
Admin Best Practices: Introducing Einstein Recommendation Builder
Salesforce Admins
 
12 Key Levers of SaaS Success
12 Key Levers of SaaS Success12 Key Levers of SaaS Success
12 Key Levers of SaaS Success
David Skok
 
Product Strategy and Go to Market Model_Sample
Product Strategy and Go to Market Model_SampleProduct Strategy and Go to Market Model_Sample
Product Strategy and Go to Market Model_SampleParesh Baghel
 
Marketing Cloud: Salesforce Marketing Cloud: die Customer Journey fängt hier ...
Marketing Cloud: Salesforce Marketing Cloud: die Customer Journey fängt hier ...Marketing Cloud: Salesforce Marketing Cloud: die Customer Journey fängt hier ...
Marketing Cloud: Salesforce Marketing Cloud: die Customer Journey fängt hier ...
Salesforce Deutschland
 
Go to Market 101
Go to Market 101Go to Market 101
Go to Market 101
vinodharith
 
Complete Guide To Salesforce Einstein Analytics
Complete Guide To Salesforce Einstein AnalyticsComplete Guide To Salesforce Einstein Analytics
Complete Guide To Salesforce Einstein Analytics
Cloud Analogy
 
Zero to 100 - Part 5: SaaS Business Model & Metrics
Zero to 100 - Part 5: SaaS Business Model & MetricsZero to 100 - Part 5: SaaS Business Model & Metrics
Zero to 100 - Part 5: SaaS Business Model & Metrics
David Skok
 
einstein-cheatsheet.pdf
einstein-cheatsheet.pdfeinstein-cheatsheet.pdf
einstein-cheatsheet.pdf
experio1
 
A High Growth SaaS Playbook - 12 Metrics to Drive Success
A High Growth SaaS Playbook - 12 Metrics to Drive SuccessA High Growth SaaS Playbook - 12 Metrics to Drive Success
A High Growth SaaS Playbook - 12 Metrics to Drive Success
SaaStock
 
Enterprise Architecture Salesforce
Enterprise Architecture SalesforceEnterprise Architecture Salesforce
Enterprise Architecture Salesforce
Peter Doolan
 
Reimagine Growth 2: Retention & Growth
Reimagine Growth 2: Retention & GrowthReimagine Growth 2: Retention & Growth
Reimagine Growth 2: Retention & Growth
CleverTap
 
MAPPING YOUR SALES PROCESS
MAPPING YOUR SALES PROCESSMAPPING YOUR SALES PROCESS
MAPPING YOUR SALES PROCESS
Doble Group, LLC
 
Building a Repeatable, Scalable & Profitable Growth Process
Building a Repeatable, Scalable & Profitable Growth ProcessBuilding a Repeatable, Scalable & Profitable Growth Process
Building a Repeatable, Scalable & Profitable Growth Process
David Skok
 

What's hot (20)

Introduction to A.I in Sales Cloud and Sales Cloud Einstein (April 27, 2017)
Introduction to A.I in Sales Cloud and Sales Cloud Einstein (April 27, 2017)Introduction to A.I in Sales Cloud and Sales Cloud Einstein (April 27, 2017)
Introduction to A.I in Sales Cloud and Sales Cloud Einstein (April 27, 2017)
 
Unit economics example for B2B SaaS company
Unit economics example for B2B SaaS companyUnit economics example for B2B SaaS company
Unit economics example for B2B SaaS company
 
investor pitch deck template 2017
investor pitch deck template 2017investor pitch deck template 2017
investor pitch deck template 2017
 
Lead Generation on SlideShare: A How-to Guide
Lead Generation on SlideShare: A How-to GuideLead Generation on SlideShare: A How-to Guide
Lead Generation on SlideShare: A How-to Guide
 
Product Marketing Framework
Product Marketing FrameworkProduct Marketing Framework
Product Marketing Framework
 
The Key Drivers for SaaS Success
The Key Drivers for SaaS SuccessThe Key Drivers for SaaS Success
The Key Drivers for SaaS Success
 
Salesforce Deck Template
Salesforce Deck TemplateSalesforce Deck Template
Salesforce Deck Template
 
Admin Best Practices: Introducing Einstein Recommendation Builder
Admin Best Practices: Introducing Einstein Recommendation BuilderAdmin Best Practices: Introducing Einstein Recommendation Builder
Admin Best Practices: Introducing Einstein Recommendation Builder
 
12 Key Levers of SaaS Success
12 Key Levers of SaaS Success12 Key Levers of SaaS Success
12 Key Levers of SaaS Success
 
Product Strategy and Go to Market Model_Sample
Product Strategy and Go to Market Model_SampleProduct Strategy and Go to Market Model_Sample
Product Strategy and Go to Market Model_Sample
 
Marketing Cloud: Salesforce Marketing Cloud: die Customer Journey fängt hier ...
Marketing Cloud: Salesforce Marketing Cloud: die Customer Journey fängt hier ...Marketing Cloud: Salesforce Marketing Cloud: die Customer Journey fängt hier ...
Marketing Cloud: Salesforce Marketing Cloud: die Customer Journey fängt hier ...
 
Go to Market 101
Go to Market 101Go to Market 101
Go to Market 101
 
Complete Guide To Salesforce Einstein Analytics
Complete Guide To Salesforce Einstein AnalyticsComplete Guide To Salesforce Einstein Analytics
Complete Guide To Salesforce Einstein Analytics
 
Zero to 100 - Part 5: SaaS Business Model & Metrics
Zero to 100 - Part 5: SaaS Business Model & MetricsZero to 100 - Part 5: SaaS Business Model & Metrics
Zero to 100 - Part 5: SaaS Business Model & Metrics
 
einstein-cheatsheet.pdf
einstein-cheatsheet.pdfeinstein-cheatsheet.pdf
einstein-cheatsheet.pdf
 
A High Growth SaaS Playbook - 12 Metrics to Drive Success
A High Growth SaaS Playbook - 12 Metrics to Drive SuccessA High Growth SaaS Playbook - 12 Metrics to Drive Success
A High Growth SaaS Playbook - 12 Metrics to Drive Success
 
Enterprise Architecture Salesforce
Enterprise Architecture SalesforceEnterprise Architecture Salesforce
Enterprise Architecture Salesforce
 
Reimagine Growth 2: Retention & Growth
Reimagine Growth 2: Retention & GrowthReimagine Growth 2: Retention & Growth
Reimagine Growth 2: Retention & Growth
 
MAPPING YOUR SALES PROCESS
MAPPING YOUR SALES PROCESSMAPPING YOUR SALES PROCESS
MAPPING YOUR SALES PROCESS
 
Building a Repeatable, Scalable & Profitable Growth Process
Building a Repeatable, Scalable & Profitable Growth ProcessBuilding a Repeatable, Scalable & Profitable Growth Process
Building a Repeatable, Scalable & Profitable Growth Process
 

Similar to Integrating with Einstein Analytics

Toronto dev group mar2019
Toronto dev group mar2019Toronto dev group mar2019
Toronto dev group mar2019
rikkehovgaard
 
Building einstein analytics apps uk-compressed
Building einstein analytics apps   uk-compressedBuilding einstein analytics apps   uk-compressed
Building einstein analytics apps uk-compressed
rikkehovgaard
 
Unleash the Potential of Big Data on Salesforce
Unleash the Potential of Big Data on SalesforceUnleash the Potential of Big Data on Salesforce
Unleash the Potential of Big Data on Salesforce
Dreamforce
 
Analyze billions of records on Salesforce App Cloud with BigObject
Analyze billions of records on Salesforce App Cloud with BigObjectAnalyze billions of records on Salesforce App Cloud with BigObject
Analyze billions of records on Salesforce App Cloud with BigObject
Salesforce Developers
 
Forcelandia 2016 Wave App Development
Forcelandia 2016   Wave App DevelopmentForcelandia 2016   Wave App Development
Forcelandia 2016 Wave App Development
Skip Sauls
 
Meet the Product Managers
Meet the Product ManagersMeet the Product Managers
Meet the Product Managersdreamforce2006
 
Build a Lightning Reporting App with the Salesforce Analytics API
Build a Lightning Reporting App with the Salesforce Analytics APIBuild a Lightning Reporting App with the Salesforce Analytics API
Build a Lightning Reporting App with the Salesforce Analytics API
Salesforce Developers
 
Introducing Analytics Mash-ups
Introducing Analytics Mash-upsIntroducing Analytics Mash-ups
Introducing Analytics Mash-upsdreamforce2006
 
Get ready for your platform developer i certification webinar
Get ready for your platform developer i certification   webinarGet ready for your platform developer i certification   webinar
Get ready for your platform developer i certification webinar
JackGuo20
 
Integrating with salesforce
Integrating with salesforceIntegrating with salesforce
Integrating with salesforce
Mark Adcock
 
Build System Performance Data Analytics Using Wave
Build System Performance Data Analytics Using WaveBuild System Performance Data Analytics Using Wave
Build System Performance Data Analytics Using Wave
Salesforce Developers
 
Processing Big Data At-Scale in the App Cloud
Processing Big Data At-Scale in the App CloudProcessing Big Data At-Scale in the App Cloud
Processing Big Data At-Scale in the App Cloud
Salesforce Developers
 
Winter'18 Developer Preview Webinar
Winter'18 Developer Preview WebinarWinter'18 Developer Preview Webinar
Winter'18 Developer Preview Webinar
Salesforce Developers
 
Boxcars and Cabooses: When One More XHR Is Too Much
Boxcars and Cabooses: When One More XHR Is Too MuchBoxcars and Cabooses: When One More XHR Is Too Much
Boxcars and Cabooses: When One More XHR Is Too Much
Peter Chittum
 
Enterprise API New Features and Roadmap
Enterprise API New Features and RoadmapEnterprise API New Features and Roadmap
Enterprise API New Features and Roadmap
Salesforce Developers
 
ISV Monthly Tech Enablement (July 2017)
ISV Monthly Tech Enablement (July 2017)ISV Monthly Tech Enablement (July 2017)
ISV Monthly Tech Enablement (July 2017)
Salesforce Partners
 
Next-Generation Native Apps
Next-Generation Native AppsNext-Generation Native Apps
Next-Generation Native Appsdreamforce2006
 
Lightning Reports - Dreamforce 2015
Lightning Reports - Dreamforce 2015Lightning Reports - Dreamforce 2015
Lightning Reports - Dreamforce 2015
Daniel Peter
 
Building Dynamic UI with Visual Workflow Runtime API
Building Dynamic UI with Visual Workflow Runtime APIBuilding Dynamic UI with Visual Workflow Runtime API
Building Dynamic UI with Visual Workflow Runtime API
Salesforce Developers
 
Salesforce Spring'15 release overview
Salesforce Spring'15 release overviewSalesforce Spring'15 release overview
Salesforce Spring'15 release overview
Rakesh Gupta
 

Similar to Integrating with Einstein Analytics (20)

Toronto dev group mar2019
Toronto dev group mar2019Toronto dev group mar2019
Toronto dev group mar2019
 
Building einstein analytics apps uk-compressed
Building einstein analytics apps   uk-compressedBuilding einstein analytics apps   uk-compressed
Building einstein analytics apps uk-compressed
 
Unleash the Potential of Big Data on Salesforce
Unleash the Potential of Big Data on SalesforceUnleash the Potential of Big Data on Salesforce
Unleash the Potential of Big Data on Salesforce
 
Analyze billions of records on Salesforce App Cloud with BigObject
Analyze billions of records on Salesforce App Cloud with BigObjectAnalyze billions of records on Salesforce App Cloud with BigObject
Analyze billions of records on Salesforce App Cloud with BigObject
 
Forcelandia 2016 Wave App Development
Forcelandia 2016   Wave App DevelopmentForcelandia 2016   Wave App Development
Forcelandia 2016 Wave App Development
 
Meet the Product Managers
Meet the Product ManagersMeet the Product Managers
Meet the Product Managers
 
Build a Lightning Reporting App with the Salesforce Analytics API
Build a Lightning Reporting App with the Salesforce Analytics APIBuild a Lightning Reporting App with the Salesforce Analytics API
Build a Lightning Reporting App with the Salesforce Analytics API
 
Introducing Analytics Mash-ups
Introducing Analytics Mash-upsIntroducing Analytics Mash-ups
Introducing Analytics Mash-ups
 
Get ready for your platform developer i certification webinar
Get ready for your platform developer i certification   webinarGet ready for your platform developer i certification   webinar
Get ready for your platform developer i certification webinar
 
Integrating with salesforce
Integrating with salesforceIntegrating with salesforce
Integrating with salesforce
 
Build System Performance Data Analytics Using Wave
Build System Performance Data Analytics Using WaveBuild System Performance Data Analytics Using Wave
Build System Performance Data Analytics Using Wave
 
Processing Big Data At-Scale in the App Cloud
Processing Big Data At-Scale in the App CloudProcessing Big Data At-Scale in the App Cloud
Processing Big Data At-Scale in the App Cloud
 
Winter'18 Developer Preview Webinar
Winter'18 Developer Preview WebinarWinter'18 Developer Preview Webinar
Winter'18 Developer Preview Webinar
 
Boxcars and Cabooses: When One More XHR Is Too Much
Boxcars and Cabooses: When One More XHR Is Too MuchBoxcars and Cabooses: When One More XHR Is Too Much
Boxcars and Cabooses: When One More XHR Is Too Much
 
Enterprise API New Features and Roadmap
Enterprise API New Features and RoadmapEnterprise API New Features and Roadmap
Enterprise API New Features and Roadmap
 
ISV Monthly Tech Enablement (July 2017)
ISV Monthly Tech Enablement (July 2017)ISV Monthly Tech Enablement (July 2017)
ISV Monthly Tech Enablement (July 2017)
 
Next-Generation Native Apps
Next-Generation Native AppsNext-Generation Native Apps
Next-Generation Native Apps
 
Lightning Reports - Dreamforce 2015
Lightning Reports - Dreamforce 2015Lightning Reports - Dreamforce 2015
Lightning Reports - Dreamforce 2015
 
Building Dynamic UI with Visual Workflow Runtime API
Building Dynamic UI with Visual Workflow Runtime APIBuilding Dynamic UI with Visual Workflow Runtime API
Building Dynamic UI with Visual Workflow Runtime API
 
Salesforce Spring'15 release overview
Salesforce Spring'15 release overviewSalesforce Spring'15 release overview
Salesforce Spring'15 release overview
 

More from Pat Patterson

DevOps from the Provider Perspective
DevOps from the Provider PerspectiveDevOps from the Provider Perspective
DevOps from the Provider Perspective
Pat Patterson
 
How Imprivata Combines External Data Sources for Business Insights
How Imprivata Combines External Data Sources for Business InsightsHow Imprivata Combines External Data Sources for Business Insights
How Imprivata Combines External Data Sources for Business Insights
Pat Patterson
 
Data Integration with Apache Kafka: What, Why, How
Data Integration with Apache Kafka: What, Why, HowData Integration with Apache Kafka: What, Why, How
Data Integration with Apache Kafka: What, Why, How
Pat Patterson
 
Project Ouroboros: Using StreamSets Data Collector to Help Manage the StreamS...
Project Ouroboros: Using StreamSets Data Collector to Help Manage the StreamS...Project Ouroboros: Using StreamSets Data Collector to Help Manage the StreamS...
Project Ouroboros: Using StreamSets Data Collector to Help Manage the StreamS...
Pat Patterson
 
Dealing with Drift: Building an Enterprise Data Lake
Dealing with Drift: Building an Enterprise Data LakeDealing with Drift: Building an Enterprise Data Lake
Dealing with Drift: Building an Enterprise Data Lake
Pat Patterson
 
Efficient Schemas in Motion with Kafka and Schema Registry
Efficient Schemas in Motion with Kafka and Schema RegistryEfficient Schemas in Motion with Kafka and Schema Registry
Efficient Schemas in Motion with Kafka and Schema Registry
Pat Patterson
 
Dealing With Drift - Building an Enterprise Data Lake
Dealing With Drift - Building an Enterprise Data LakeDealing With Drift - Building an Enterprise Data Lake
Dealing With Drift - Building an Enterprise Data Lake
Pat Patterson
 
Building Data Pipelines with Spark and StreamSets
Building Data Pipelines with Spark and StreamSetsBuilding Data Pipelines with Spark and StreamSets
Building Data Pipelines with Spark and StreamSets
Pat Patterson
 
Adaptive Data Cleansing with StreamSets and Cassandra
Adaptive Data Cleansing with StreamSets and CassandraAdaptive Data Cleansing with StreamSets and Cassandra
Adaptive Data Cleansing with StreamSets and Cassandra
Pat Patterson
 
Building Custom Big Data Integrations
Building Custom Big Data IntegrationsBuilding Custom Big Data Integrations
Building Custom Big Data Integrations
Pat Patterson
 
Ingest and Stream Processing - What will you choose?
Ingest and Stream Processing - What will you choose?Ingest and Stream Processing - What will you choose?
Ingest and Stream Processing - What will you choose?
Pat Patterson
 
Open Source Big Data Ingestion - Without the Heartburn!
Open Source Big Data Ingestion - Without the Heartburn!Open Source Big Data Ingestion - Without the Heartburn!
Open Source Big Data Ingestion - Without the Heartburn!
Pat Patterson
 
Ingest and Stream Processing - What will you choose?
Ingest and Stream Processing - What will you choose?Ingest and Stream Processing - What will you choose?
Ingest and Stream Processing - What will you choose?
Pat Patterson
 
All Aboard the Boxcar! Going Beyond the Basics of REST
All Aboard the Boxcar! Going Beyond the Basics of RESTAll Aboard the Boxcar! Going Beyond the Basics of REST
All Aboard the Boxcar! Going Beyond the Basics of REST
Pat Patterson
 
Provisioning IDaaS - Using SCIM to Enable Cloud Identity
Provisioning IDaaS - Using SCIM to Enable Cloud IdentityProvisioning IDaaS - Using SCIM to Enable Cloud Identity
Provisioning IDaaS - Using SCIM to Enable Cloud Identity
Pat Patterson
 
OData: Universal Data Solvent or Clunky Enterprise Goo? (GlueCon 2015)
OData: Universal Data Solvent or Clunky Enterprise Goo? (GlueCon 2015)OData: Universal Data Solvent or Clunky Enterprise Goo? (GlueCon 2015)
OData: Universal Data Solvent or Clunky Enterprise Goo? (GlueCon 2015)
Pat Patterson
 
Enterprise IoT: Data in Context
Enterprise IoT: Data in ContextEnterprise IoT: Data in Context
Enterprise IoT: Data in Context
Pat Patterson
 
OData: A Standard API for Data Access
OData: A Standard API for Data AccessOData: A Standard API for Data Access
OData: A Standard API for Data Access
Pat Patterson
 
API-Driven Relationships: Building The Trans-Internet Express of the Future
API-Driven Relationships: Building The Trans-Internet Express of the FutureAPI-Driven Relationships: Building The Trans-Internet Express of the Future
API-Driven Relationships: Building The Trans-Internet Express of the Future
Pat Patterson
 
Using Salesforce to Manage Your Developer Community
Using Salesforce to Manage Your Developer CommunityUsing Salesforce to Manage Your Developer Community
Using Salesforce to Manage Your Developer Community
Pat Patterson
 

More from Pat Patterson (20)

DevOps from the Provider Perspective
DevOps from the Provider PerspectiveDevOps from the Provider Perspective
DevOps from the Provider Perspective
 
How Imprivata Combines External Data Sources for Business Insights
How Imprivata Combines External Data Sources for Business InsightsHow Imprivata Combines External Data Sources for Business Insights
How Imprivata Combines External Data Sources for Business Insights
 
Data Integration with Apache Kafka: What, Why, How
Data Integration with Apache Kafka: What, Why, HowData Integration with Apache Kafka: What, Why, How
Data Integration with Apache Kafka: What, Why, How
 
Project Ouroboros: Using StreamSets Data Collector to Help Manage the StreamS...
Project Ouroboros: Using StreamSets Data Collector to Help Manage the StreamS...Project Ouroboros: Using StreamSets Data Collector to Help Manage the StreamS...
Project Ouroboros: Using StreamSets Data Collector to Help Manage the StreamS...
 
Dealing with Drift: Building an Enterprise Data Lake
Dealing with Drift: Building an Enterprise Data LakeDealing with Drift: Building an Enterprise Data Lake
Dealing with Drift: Building an Enterprise Data Lake
 
Efficient Schemas in Motion with Kafka and Schema Registry
Efficient Schemas in Motion with Kafka and Schema RegistryEfficient Schemas in Motion with Kafka and Schema Registry
Efficient Schemas in Motion with Kafka and Schema Registry
 
Dealing With Drift - Building an Enterprise Data Lake
Dealing With Drift - Building an Enterprise Data LakeDealing With Drift - Building an Enterprise Data Lake
Dealing With Drift - Building an Enterprise Data Lake
 
Building Data Pipelines with Spark and StreamSets
Building Data Pipelines with Spark and StreamSetsBuilding Data Pipelines with Spark and StreamSets
Building Data Pipelines with Spark and StreamSets
 
Adaptive Data Cleansing with StreamSets and Cassandra
Adaptive Data Cleansing with StreamSets and CassandraAdaptive Data Cleansing with StreamSets and Cassandra
Adaptive Data Cleansing with StreamSets and Cassandra
 
Building Custom Big Data Integrations
Building Custom Big Data IntegrationsBuilding Custom Big Data Integrations
Building Custom Big Data Integrations
 
Ingest and Stream Processing - What will you choose?
Ingest and Stream Processing - What will you choose?Ingest and Stream Processing - What will you choose?
Ingest and Stream Processing - What will you choose?
 
Open Source Big Data Ingestion - Without the Heartburn!
Open Source Big Data Ingestion - Without the Heartburn!Open Source Big Data Ingestion - Without the Heartburn!
Open Source Big Data Ingestion - Without the Heartburn!
 
Ingest and Stream Processing - What will you choose?
Ingest and Stream Processing - What will you choose?Ingest and Stream Processing - What will you choose?
Ingest and Stream Processing - What will you choose?
 
All Aboard the Boxcar! Going Beyond the Basics of REST
All Aboard the Boxcar! Going Beyond the Basics of RESTAll Aboard the Boxcar! Going Beyond the Basics of REST
All Aboard the Boxcar! Going Beyond the Basics of REST
 
Provisioning IDaaS - Using SCIM to Enable Cloud Identity
Provisioning IDaaS - Using SCIM to Enable Cloud IdentityProvisioning IDaaS - Using SCIM to Enable Cloud Identity
Provisioning IDaaS - Using SCIM to Enable Cloud Identity
 
OData: Universal Data Solvent or Clunky Enterprise Goo? (GlueCon 2015)
OData: Universal Data Solvent or Clunky Enterprise Goo? (GlueCon 2015)OData: Universal Data Solvent or Clunky Enterprise Goo? (GlueCon 2015)
OData: Universal Data Solvent or Clunky Enterprise Goo? (GlueCon 2015)
 
Enterprise IoT: Data in Context
Enterprise IoT: Data in ContextEnterprise IoT: Data in Context
Enterprise IoT: Data in Context
 
OData: A Standard API for Data Access
OData: A Standard API for Data AccessOData: A Standard API for Data Access
OData: A Standard API for Data Access
 
API-Driven Relationships: Building The Trans-Internet Express of the Future
API-Driven Relationships: Building The Trans-Internet Express of the FutureAPI-Driven Relationships: Building The Trans-Internet Express of the Future
API-Driven Relationships: Building The Trans-Internet Express of the Future
 
Using Salesforce to Manage Your Developer Community
Using Salesforce to Manage Your Developer CommunityUsing Salesforce to Manage Your Developer Community
Using Salesforce to Manage Your Developer Community
 

Recently uploaded

Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptxText-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
ShamsuddeenMuhammadA
 
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Globus
 
AI Genie Review: World’s First Open AI WordPress Website Creator
AI Genie Review: World’s First Open AI WordPress Website CreatorAI Genie Review: World’s First Open AI WordPress Website Creator
AI Genie Review: World’s First Open AI WordPress Website Creator
Google
 
Lecture 1 Introduction to games development
Lecture 1 Introduction to games developmentLecture 1 Introduction to games development
Lecture 1 Introduction to games development
abdulrafaychaudhry
 
Enterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptxEnterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptx
QuickwayInfoSystems3
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
Max Andersen
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
Shane Coughlan
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
Łukasz Chruściel
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
Donna Lenk
 
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, BetterWebinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
XfilesPro
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
Adele Miller
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
Aftab Hussain
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Globus
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
Safe Software
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
Boni García
 
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissancesAtelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Neo4j
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
Globus
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Łukasz Chruściel
 

Recently uploaded (20)

Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptxText-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
Text-Summarization-of-Breaking-News-Using-Fine-tuning-BART-Model.pptx
 
OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024OpenMetadata Community Meeting - 5th June 2024
OpenMetadata Community Meeting - 5th June 2024
 
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket ManagementUtilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
Utilocate provides Smarter, Better, Faster, Safer Locate Ticket Management
 
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data AnalysisProviding Globus Services to Users of JASMIN for Environmental Data Analysis
Providing Globus Services to Users of JASMIN for Environmental Data Analysis
 
AI Genie Review: World’s First Open AI WordPress Website Creator
AI Genie Review: World’s First Open AI WordPress Website CreatorAI Genie Review: World’s First Open AI WordPress Website Creator
AI Genie Review: World’s First Open AI WordPress Website Creator
 
Lecture 1 Introduction to games development
Lecture 1 Introduction to games developmentLecture 1 Introduction to games development
Lecture 1 Introduction to games development
 
Enterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptxEnterprise Software Development with No Code Solutions.pptx
Enterprise Software Development with No Code Solutions.pptx
 
Quarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden ExtensionsQuarkus Hidden and Forbidden Extensions
Quarkus Hidden and Forbidden Extensions
 
openEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain SecurityopenEuler Case Study - The Journey to Supply Chain Security
openEuler Case Study - The Journey to Supply Chain Security
 
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf2024 eCommerceDays Toulouse - Sylius 2.0.pdf
2024 eCommerceDays Toulouse - Sylius 2.0.pdf
 
Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"Navigating the Metaverse: A Journey into Virtual Evolution"
Navigating the Metaverse: A Journey into Virtual Evolution"
 
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, BetterWebinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
Webinar: Salesforce Document Management 2.0 - Smarter, Faster, Better
 
May Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdfMay Marketo Masterclass, London MUG May 22 2024.pdf
May Marketo Masterclass, London MUG May 22 2024.pdf
 
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of CodeA Study of Variable-Role-based Feature Enrichment in Neural Models of Code
A Study of Variable-Role-based Feature Enrichment in Neural Models of Code
 
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
Innovating Inference - Remote Triggering of Large Language Models on HPC Clus...
 
Essentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FMEEssentials of Automations: The Art of Triggers and Actions in FME
Essentials of Automations: The Art of Triggers and Actions in FME
 
APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)APIs for Browser Automation (MoT Meetup 2024)
APIs for Browser Automation (MoT Meetup 2024)
 
Atelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissancesAtelier - Innover avec l’IA Générative et les graphes de connaissances
Atelier - Innover avec l’IA Générative et les graphes de connaissances
 
Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024Globus Compute Introduction - GlobusWorld 2024
Globus Compute Introduction - GlobusWorld 2024
 
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️Need for Speed: Removing speed bumps from your Symfony projects ⚡️
Need for Speed: Removing speed bumps from your Symfony projects ⚡️
 

Integrating with Einstein Analytics

  • 1. Integrating with Einstein Analytics pat@streamsets.com, @metadaddy Pat Patterson, Community Champion at StreamSets
  • 2. Forward-Looking Statements Statement under the Private Securities Litigation Reform Act of 1995: This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results expressed or implied by the forward- looking statements we make. All statements other than statements of historical fact could be deemed forward-looking, including any projections of product or service availability, subscriber growth, earnings, revenues, or other financial items and any statements regarding strategies or plans of management for future operations, statements of belief, any statements concerning new, planned, or upgraded services or technology developments and customer contracts or use of our services. The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new functionality for our service, new products and services, our new business model, our past operating losses, possible fluctuations in our operating results and rate of growth, interruptions or delays in our Web hosting, breach of our security measures, the outcome of any litigation, risks associated with completed and any possible mergers and acquisitions, the immature market in which we operate, our relatively limited operating history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of our service and successful customer deployment, our limited history reselling non-salesforce.com products, and utilization and selling to larger enterprise customers. Further information on potential factors that could affect the financial results of salesforce.com, inc. is included in our annual report on Form 10-K for the most recent fiscal year and in our quarterly report on Form 10-Q for the most recent fiscal quarter. These documents and others containing important disclosures are available on the SEC Filings section of the Investor Information section of our Web site. Any unreleased services or features referenced in this or other presentations, press releases or public statements are not currently available and may not be delivered on time or at all. Customers who purchase our services should make the purchase decisions based upon features that are currently available. Salesforce.com, inc. assumes no obligation and does not intend to update these forward-looking statements.
  • 4. Agenda Einstein Analytics Basics • Datasets, dataflows, lenses, dashboards Integrating with Einstein Analytics via API • External Data API, SAQL Queries Creating Analytics Applications • Templates, Packaging
  • 5. Example Application : Transaction Analysis
  • 6. Simple App: Transaction Analysis We’re going to be working with: • Transaction Data • Timestamps, Amounts, Payment Type etc • Periodic Uploads via API • Dashboard showing KPIs
  • 8. Dataset A set of source data • Formatted and optimized for interactive exploration • Denormalized, highly compressed • Comprises Date, Dimension & Measure fields Create from • Salesforce data • External Sources • CSV Upload • API • Dataflow The foundation for lenses, dashboards, apps
  • 9. Dataflow A set of JSON instructions that runs to extract data and create datasets Composed of transformation nodes • sfdcDigest, edgemart • append, augment, computeExpression, computeRelative, delta, dim2mea, filter, flatten, sliceDataset, update • sfdcRegister Create via JSON definition file or Dataflow Editor Start/stop/monitor/schedule via UI Internal API to list/get/put/start
  • 10. Lens Interactive query • Point-and-click • SAQL Wide variety of charts, plus tables Great for exploring data Basis for building dashboards
  • 11. Dashboard Continuously monitor key metrics of your business, analyzing the results by key dimensions Comprises charts, tables Can include filters to allow data exploration
  • 12. Integrating with Einstein Analytics via API
  • 13. SAQL Salesforce Analytics Query Language Used to access data in Analytics Datasets Used internally in lenses and dashboards to gather data for visualizations Submit SAQL queries via the Analytics REST API, Dashboard/Lens JSON definition q = load "streamsets_wave__Taxi"; q = filter q by 'payment_type' == "CRD"; q = group q by 'credit_card_type'; q = foreach q generate 'credit_card_type' as 'credit_card_type', count() as 'count'; q = order q by 'count' desc; q = limit q 2000;
  • 14. Analytics REST API Execute queries, manipulate Analytics resources and metadata Run Query: • POST /services/data/v40.0/wave/query { "query” : "q = load "0Fb36000000LJM6CAO/0Fc36000002rEJhCAM"; q = foreach q generate total_amount as total_amount; q = order q by total_amount desc; q = limit q 10;” } Manipulate Dataset: • GET/DELETE/PATCH https://na1.salesforce.com/services/data/v40.0/wave/datasets/{ID}
  • 15. Analytics External Data API Asynchronous API, leveraging SObjects • Create InsightsExternalData, InsightsExternalDataPart via REST or SOAP • Data in InsightsExternalDataPart.DataFile as Base64-encoded CSV • Set InsightsExternalData.Action to Process to start job • Poll InsightsExternalData.Status to monitor job completion Payload is CSV medallion hack_license vendor_id payment_type fare_amount surcharge F6F7D02179BE915B23EF2DB57836442D 088879B44B80CC9ED43724776C539370 VTS CRD 12 0.5 BE386D8524FCD16B3727DCF0A32D9B25 4EB96EC9F3A42794DEE233EC8A2616CE VTS CRD 12 0.5 E9FF471F36A91031FE5B6D6228674089 72E0B04464AD6513F6A613AABB04E701 VTS CRD 5.5 0.5 89D227B655E5C82AECF13C3F540D4CF4 BA96DE419E711691B9445D6A6307C170 CMT CSH 6.5 0 0BD7C8F5BA12B88E0B67BED28BEA73D8 9FD8F69F0804BDB5549F40E9DA1BE472 CMT CSH 6 0.5 0BD7C8F5BA12B88E0B67BED28BEA73D8 9FD8F69F0804BDB5549F40E9DA1BE472 CMT CSH 5.5 1 DFD2202EE08F7A8DC9A57B02ACB81FE2 51EE87E3205C985EF8431D850C786310 CMT CSH 5 0.5
  • 16. Bonus: Insights Internal API Officially undocumented, but used in open source Analytics Cloud DatasetUtils List dataflows, get/put dataflow JSON, run dataflow programmatically! RESTful interface, JSON payload Use at your own risk! Get/Update Dataflow JSON: • GET/PATCH https://na1.salesforce.com/insights/internal_api/v1.0/esObject/workflow/{ID}/json Run Dataflow: • PUT https://na1.salesforce.com/insights/internal_api/v1.0/esObject/workflow/{ID}/start
  • 18. Creating Analytics Applications Analytics App is a container for other assets: Lenses, Dashboards, Datasets etc Prebuilt apps from Salesforce • Sales Analytics • Service Analytics Create your own • One-off • Master app for a template
  • 19. Analytics Template Master app defines the template Template contains dashboards, lenses, datasets, and, optionally, dataflows • At least one dashboard, and at least one dataset • Your integration can access these resources via APIs – for example add more datasets and run dataflows Analytics Template assets control templatization of master app • template-info.json, variables.json, ui.json & folder.json
  • 20. Analytics Template Gotchas You must use Workbench and either the Force.com IDE or Force.com Migration Tool • JSON template assets are accessed via the Metadata API • Skip Sauls has written a utility that helps! You cannot include external datasets in your template • You will get a cryptic ‘EdgemartData null not found’ error message when you try to create an app • If necessary, create a dummy dataset from CSV
  • 21. Packaging Your Application Similar to packaging any other app • Setup | Create | Packages Select the Wave Template only • It’s tempting to select the master app, dataflow, datasets etc, but doing so will cause errors when you try to install the package! Test, test and test!
  • 23. Conclusion Einstein Analytics is a platform for third-party innovation There are some rough edges, but it is evolving quickly Read the Analytics Template documentation carefully – here be dragons!
  • 24. Resources Einstein Analytics Developer Center • https://developer.salesforce.com/devcenter/analytics Analytics REST API Developer Guide • https://developer.salesforce.com/docs/atlas.en- us.bi_dev_guide_rest.meta/bi_dev_guide_rest/bi_resources_query.htm Analytics SAQL Reference • https://developer.salesforce.com/docs/atlas.en- us.bi_dev_guide_saql.meta/bi_dev_guide_saql/bi_saql_intro.htm External Data API Developer Guide • https://developer.salesforce.com/docs/atlas.en- us.bi_dev_guide_ext_data.meta/bi_dev_guide_ext_data/bi_ext_data_overview.htm EADX_Samples Package • https://login.salesforce.com/packaging/installPackage.apexp?p0=04tB00000009YKT

Editor's Notes

  1. Audience – large shops, ISVs
  2. Clarify use of REST API – data extraction, dataset manipulation
  3. Explain more about motivation for templates