SlideShare une entreprise Scribd logo
1  sur  61
Télécharger pour lire hors ligne
Lessons from building large-scale,
multi-cloud, SaaS software at
Databricks
Jeff Pang
Principal Software Engineer @
Who am I?
▪ Jeff Pang
Principal Software Engineer, Databricks
▪ Databricks Platform Engineering
To help data teams solve the world’s toughest problems,
the Databricks Platform team provides the world-class,
multi-cloud platform that enables us to expand fast and
iterate quickly
http://databricks.com/careers
About
▪ Founded in 2013 by the original creators of Apache Spark
▪ Data and AI platform as a service for 5000+ customers
▪ 1000+ employees, 200+ engineers, >$200M annual recurring revenue
Our product
Data scientists Data engineers Business users
Agenda
The architecture
Inside the Unified Analytics Platform
Challenges & lessons
Growing a SaaS data platform
Operating on multiple clouds
Accelerating a data platform with data & AI
The architecture
Inside the Unified Analytics Platform
Simple data engineering architecture
cluster
Reporting
Analytics
Business-level
Aggregates
Filtered, Cleaned
Augmented
Raw
Ingestion
Bronze Silver Gold
CSV,
JSON,
TXT…
Data Lake
S3, HDFS,
Blob Store, etc.
Modern data engineering architecture
Data Lake
Reporting,
Notebooks, AI
Streaming
Analytics
Bronze Silver Gold
CSV,
JSON,
TXT…
Kinesis
Workflow scheduling
clusters
Cluster management
Customer Network
Multiply by thousands of customers...
Data Lake
CSV,
JSON,
TXT…
Kinesis
Customer Network
Data Lake
CSV,
JSON,
TXT…
Kinesis
Customer Network
Data Lake
CSV,
JSON,
TXT…
Kinesis
Customer Network
Data Lake
CSV,
JSON,
TXT…
Kinesis
Customer Network
Data Lake
CSV,
JSON,
TXT…
Kinesis
...
control plane
Collaborative Notebooks, AI
Streaming
Analytics Workflow scheduling Cluster management Admin & Security
Reporting,
Business Insights
...across many regions...
...on multiple clouds...
→ millions of VMs managed per day
That’s the Databricks control plane
What did we learn from building a large-scale, multi-cloud data platform?
100,000s of users 100,000s of Spark clusters per day
Millions of VMs launched per day
Exabytes of data processed per
day
Growing a SaaS data platform
Evolution of the Databricks control plane
We didn’t start with a global-scale, multi-cloud data platform
Challenge: Scaling a data platform from one customer to 5000+
Lesson: The factory that builds and evolves the data platform is more
important than the data platform itself
Fast time to market
Databricks control plane “in-a-box”
▪ Need to deliver value quickly
▪ Need to iterate quickly
▪ Can’t break things while iterating!
Keys to success:
▪ Modern CI
▪ Fast developer tools
▪ Testing, testing, testing
V1 V2
25-500x
Scala
build
speedups
10s of
millions of
tests per
day
100s of
Databrick
s
“in-a-box”
test envs
per day
Expand the total addressable market
Replicating control planes quickly
▪ Need different configurations for
different environments
▪ Need to update many environments
▪ Can’t slow down platform
development!
Keys to success:
▪ Declarative infrastructure
▪ Modern CD infrastructure jsonnet
10 million
lines
250k
lines
Service Framework
Land and expand workloads
Scaling the control plane
▪ Need to support more users &
workloads
▪ Need to build more features that scale
▪ Don’t want devs to reinvent the wheel!
Keys to success:
▪ A service framework to do the hard
stuff
▪ Decompose monoliths to microservices
Container & replica management, APIs & RPCs, rate
limits, metrics, logging, secrets & security, ...
Cloud
VM API
Cluster
Manager
Customer Clusters
version 1
Cloud
VM API
CM Master
Customer Clusters
Worker Worker
API Server
CM MasterCM Shard
API ServerAPI ServerAPI Server
version 3
usage
Data Platform
The Databricks data platform factory
...
Customer Network Customer Network Customer Network Customer Network Customer Network
Kubernetes
HCVault, Consul, Prometheus, ELK, Jaeger, Grafana, common IAM, onboarding, billing,
...
Envoy, GraphQL
Cloud VMs, network, storage, databases
CM Master
Worker Worker
API Server
CM MasterCM Shard
API ServerAPI ServerAPI Server
Operating on multiple clouds
Why multi-cloud?
The data platform needs to be where the data is
▪ Performance, latency, egress data costs
▪ Cloud-specific integrations
▪ Data governance policies
Challenge: Supporting multiple clouds without sacrificing dev velocity
Lesson: A cloud-agnostic layer is key to dev velocity, but it also needs to
integrate with the standards of each cloud and deal with their quirks
Challenge: dev velocity on multiple clouds
Many cloud services have no
direct equivalents
▪ DynamoDB vs ?
▪ CosmosDB vs ?
▪ Aurora vs ?
▪ SQL DW vs ?
Cloud APIs don’t look like
each other
▪ SDK: no common interfaces
▪ Auth: IAM vs AAD
▪ ACLs: IAM vs Azure RBAC
APIs?Services?
Operational tools for each
cloud are very different
▪ Templates: CloudFormation
vs ARM templates
▪ Logs: CloudWatch vs Azure
Monitor
Ops?
Approach: cloud agnostic dev framework
Use lowest common denominator cloud services
EKS ←Kubernetes →AKS
HCVault, Consul, Prometheus, ELK, Jaeger, Grafana, common IAM, onboarding, billing,
...
Envoy
EC2
VPC
RDS MySQL/Postgres
CM Master
Worker Worker
API Server
CM MasterCM Shard
API ServerAPI ServerAPI Server
Azure Compute
VNet
Azure Database for MySQL/Postgres
≈
≈
≈
ELB Azure Load Balancer
Service
framework API
≈
Challenge: not everything can be cloud agnostic
Customers want
to integrate with
the standards of
each cloud
“Equivalent”
cloud services
have
implementation
quirks
Approach: abstraction layer for key integrations
Fargate ←Kubernetes →AKS
Bring your own key encryption
AuthN / AuthZ / Identity
EC2
VPC
RDS MySQL/Postgres
CM Master
Worker Worker
API Server
CM MasterCM Shard
API ServerAPI ServerAPI Server
Azure Compute
VNet
Azure Database for MySQL/Postgres
≈
≈
≈
Okta, OneLogin, etc.
Azure Active Directory
IAM roles
KMS Azure Key Vault
Unified usage service
AWS Marketplace, Custom
Billing
Azure Commerce Billing
ELB Azure Load Balancer≈
Databricks file systemS3 Azure Storage
S3 commit service
Approach: harmonize “equivalent” cloud service quirks
Promise of elastic compute
is unevenly distributed
▪ Provisioning speed differs
▪ Deletion speed differs
(speed to refill quota)
→ Need to adapt to cloud
resource and API limits
TCP connections are hard
▪ “Invisible” NATs have
connection & timeout limits
→ Need tuned keep alive,
connection limit configs
▪ Kernel TCP SACK bug caused
API hangs in one cloud only
→ Need to deep robustness
testing against both clouds
(ex: poor NIC reliability)
NetworkVirtual machines
When MySQL != MySQL
▪ Host OS matters
Ex: case sensitivity defaults
▪ Default DB params matter
Ex: tablespace config → 100x
difference in recovery time
→ Need expertise in DB
tuning to ensure equivalence
Databases
Accelerating a data platform
with data & AI
Inception: Improving a data platform with data & AI
We are one of our biggest customers
Challenge: Building a data platform is hard without a data platform
▪ Need data to track usage, maintain security
▪ Need data to observe and improve how users use the data platform
▪ Need data to keep the data platform up and running
Lesson: Data & AI can accelerate data platform features, product
analytics, and devops
How we use Databricks to accelerate itself
Key platform features
▪ Usage and billing reports
▪ Audit logs
Essential product analytics
▪ Feature usage, trends, prediction
▪ Growth and churn forecast, models
Mission critical devops
▪ Service KPIs and SLAs
▪ API and application structured logs
▪ Spark debug logs
Data foundation & analytics
Our distributed data pipelines
100s of TB
logs per
day
Millions of
time
series per
secondTime-series, raw logs,
request tracing,
dashboards
Kinesis Event Hubs
Declarative data
pipeline deployments
Real-time streaming
Takeaways
The architecture
Managing millions of VMs around the world in
multiple clouds
Challenges & lessons
The factory that builds and evolves the data
platform is more important than the data platform
itself
A cloud-agnostic platform that integrates with
cloud standards and quirks is the key to
multi-cloud
Data & AI accelerates data platform features,
product analytics, and devops
Join us!
http://databricks.com/careers
Feedback
Your feedback is important to us.
Don’t forget to rate and
review the sessions.
34
Our Product
Built around
open source:
Interactive
data science
Scheduled jobs
SQL frontend
Data scientists
Data engineers
Business users
Cloud Storage
Compute Clusters
Databricks Runtime
Customer’s Cloud AccountDatabricks Service
Logos
Colors
Color Palette
Primary
Colors
Content Slides
Basic Slide
▪ Bullet 1
▪ Sub-bullet
▪ Sub-bullet
▪ Bullet 2
▪ Sub-bullet
▪ Sub-bullet
▪ Bullet 3
▪ Sub-bullet
▪ Sub-bullet
Reduce Long Titles
▪ Bullet 1
▪ Sub-bullet
▪ Sub-bullet
▪ Bullet 2
▪ Sub-bullet
▪ Sub-bullet
By splitting them into a short title, and a more detailed subtitle using this slide format that includes a
subtitle area
Two Columns
▪ Bulleted list format
▪ Bulleted list format
▪ Bulleted list format
▪ Bulleted list format
▪ Bulleted list format
▪ Bulleted list format
▪ Bulleted list format
▪ Bulleted list format
Headline FormatHeadline Format
Two Box
▪ Bulleted list
▪ Bulleted list
▪ Bulleted list
▪ Bulleted list
CategoryCategory
Three Box
▪ Bulleted list
▪ Bulleted list
▪ Bulleted list
▪ Bulleted list
CategoryCategory
▪ Bulleted list
▪ Bulleted list
Category
Four Box
▪ Bulleted list
▪ Bulleted list
▪ Bulleted list
▪ Bulleted list
CategoryCategory
▪ Bulleted list
▪ Bulleted list
Category
▪ Bulleted list
▪ Bulleted list
Category
Shapes
Shapes
Pill-shaped rectangle Double corner
rectangle
Double corner
rectangle
Tables and Charts
Table
Column Column Column
Row Value Value Value
Row Value Value Value
Row Value Value Value
Row Value Value Value
Row Value Value Value
Row Value Value Value
Row Value Value Value
Bar chart
Line chart
Pie Chart
Quotes and Text Callouts
Attribution Format
Second line of attribution
This is a template for a quote slide.
This is where the quote goes.
Attribute the source below…
Databricks simplifies data and AI
so data teams can innovate faster
Databricks simplifies data and AI
so data teams can innovate faster
Logos
Spark + AI Summit Logos
Databricks Logos
Open Source Logos
Feedback
Your feedback is important to us.
Don’t forget to rate and
review the sessions.
Lessons from Building Large-Scale, Multi-Cloud, SaaS Software at Databricks

Contenu connexe

Tendances

Tendances (20)

Capgemini Cloud Assessment - A Pathway to Enterprise Cloud Migration
Capgemini Cloud Assessment - A Pathway to Enterprise Cloud MigrationCapgemini Cloud Assessment - A Pathway to Enterprise Cloud Migration
Capgemini Cloud Assessment - A Pathway to Enterprise Cloud Migration
 
Introduction to Azure Blueprints
Introduction to Azure BlueprintsIntroduction to Azure Blueprints
Introduction to Azure Blueprints
 
Cloud Migration Workshop
Cloud Migration WorkshopCloud Migration Workshop
Cloud Migration Workshop
 
Getting Started with AWS Database Migration Service
Getting Started with AWS Database Migration ServiceGetting Started with AWS Database Migration Service
Getting Started with AWS Database Migration Service
 
Cloud Migration, Application Modernization and Security for Partners
Cloud Migration, Application Modernization and Security for PartnersCloud Migration, Application Modernization and Security for Partners
Cloud Migration, Application Modernization and Security for Partners
 
AWS Tagging Strategy
AWS Tagging StrategyAWS Tagging Strategy
AWS Tagging Strategy
 
AWS Floor 28 - Migrating to AWS
AWS Floor 28 - Migrating to AWSAWS Floor 28 - Migrating to AWS
AWS Floor 28 - Migrating to AWS
 
Best Practices for Building Partner-Managed Services on AWS
Best Practices for Building Partner-Managed Services on AWSBest Practices for Building Partner-Managed Services on AWS
Best Practices for Building Partner-Managed Services on AWS
 
Migrating to the Cloud
Migrating to the CloudMigrating to the Cloud
Migrating to the Cloud
 
How a Global Healthcare Company Built a Migration Factory to Quickly Move Tho...
How a Global Healthcare Company Built a Migration Factory to Quickly Move Tho...How a Global Healthcare Company Built a Migration Factory to Quickly Move Tho...
How a Global Healthcare Company Built a Migration Factory to Quickly Move Tho...
 
Microsoft Cloud Adoption Framework for Azure: Governance Conversation
Microsoft Cloud Adoption Framework for Azure: Governance ConversationMicrosoft Cloud Adoption Framework for Azure: Governance Conversation
Microsoft Cloud Adoption Framework for Azure: Governance Conversation
 
(ARC307) Infrastructure as Code
(ARC307) Infrastructure as Code(ARC307) Infrastructure as Code
(ARC307) Infrastructure as Code
 
Build an AppStream 2.0 Environment to Deliver Desktop Applications to Any Com...
Build an AppStream 2.0 Environment to Deliver Desktop Applications to Any Com...Build an AppStream 2.0 Environment to Deliver Desktop Applications to Any Com...
Build an AppStream 2.0 Environment to Deliver Desktop Applications to Any Com...
 
Azure Migrate
Azure MigrateAzure Migrate
Azure Migrate
 
Enabling Transformation through Agility & Innovation - AWS Transformation Day...
Enabling Transformation through Agility & Innovation - AWS Transformation Day...Enabling Transformation through Agility & Innovation - AWS Transformation Day...
Enabling Transformation through Agility & Innovation - AWS Transformation Day...
 
Accelerating Your Cloud Migration Journey with MAP
Accelerating Your Cloud Migration Journey with MAPAccelerating Your Cloud Migration Journey with MAP
Accelerating Your Cloud Migration Journey with MAP
 
Databricks Platform.pptx
Databricks Platform.pptxDatabricks Platform.pptx
Databricks Platform.pptx
 
Migrating your Data Centre to AWS
Migrating your Data Centre to AWSMigrating your Data Centre to AWS
Migrating your Data Centre to AWS
 
Cloud Migration Cookbook: A Guide To Moving Your Apps To The Cloud
Cloud Migration Cookbook: A Guide To Moving Your Apps To The CloudCloud Migration Cookbook: A Guide To Moving Your Apps To The Cloud
Cloud Migration Cookbook: A Guide To Moving Your Apps To The Cloud
 
An Overview of Best Practices for Large Scale Migrations - AWS Transformation...
An Overview of Best Practices for Large Scale Migrations - AWS Transformation...An Overview of Best Practices for Large Scale Migrations - AWS Transformation...
An Overview of Best Practices for Large Scale Migrations - AWS Transformation...
 

Similaire à Lessons from Building Large-Scale, Multi-Cloud, SaaS Software at Databricks

Microsoft Cloud BI Update 2012 for SQL Saturday Philly
Microsoft Cloud BI Update 2012 for SQL Saturday PhillyMicrosoft Cloud BI Update 2012 for SQL Saturday Philly
Microsoft Cloud BI Update 2012 for SQL Saturday Philly
Mark Kromer
 

Similaire à Lessons from Building Large-Scale, Multi-Cloud, SaaS Software at Databricks (20)

What is the Oracle PaaS Cloud for Developers (Oracle Cloud Day, The Netherlan...
What is the Oracle PaaS Cloud for Developers (Oracle Cloud Day, The Netherlan...What is the Oracle PaaS Cloud for Developers (Oracle Cloud Day, The Netherlan...
What is the Oracle PaaS Cloud for Developers (Oracle Cloud Day, The Netherlan...
 
Productionizing Machine Learning with Apache Spark, MLflow and ONNX from the ...
Productionizing Machine Learning with Apache Spark, MLflow and ONNX from the ...Productionizing Machine Learning with Apache Spark, MLflow and ONNX from the ...
Productionizing Machine Learning with Apache Spark, MLflow and ONNX from the ...
 
Migrating on premises workload to azure sql database
Migrating on premises workload to azure sql databaseMigrating on premises workload to azure sql database
Migrating on premises workload to azure sql database
 
Building FoundationDB
Building FoundationDBBuilding FoundationDB
Building FoundationDB
 
IBM - Introduction to Cloudant
IBM - Introduction to CloudantIBM - Introduction to Cloudant
IBM - Introduction to Cloudant
 
0812 2014 01_toronto-smac meetup_i_os_cloudant_worklight_part2
0812 2014 01_toronto-smac meetup_i_os_cloudant_worklight_part20812 2014 01_toronto-smac meetup_i_os_cloudant_worklight_part2
0812 2014 01_toronto-smac meetup_i_os_cloudant_worklight_part2
 
Building a Pluggable Analytics Stack with Cassandra (Jim Peregord, Element Co...
Building a Pluggable Analytics Stack with Cassandra (Jim Peregord, Element Co...Building a Pluggable Analytics Stack with Cassandra (Jim Peregord, Element Co...
Building a Pluggable Analytics Stack with Cassandra (Jim Peregord, Element Co...
 
Can Your Mobile Infrastructure Survive 1 Million Concurrent Users?
Can Your Mobile Infrastructure Survive 1 Million Concurrent Users?Can Your Mobile Infrastructure Survive 1 Million Concurrent Users?
Can Your Mobile Infrastructure Survive 1 Million Concurrent Users?
 
Azure + DataStax Enterprise Powers Office 365 Per User Store
Azure + DataStax Enterprise Powers Office 365 Per User StoreAzure + DataStax Enterprise Powers Office 365 Per User Store
Azure + DataStax Enterprise Powers Office 365 Per User Store
 
Migrating to Amazon RDS with Database Migration Service
Migrating to Amazon RDS with Database Migration ServiceMigrating to Amazon RDS with Database Migration Service
Migrating to Amazon RDS with Database Migration Service
 
Solving enterprise challenges through scale out storage & big compute final
Solving enterprise challenges through scale out storage & big compute finalSolving enterprise challenges through scale out storage & big compute final
Solving enterprise challenges through scale out storage & big compute final
 
Big data journey to the cloud 5.30.18 asher bartch
Big data journey to the cloud 5.30.18   asher bartchBig data journey to the cloud 5.30.18   asher bartch
Big data journey to the cloud 5.30.18 asher bartch
 
Application modernization with azure PaaS and FaaS
Application modernization with azure PaaS and FaaSApplication modernization with azure PaaS and FaaS
Application modernization with azure PaaS and FaaS
 
Demystifying Data Warehouse as a Service (DWaaS)
Demystifying Data Warehouse as a Service (DWaaS)Demystifying Data Warehouse as a Service (DWaaS)
Demystifying Data Warehouse as a Service (DWaaS)
 
Big Data Analytics on the Cloud Oracle Applications AWS Redshift & Tableau
Big Data Analytics on the Cloud Oracle Applications AWS Redshift & TableauBig Data Analytics on the Cloud Oracle Applications AWS Redshift & Tableau
Big Data Analytics on the Cloud Oracle Applications AWS Redshift & Tableau
 
IBM Cloud Day January 2021 - A well architected data lake
IBM Cloud Day January 2021 - A well architected data lakeIBM Cloud Day January 2021 - A well architected data lake
IBM Cloud Day January 2021 - A well architected data lake
 
Serverless SQL
Serverless SQLServerless SQL
Serverless SQL
 
AMIS Oracle OpenWorld 2015 Review – part 3- PaaS Database, Integration, Ident...
AMIS Oracle OpenWorld 2015 Review – part 3- PaaS Database, Integration, Ident...AMIS Oracle OpenWorld 2015 Review – part 3- PaaS Database, Integration, Ident...
AMIS Oracle OpenWorld 2015 Review – part 3- PaaS Database, Integration, Ident...
 
Microsoft Cloud BI Update 2012 for SQL Saturday Philly
Microsoft Cloud BI Update 2012 for SQL Saturday PhillyMicrosoft Cloud BI Update 2012 for SQL Saturday Philly
Microsoft Cloud BI Update 2012 for SQL Saturday Philly
 
Leapfrog into Serverless - a Deloitte-Amtrak Case Study | Serverless Confere...
Leapfrog into Serverless - a Deloitte-Amtrak Case Study | Serverless Confere...Leapfrog into Serverless - a Deloitte-Amtrak Case Study | Serverless Confere...
Leapfrog into Serverless - a Deloitte-Amtrak Case Study | Serverless Confere...
 

Plus de Databricks

Democratizing Data Quality Through a Centralized Platform
Democratizing Data Quality Through a Centralized PlatformDemocratizing Data Quality Through a Centralized Platform
Democratizing Data Quality Through a Centralized Platform
Databricks
 
Stage Level Scheduling Improving Big Data and AI Integration
Stage Level Scheduling Improving Big Data and AI IntegrationStage Level Scheduling Improving Big Data and AI Integration
Stage Level Scheduling Improving Big Data and AI Integration
Databricks
 
Simplify Data Conversion from Spark to TensorFlow and PyTorch
Simplify Data Conversion from Spark to TensorFlow and PyTorchSimplify Data Conversion from Spark to TensorFlow and PyTorch
Simplify Data Conversion from Spark to TensorFlow and PyTorch
Databricks
 
Raven: End-to-end Optimization of ML Prediction Queries
Raven: End-to-end Optimization of ML Prediction QueriesRaven: End-to-end Optimization of ML Prediction Queries
Raven: End-to-end Optimization of ML Prediction Queries
Databricks
 
Processing Large Datasets for ADAS Applications using Apache Spark
Processing Large Datasets for ADAS Applications using Apache SparkProcessing Large Datasets for ADAS Applications using Apache Spark
Processing Large Datasets for ADAS Applications using Apache Spark
Databricks
 

Plus de Databricks (20)

DW Migration Webinar-March 2022.pptx
DW Migration Webinar-March 2022.pptxDW Migration Webinar-March 2022.pptx
DW Migration Webinar-March 2022.pptx
 
Data Lakehouse Symposium | Day 1 | Part 1
Data Lakehouse Symposium | Day 1 | Part 1Data Lakehouse Symposium | Day 1 | Part 1
Data Lakehouse Symposium | Day 1 | Part 1
 
Data Lakehouse Symposium | Day 1 | Part 2
Data Lakehouse Symposium | Day 1 | Part 2Data Lakehouse Symposium | Day 1 | Part 2
Data Lakehouse Symposium | Day 1 | Part 2
 
Data Lakehouse Symposium | Day 2
Data Lakehouse Symposium | Day 2Data Lakehouse Symposium | Day 2
Data Lakehouse Symposium | Day 2
 
Data Lakehouse Symposium | Day 4
Data Lakehouse Symposium | Day 4Data Lakehouse Symposium | Day 4
Data Lakehouse Symposium | Day 4
 
5 Critical Steps to Clean Your Data Swamp When Migrating Off of Hadoop
5 Critical Steps to Clean Your Data Swamp When Migrating Off of Hadoop5 Critical Steps to Clean Your Data Swamp When Migrating Off of Hadoop
5 Critical Steps to Clean Your Data Swamp When Migrating Off of Hadoop
 
Democratizing Data Quality Through a Centralized Platform
Democratizing Data Quality Through a Centralized PlatformDemocratizing Data Quality Through a Centralized Platform
Democratizing Data Quality Through a Centralized Platform
 
Learn to Use Databricks for Data Science
Learn to Use Databricks for Data ScienceLearn to Use Databricks for Data Science
Learn to Use Databricks for Data Science
 
Why APM Is Not the Same As ML Monitoring
Why APM Is Not the Same As ML MonitoringWhy APM Is Not the Same As ML Monitoring
Why APM Is Not the Same As ML Monitoring
 
The Function, the Context, and the Data—Enabling ML Ops at Stitch Fix
The Function, the Context, and the Data—Enabling ML Ops at Stitch FixThe Function, the Context, and the Data—Enabling ML Ops at Stitch Fix
The Function, the Context, and the Data—Enabling ML Ops at Stitch Fix
 
Stage Level Scheduling Improving Big Data and AI Integration
Stage Level Scheduling Improving Big Data and AI IntegrationStage Level Scheduling Improving Big Data and AI Integration
Stage Level Scheduling Improving Big Data and AI Integration
 
Simplify Data Conversion from Spark to TensorFlow and PyTorch
Simplify Data Conversion from Spark to TensorFlow and PyTorchSimplify Data Conversion from Spark to TensorFlow and PyTorch
Simplify Data Conversion from Spark to TensorFlow and PyTorch
 
Scaling your Data Pipelines with Apache Spark on Kubernetes
Scaling your Data Pipelines with Apache Spark on KubernetesScaling your Data Pipelines with Apache Spark on Kubernetes
Scaling your Data Pipelines with Apache Spark on Kubernetes
 
Scaling and Unifying SciKit Learn and Apache Spark Pipelines
Scaling and Unifying SciKit Learn and Apache Spark PipelinesScaling and Unifying SciKit Learn and Apache Spark Pipelines
Scaling and Unifying SciKit Learn and Apache Spark Pipelines
 
Sawtooth Windows for Feature Aggregations
Sawtooth Windows for Feature AggregationsSawtooth Windows for Feature Aggregations
Sawtooth Windows for Feature Aggregations
 
Redis + Apache Spark = Swiss Army Knife Meets Kitchen Sink
Redis + Apache Spark = Swiss Army Knife Meets Kitchen SinkRedis + Apache Spark = Swiss Army Knife Meets Kitchen Sink
Redis + Apache Spark = Swiss Army Knife Meets Kitchen Sink
 
Re-imagine Data Monitoring with whylogs and Spark
Re-imagine Data Monitoring with whylogs and SparkRe-imagine Data Monitoring with whylogs and Spark
Re-imagine Data Monitoring with whylogs and Spark
 
Raven: End-to-end Optimization of ML Prediction Queries
Raven: End-to-end Optimization of ML Prediction QueriesRaven: End-to-end Optimization of ML Prediction Queries
Raven: End-to-end Optimization of ML Prediction Queries
 
Processing Large Datasets for ADAS Applications using Apache Spark
Processing Large Datasets for ADAS Applications using Apache SparkProcessing Large Datasets for ADAS Applications using Apache Spark
Processing Large Datasets for ADAS Applications using Apache Spark
 
Massive Data Processing in Adobe Using Delta Lake
Massive Data Processing in Adobe Using Delta LakeMassive Data Processing in Adobe Using Delta Lake
Massive Data Processing in Adobe Using Delta Lake
 

Dernier

怎样办理纽约州立大学宾汉姆顿分校毕业证(SUNY-Bin毕业证书)成绩单学校原版复制
怎样办理纽约州立大学宾汉姆顿分校毕业证(SUNY-Bin毕业证书)成绩单学校原版复制怎样办理纽约州立大学宾汉姆顿分校毕业证(SUNY-Bin毕业证书)成绩单学校原版复制
怎样办理纽约州立大学宾汉姆顿分校毕业证(SUNY-Bin毕业证书)成绩单学校原版复制
vexqp
 
In Riyadh ((+919101817206)) Cytotec kit @ Abortion Pills Saudi Arabia
In Riyadh ((+919101817206)) Cytotec kit @ Abortion Pills Saudi ArabiaIn Riyadh ((+919101817206)) Cytotec kit @ Abortion Pills Saudi Arabia
In Riyadh ((+919101817206)) Cytotec kit @ Abortion Pills Saudi Arabia
ahmedjiabur940
 
Cytotec in Jeddah+966572737505) get unwanted pregnancy kit Riyadh
Cytotec in Jeddah+966572737505) get unwanted pregnancy kit RiyadhCytotec in Jeddah+966572737505) get unwanted pregnancy kit Riyadh
Cytotec in Jeddah+966572737505) get unwanted pregnancy kit Riyadh
Abortion pills in Riyadh +966572737505 get cytotec
 
Top profile Call Girls In bhavnagar [ 7014168258 ] Call Me For Genuine Models...
Top profile Call Girls In bhavnagar [ 7014168258 ] Call Me For Genuine Models...Top profile Call Girls In bhavnagar [ 7014168258 ] Call Me For Genuine Models...
Top profile Call Girls In bhavnagar [ 7014168258 ] Call Me For Genuine Models...
gajnagarg
 
Abortion pills in Jeddah | +966572737505 | Get Cytotec
Abortion pills in Jeddah | +966572737505 | Get CytotecAbortion pills in Jeddah | +966572737505 | Get Cytotec
Abortion pills in Jeddah | +966572737505 | Get Cytotec
Abortion pills in Riyadh +966572737505 get cytotec
 
Top profile Call Girls In Begusarai [ 7014168258 ] Call Me For Genuine Models...
Top profile Call Girls In Begusarai [ 7014168258 ] Call Me For Genuine Models...Top profile Call Girls In Begusarai [ 7014168258 ] Call Me For Genuine Models...
Top profile Call Girls In Begusarai [ 7014168258 ] Call Me For Genuine Models...
nirzagarg
 
Top profile Call Girls In Bihar Sharif [ 7014168258 ] Call Me For Genuine Mod...
Top profile Call Girls In Bihar Sharif [ 7014168258 ] Call Me For Genuine Mod...Top profile Call Girls In Bihar Sharif [ 7014168258 ] Call Me For Genuine Mod...
Top profile Call Girls In Bihar Sharif [ 7014168258 ] Call Me For Genuine Mod...
nirzagarg
 
Top profile Call Girls In Purnia [ 7014168258 ] Call Me For Genuine Models We...
Top profile Call Girls In Purnia [ 7014168258 ] Call Me For Genuine Models We...Top profile Call Girls In Purnia [ 7014168258 ] Call Me For Genuine Models We...
Top profile Call Girls In Purnia [ 7014168258 ] Call Me For Genuine Models We...
nirzagarg
 
Jual obat aborsi Bandung ( 085657271886 ) Cytote pil telat bulan penggugur ka...
Jual obat aborsi Bandung ( 085657271886 ) Cytote pil telat bulan penggugur ka...Jual obat aborsi Bandung ( 085657271886 ) Cytote pil telat bulan penggugur ka...
Jual obat aborsi Bandung ( 085657271886 ) Cytote pil telat bulan penggugur ka...
Klinik kandungan
 
怎样办理圣路易斯大学毕业证(SLU毕业证书)成绩单学校原版复制
怎样办理圣路易斯大学毕业证(SLU毕业证书)成绩单学校原版复制怎样办理圣路易斯大学毕业证(SLU毕业证书)成绩单学校原版复制
怎样办理圣路易斯大学毕业证(SLU毕业证书)成绩单学校原版复制
vexqp
 
怎样办理伦敦大学城市学院毕业证(CITY毕业证书)成绩单学校原版复制
怎样办理伦敦大学城市学院毕业证(CITY毕业证书)成绩单学校原版复制怎样办理伦敦大学城市学院毕业证(CITY毕业证书)成绩单学校原版复制
怎样办理伦敦大学城市学院毕业证(CITY毕业证书)成绩单学校原版复制
vexqp
 
一比一原版(曼大毕业证书)曼尼托巴大学毕业证成绩单留信学历认证一手价格
一比一原版(曼大毕业证书)曼尼托巴大学毕业证成绩单留信学历认证一手价格一比一原版(曼大毕业证书)曼尼托巴大学毕业证成绩单留信学历认证一手价格
一比一原版(曼大毕业证书)曼尼托巴大学毕业证成绩单留信学历认证一手价格
q6pzkpark
 
Top profile Call Girls In Chandrapur [ 7014168258 ] Call Me For Genuine Model...
Top profile Call Girls In Chandrapur [ 7014168258 ] Call Me For Genuine Model...Top profile Call Girls In Chandrapur [ 7014168258 ] Call Me For Genuine Model...
Top profile Call Girls In Chandrapur [ 7014168258 ] Call Me For Genuine Model...
gajnagarg
 

Dernier (20)

怎样办理纽约州立大学宾汉姆顿分校毕业证(SUNY-Bin毕业证书)成绩单学校原版复制
怎样办理纽约州立大学宾汉姆顿分校毕业证(SUNY-Bin毕业证书)成绩单学校原版复制怎样办理纽约州立大学宾汉姆顿分校毕业证(SUNY-Bin毕业证书)成绩单学校原版复制
怎样办理纽约州立大学宾汉姆顿分校毕业证(SUNY-Bin毕业证书)成绩单学校原版复制
 
In Riyadh ((+919101817206)) Cytotec kit @ Abortion Pills Saudi Arabia
In Riyadh ((+919101817206)) Cytotec kit @ Abortion Pills Saudi ArabiaIn Riyadh ((+919101817206)) Cytotec kit @ Abortion Pills Saudi Arabia
In Riyadh ((+919101817206)) Cytotec kit @ Abortion Pills Saudi Arabia
 
Cytotec in Jeddah+966572737505) get unwanted pregnancy kit Riyadh
Cytotec in Jeddah+966572737505) get unwanted pregnancy kit RiyadhCytotec in Jeddah+966572737505) get unwanted pregnancy kit Riyadh
Cytotec in Jeddah+966572737505) get unwanted pregnancy kit Riyadh
 
Top profile Call Girls In bhavnagar [ 7014168258 ] Call Me For Genuine Models...
Top profile Call Girls In bhavnagar [ 7014168258 ] Call Me For Genuine Models...Top profile Call Girls In bhavnagar [ 7014168258 ] Call Me For Genuine Models...
Top profile Call Girls In bhavnagar [ 7014168258 ] Call Me For Genuine Models...
 
Abortion pills in Jeddah | +966572737505 | Get Cytotec
Abortion pills in Jeddah | +966572737505 | Get CytotecAbortion pills in Jeddah | +966572737505 | Get Cytotec
Abortion pills in Jeddah | +966572737505 | Get Cytotec
 
Vadodara 💋 Call Girl 7737669865 Call Girls in Vadodara Escort service book now
Vadodara 💋 Call Girl 7737669865 Call Girls in Vadodara Escort service book nowVadodara 💋 Call Girl 7737669865 Call Girls in Vadodara Escort service book now
Vadodara 💋 Call Girl 7737669865 Call Girls in Vadodara Escort service book now
 
Top profile Call Girls In Begusarai [ 7014168258 ] Call Me For Genuine Models...
Top profile Call Girls In Begusarai [ 7014168258 ] Call Me For Genuine Models...Top profile Call Girls In Begusarai [ 7014168258 ] Call Me For Genuine Models...
Top profile Call Girls In Begusarai [ 7014168258 ] Call Me For Genuine Models...
 
Sequential and reinforcement learning for demand side management by Margaux B...
Sequential and reinforcement learning for demand side management by Margaux B...Sequential and reinforcement learning for demand side management by Margaux B...
Sequential and reinforcement learning for demand side management by Margaux B...
 
Top profile Call Girls In Bihar Sharif [ 7014168258 ] Call Me For Genuine Mod...
Top profile Call Girls In Bihar Sharif [ 7014168258 ] Call Me For Genuine Mod...Top profile Call Girls In Bihar Sharif [ 7014168258 ] Call Me For Genuine Mod...
Top profile Call Girls In Bihar Sharif [ 7014168258 ] Call Me For Genuine Mod...
 
Aspirational Block Program Block Syaldey District - Almora
Aspirational Block Program Block Syaldey District - AlmoraAspirational Block Program Block Syaldey District - Almora
Aspirational Block Program Block Syaldey District - Almora
 
Top profile Call Girls In Purnia [ 7014168258 ] Call Me For Genuine Models We...
Top profile Call Girls In Purnia [ 7014168258 ] Call Me For Genuine Models We...Top profile Call Girls In Purnia [ 7014168258 ] Call Me For Genuine Models We...
Top profile Call Girls In Purnia [ 7014168258 ] Call Me For Genuine Models We...
 
Jual obat aborsi Bandung ( 085657271886 ) Cytote pil telat bulan penggugur ka...
Jual obat aborsi Bandung ( 085657271886 ) Cytote pil telat bulan penggugur ka...Jual obat aborsi Bandung ( 085657271886 ) Cytote pil telat bulan penggugur ka...
Jual obat aborsi Bandung ( 085657271886 ) Cytote pil telat bulan penggugur ka...
 
Data Analyst Tasks to do the internship.pdf
Data Analyst Tasks to do the internship.pdfData Analyst Tasks to do the internship.pdf
Data Analyst Tasks to do the internship.pdf
 
5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed
5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed
5CL-ADBA,5cladba, Chinese supplier, safety is guaranteed
 
怎样办理圣路易斯大学毕业证(SLU毕业证书)成绩单学校原版复制
怎样办理圣路易斯大学毕业证(SLU毕业证书)成绩单学校原版复制怎样办理圣路易斯大学毕业证(SLU毕业证书)成绩单学校原版复制
怎样办理圣路易斯大学毕业证(SLU毕业证书)成绩单学校原版复制
 
怎样办理伦敦大学城市学院毕业证(CITY毕业证书)成绩单学校原版复制
怎样办理伦敦大学城市学院毕业证(CITY毕业证书)成绩单学校原版复制怎样办理伦敦大学城市学院毕业证(CITY毕业证书)成绩单学校原版复制
怎样办理伦敦大学城市学院毕业证(CITY毕业证书)成绩单学校原版复制
 
一比一原版(曼大毕业证书)曼尼托巴大学毕业证成绩单留信学历认证一手价格
一比一原版(曼大毕业证书)曼尼托巴大学毕业证成绩单留信学历认证一手价格一比一原版(曼大毕业证书)曼尼托巴大学毕业证成绩单留信学历认证一手价格
一比一原版(曼大毕业证书)曼尼托巴大学毕业证成绩单留信学历认证一手价格
 
Top profile Call Girls In Chandrapur [ 7014168258 ] Call Me For Genuine Model...
Top profile Call Girls In Chandrapur [ 7014168258 ] Call Me For Genuine Model...Top profile Call Girls In Chandrapur [ 7014168258 ] Call Me For Genuine Model...
Top profile Call Girls In Chandrapur [ 7014168258 ] Call Me For Genuine Model...
 
Switzerland Constitution 2002.pdf.........
Switzerland Constitution 2002.pdf.........Switzerland Constitution 2002.pdf.........
Switzerland Constitution 2002.pdf.........
 
Digital Advertising Lecture for Advanced Digital & Social Media Strategy at U...
Digital Advertising Lecture for Advanced Digital & Social Media Strategy at U...Digital Advertising Lecture for Advanced Digital & Social Media Strategy at U...
Digital Advertising Lecture for Advanced Digital & Social Media Strategy at U...
 

Lessons from Building Large-Scale, Multi-Cloud, SaaS Software at Databricks

  • 1. Lessons from building large-scale, multi-cloud, SaaS software at Databricks Jeff Pang Principal Software Engineer @
  • 2. Who am I? ▪ Jeff Pang Principal Software Engineer, Databricks ▪ Databricks Platform Engineering To help data teams solve the world’s toughest problems, the Databricks Platform team provides the world-class, multi-cloud platform that enables us to expand fast and iterate quickly http://databricks.com/careers
  • 3. About ▪ Founded in 2013 by the original creators of Apache Spark ▪ Data and AI platform as a service for 5000+ customers ▪ 1000+ employees, 200+ engineers, >$200M annual recurring revenue
  • 4. Our product Data scientists Data engineers Business users
  • 5. Agenda The architecture Inside the Unified Analytics Platform Challenges & lessons Growing a SaaS data platform Operating on multiple clouds Accelerating a data platform with data & AI
  • 6. The architecture Inside the Unified Analytics Platform
  • 7. Simple data engineering architecture cluster Reporting Analytics Business-level Aggregates Filtered, Cleaned Augmented Raw Ingestion Bronze Silver Gold CSV, JSON, TXT… Data Lake S3, HDFS, Blob Store, etc.
  • 8. Modern data engineering architecture Data Lake Reporting, Notebooks, AI Streaming Analytics Bronze Silver Gold CSV, JSON, TXT… Kinesis Workflow scheduling clusters Cluster management
  • 9. Customer Network Multiply by thousands of customers... Data Lake CSV, JSON, TXT… Kinesis Customer Network Data Lake CSV, JSON, TXT… Kinesis Customer Network Data Lake CSV, JSON, TXT… Kinesis Customer Network Data Lake CSV, JSON, TXT… Kinesis Customer Network Data Lake CSV, JSON, TXT… Kinesis ... control plane Collaborative Notebooks, AI Streaming Analytics Workflow scheduling Cluster management Admin & Security Reporting, Business Insights
  • 12. → millions of VMs managed per day
  • 13. That’s the Databricks control plane What did we learn from building a large-scale, multi-cloud data platform? 100,000s of users 100,000s of Spark clusters per day Millions of VMs launched per day Exabytes of data processed per day
  • 14. Growing a SaaS data platform
  • 15. Evolution of the Databricks control plane We didn’t start with a global-scale, multi-cloud data platform Challenge: Scaling a data platform from one customer to 5000+ Lesson: The factory that builds and evolves the data platform is more important than the data platform itself
  • 16. Fast time to market Databricks control plane “in-a-box” ▪ Need to deliver value quickly ▪ Need to iterate quickly ▪ Can’t break things while iterating! Keys to success: ▪ Modern CI ▪ Fast developer tools ▪ Testing, testing, testing V1 V2 25-500x Scala build speedups 10s of millions of tests per day 100s of Databrick s “in-a-box” test envs per day
  • 17. Expand the total addressable market Replicating control planes quickly ▪ Need different configurations for different environments ▪ Need to update many environments ▪ Can’t slow down platform development! Keys to success: ▪ Declarative infrastructure ▪ Modern CD infrastructure jsonnet 10 million lines 250k lines
  • 18. Service Framework Land and expand workloads Scaling the control plane ▪ Need to support more users & workloads ▪ Need to build more features that scale ▪ Don’t want devs to reinvent the wheel! Keys to success: ▪ A service framework to do the hard stuff ▪ Decompose monoliths to microservices Container & replica management, APIs & RPCs, rate limits, metrics, logging, secrets & security, ... Cloud VM API Cluster Manager Customer Clusters version 1 Cloud VM API CM Master Customer Clusters Worker Worker API Server CM MasterCM Shard API ServerAPI ServerAPI Server version 3 usage
  • 19. Data Platform The Databricks data platform factory ... Customer Network Customer Network Customer Network Customer Network Customer Network Kubernetes HCVault, Consul, Prometheus, ELK, Jaeger, Grafana, common IAM, onboarding, billing, ... Envoy, GraphQL Cloud VMs, network, storage, databases CM Master Worker Worker API Server CM MasterCM Shard API ServerAPI ServerAPI Server
  • 21. Why multi-cloud? The data platform needs to be where the data is ▪ Performance, latency, egress data costs ▪ Cloud-specific integrations ▪ Data governance policies Challenge: Supporting multiple clouds without sacrificing dev velocity Lesson: A cloud-agnostic layer is key to dev velocity, but it also needs to integrate with the standards of each cloud and deal with their quirks
  • 22. Challenge: dev velocity on multiple clouds Many cloud services have no direct equivalents ▪ DynamoDB vs ? ▪ CosmosDB vs ? ▪ Aurora vs ? ▪ SQL DW vs ? Cloud APIs don’t look like each other ▪ SDK: no common interfaces ▪ Auth: IAM vs AAD ▪ ACLs: IAM vs Azure RBAC APIs?Services? Operational tools for each cloud are very different ▪ Templates: CloudFormation vs ARM templates ▪ Logs: CloudWatch vs Azure Monitor Ops?
  • 23. Approach: cloud agnostic dev framework Use lowest common denominator cloud services EKS ←Kubernetes →AKS HCVault, Consul, Prometheus, ELK, Jaeger, Grafana, common IAM, onboarding, billing, ... Envoy EC2 VPC RDS MySQL/Postgres CM Master Worker Worker API Server CM MasterCM Shard API ServerAPI ServerAPI Server Azure Compute VNet Azure Database for MySQL/Postgres ≈ ≈ ≈ ELB Azure Load Balancer Service framework API ≈
  • 24. Challenge: not everything can be cloud agnostic Customers want to integrate with the standards of each cloud “Equivalent” cloud services have implementation quirks
  • 25. Approach: abstraction layer for key integrations Fargate ←Kubernetes →AKS Bring your own key encryption AuthN / AuthZ / Identity EC2 VPC RDS MySQL/Postgres CM Master Worker Worker API Server CM MasterCM Shard API ServerAPI ServerAPI Server Azure Compute VNet Azure Database for MySQL/Postgres ≈ ≈ ≈ Okta, OneLogin, etc. Azure Active Directory IAM roles KMS Azure Key Vault Unified usage service AWS Marketplace, Custom Billing Azure Commerce Billing ELB Azure Load Balancer≈ Databricks file systemS3 Azure Storage S3 commit service
  • 26. Approach: harmonize “equivalent” cloud service quirks Promise of elastic compute is unevenly distributed ▪ Provisioning speed differs ▪ Deletion speed differs (speed to refill quota) → Need to adapt to cloud resource and API limits TCP connections are hard ▪ “Invisible” NATs have connection & timeout limits → Need tuned keep alive, connection limit configs ▪ Kernel TCP SACK bug caused API hangs in one cloud only → Need to deep robustness testing against both clouds (ex: poor NIC reliability) NetworkVirtual machines When MySQL != MySQL ▪ Host OS matters Ex: case sensitivity defaults ▪ Default DB params matter Ex: tablespace config → 100x difference in recovery time → Need expertise in DB tuning to ensure equivalence Databases
  • 27. Accelerating a data platform with data & AI
  • 28. Inception: Improving a data platform with data & AI We are one of our biggest customers Challenge: Building a data platform is hard without a data platform ▪ Need data to track usage, maintain security ▪ Need data to observe and improve how users use the data platform ▪ Need data to keep the data platform up and running Lesson: Data & AI can accelerate data platform features, product analytics, and devops
  • 29. How we use Databricks to accelerate itself Key platform features ▪ Usage and billing reports ▪ Audit logs Essential product analytics ▪ Feature usage, trends, prediction ▪ Growth and churn forecast, models Mission critical devops ▪ Service KPIs and SLAs ▪ API and application structured logs ▪ Spark debug logs
  • 30. Data foundation & analytics Our distributed data pipelines 100s of TB logs per day Millions of time series per secondTime-series, raw logs, request tracing, dashboards Kinesis Event Hubs Declarative data pipeline deployments Real-time streaming
  • 31. Takeaways The architecture Managing millions of VMs around the world in multiple clouds Challenges & lessons The factory that builds and evolves the data platform is more important than the data platform itself A cloud-agnostic platform that integrates with cloud standards and quirks is the key to multi-cloud Data & AI accelerates data platform features, product analytics, and devops Join us! http://databricks.com/careers
  • 32. Feedback Your feedback is important to us. Don’t forget to rate and review the sessions.
  • 33.
  • 34. 34 Our Product Built around open source: Interactive data science Scheduled jobs SQL frontend Data scientists Data engineers Business users Cloud Storage Compute Clusters Databricks Runtime Customer’s Cloud AccountDatabricks Service
  • 35. Logos
  • 39. Basic Slide ▪ Bullet 1 ▪ Sub-bullet ▪ Sub-bullet ▪ Bullet 2 ▪ Sub-bullet ▪ Sub-bullet ▪ Bullet 3 ▪ Sub-bullet ▪ Sub-bullet
  • 40. Reduce Long Titles ▪ Bullet 1 ▪ Sub-bullet ▪ Sub-bullet ▪ Bullet 2 ▪ Sub-bullet ▪ Sub-bullet By splitting them into a short title, and a more detailed subtitle using this slide format that includes a subtitle area
  • 41. Two Columns ▪ Bulleted list format ▪ Bulleted list format ▪ Bulleted list format ▪ Bulleted list format ▪ Bulleted list format ▪ Bulleted list format ▪ Bulleted list format ▪ Bulleted list format Headline FormatHeadline Format
  • 42. Two Box ▪ Bulleted list ▪ Bulleted list ▪ Bulleted list ▪ Bulleted list CategoryCategory
  • 43. Three Box ▪ Bulleted list ▪ Bulleted list ▪ Bulleted list ▪ Bulleted list CategoryCategory ▪ Bulleted list ▪ Bulleted list Category
  • 44. Four Box ▪ Bulleted list ▪ Bulleted list ▪ Bulleted list ▪ Bulleted list CategoryCategory ▪ Bulleted list ▪ Bulleted list Category ▪ Bulleted list ▪ Bulleted list Category
  • 46. Shapes Pill-shaped rectangle Double corner rectangle Double corner rectangle
  • 48. Table Column Column Column Row Value Value Value Row Value Value Value Row Value Value Value Row Value Value Value Row Value Value Value Row Value Value Value Row Value Value Value
  • 52. Quotes and Text Callouts
  • 53. Attribution Format Second line of attribution This is a template for a quote slide. This is where the quote goes. Attribute the source below…
  • 54. Databricks simplifies data and AI so data teams can innovate faster
  • 55. Databricks simplifies data and AI so data teams can innovate faster
  • 56. Logos
  • 57. Spark + AI Summit Logos
  • 60. Feedback Your feedback is important to us. Don’t forget to rate and review the sessions.