SlideShare a Scribd company logo
GraphQL for distributed applications
Sber
2021
Who we are
Alex Tokarev
Head of RnD Platform V Sberbank – platformv.sber.ru
AWS and GCP expert
The man who cares about architecture
Pavel Zhurov
Senior Cloud Engineer at VTB
Kubernetes security nerd
For God’s sake, be careful with hostPath in production
Agenda
• Gateways evolution
• GraphQL
• Federated GraphQL
• DSG library
• Q&A session
API stages
API 1
API 1
API 1
API 1
API stages
API 1
API 2
API 3
API 5
API 100500
API stages
G
a
t
e
w
a
y
API 1
API 2
API 4
API 1
API 1
API 1
API 1
API stages
B
F
F
B
F
F
BFF
API 1
API 2
API 3
API 1
API 1
API 1
API 1
API 1
API 2
API 100500
GraphQL
• Query language over HTTP
• Strongly typed schema
• Introspectable = self-documented
• One endpoint
• Declarative data fetching
• Fewer server requests
• Frontend-driven data selection
GraphQL
GraphQL
GraphQL principles
• More data and services can be
accessed from a single query
• One central catalog of all available
data that all graph users can look to
• Implementation cost is minimized,
because graph implementation work
isn't duplicated
• Central management of the graph
GraphQL gateway
• ds
GraphQL
Schema
+
server
API
API 1
API 2
API 100500
GraphQL principles
• More data and services can be
accessed from a single query
• One central catalog of all available
data that all graph users can look to
• Implementation cost is minimized,
because graph implementation work
isn't duplicated
• Central management of the graph
GraphQL principles
• More data and services can be
accessed from a single query
• One central catalog of all available
data that all graph users can look to
• Implementation cost is minimized,
because graph implementation work
isn't duplicated
• Central management of the graph
Works for smaaaaaall teams!
Conway’s Law
“Organizations which design systems (in the broad sense used here)
are constrained to produce designs which are copies of the
communication structures of these organizations”
Top-secret transformation
• Unify but decouple
• Curate but fast move
• Distribute ownership and implementation
Transformation
• divide graph across multiple teams
• each team has independent GraphQL service
• track the definition of graph in a schema registry
• schema registry should store the history of
changes to the graph and who made them
• implement federated query planner and executor
Architecture
GraphQL
gateway
API
GraphQL
schema
+
server
GraphQL
schema
+
server
GraphQL
schema
+
server
GraphQL
schema
+
server
Registry
Federated schema
Federated schema
Plan resolution
DSG
• Что-то от Юры
DSG
• Что-то от Юры
DSG
• Что-то от Юры
DSG
• Что-то от Юры
DSG
• Что-то от Юры
DSG
• Что-то от Юры
DSG
• Что-то от Юры
Federated cons
• Up to 10 ms overhead
• PII identification is complicated
• Dedicated CI/CD and governance for schemas
• No opensource schema registry
Federated GraphQL pros
• Unified problem domain graph tailored for UI
• No bottleneck in terms of development
• Backend developers don’t waste time createing BFF
Next steps
• Cost based optimizer
• Calcite-based API calls
• API calls statistic
• Extra-calls remover
• AuthN and AuthZ
• PII information governance
• Observability and advanced troubleshooting
• GraphQL as a service
Success enterprise GraphQL path
• SchemaFirst approach
• Federation is a must
• Collaborative schema design
• Deprecation and backward compatibility from day 0
• Proper tooling
• Learning materials
Q&A

More Related Content

PPTX
Introduction to Graph QL
PDF
KSQL-ops! Running ksqlDB in the Wild (Simon Aubury, ThoughtWorks) Kafka Summi...
PDF
Kafka Summit SF 2017 - Riot's Journey to Global Kafka Aggregation
PDF
Kafka Summit SF 2017 - Fast Data in Supply Chain Planning
PDF
Flink Forward San Francisco 2018: Ken Krugler - "Building a scalable focused ...
PDF
Flink Forward San Francisco 2018: Xu Yang - "Alibaba’s common algorithm platf...
PDF
Maximize the Business Value of Machine Learning and Data Science with Kafka (...
PDF
Gobblin @ NerdWallet (Nov 2015)
Introduction to Graph QL
KSQL-ops! Running ksqlDB in the Wild (Simon Aubury, ThoughtWorks) Kafka Summi...
Kafka Summit SF 2017 - Riot's Journey to Global Kafka Aggregation
Kafka Summit SF 2017 - Fast Data in Supply Chain Planning
Flink Forward San Francisco 2018: Ken Krugler - "Building a scalable focused ...
Flink Forward San Francisco 2018: Xu Yang - "Alibaba’s common algorithm platf...
Maximize the Business Value of Machine Learning and Data Science with Kafka (...
Gobblin @ NerdWallet (Nov 2015)

What's hot (20)

PDF
Apache HBase Workshop
PDF
Hybrid Kafka, Taking Real-time Analytics to the Business (Cody Irwin, Google ...
PPTX
Taking a look under the hood of Apache Flink's relational APIs.
PDF
Change data capture with MongoDB and Kafka.
PDF
Real-Time Dynamic Data Export Using the Kafka Ecosystem
PPTX
Kafka Summit NYC 2017 - Data Processing at LinkedIn with Apache Kafka
PDF
Tackling Kafka, with a Small Team ( Jaren Glover, Robinhood) Kafka Summit SF ...
PDF
Flink Forward Berlin 2017: Aris Kyriakos Koliopoulos - Drivetribe's Kappa Arc...
PDF
Bringing Streaming Data To The Masses: Lowering The “Cost Of Admission” For Y...
PPTX
Stream Processing Live Traffic Data with Kafka Streams
PDF
Self-service Events & Decentralised Governance with AsyncAPI: A Real World Ex...
PDF
Apache Flink @ Alibaba - Seattle Apache Flink Meetup
PDF
Apache Pinot Case Study: Building Distributed Analytics Systems Using Apache ...
PDF
Hadoop summit - Scaling Uber’s Real-Time Infra for Trillion Events per Day
PDF
Flink at netflix paypal speaker series
PDF
Abstractions for managed stream processing platform (Arya Ketan - Flipkart)
PDF
Flattening the Curve with Kafka (Rishi Tarar, Northrop Grumman Corp.) Kafka S...
PDF
#GeodeSummit - Redis to Geode Adaptor
PPTX
Flink Forward Berlin 2017 Keynote: Ferd Scheepers - Taking away customer fric...
PDF
Spark Compute as a Service at Paypal with Prabhu Kasinathan
Apache HBase Workshop
Hybrid Kafka, Taking Real-time Analytics to the Business (Cody Irwin, Google ...
Taking a look under the hood of Apache Flink's relational APIs.
Change data capture with MongoDB and Kafka.
Real-Time Dynamic Data Export Using the Kafka Ecosystem
Kafka Summit NYC 2017 - Data Processing at LinkedIn with Apache Kafka
Tackling Kafka, with a Small Team ( Jaren Glover, Robinhood) Kafka Summit SF ...
Flink Forward Berlin 2017: Aris Kyriakos Koliopoulos - Drivetribe's Kappa Arc...
Bringing Streaming Data To The Masses: Lowering The “Cost Of Admission” For Y...
Stream Processing Live Traffic Data with Kafka Streams
Self-service Events & Decentralised Governance with AsyncAPI: A Real World Ex...
Apache Flink @ Alibaba - Seattle Apache Flink Meetup
Apache Pinot Case Study: Building Distributed Analytics Systems Using Apache ...
Hadoop summit - Scaling Uber’s Real-Time Infra for Trillion Events per Day
Flink at netflix paypal speaker series
Abstractions for managed stream processing platform (Arya Ketan - Flipkart)
Flattening the Curve with Kafka (Rishi Tarar, Northrop Grumman Corp.) Kafka S...
#GeodeSummit - Redis to Geode Adaptor
Flink Forward Berlin 2017 Keynote: Ferd Scheepers - Taking away customer fric...
Spark Compute as a Service at Paypal with Prabhu Kasinathan
Ad

Similar to Graph ql and enterprise (20)

PDF
Scaling Your Team With GraphQL: Why Relationships Matter
PDF
apidays LIVE Paris - GraphQL meshes by Jens Neuse
DOCX
GraphQL Advanced Concepts A Comprehensive Guide.docx
PDF
GraphQL Federation, the missing piece of microservices
PDF
GraphQL for Native Apps
PPTX
Introduction to GraphQL
PDF
apidays LIVE Hong Kong 2021 - GraphQL : Beyond APIs, graph your enterprise by...
PPTX
The API Journey: from REST to GraphQL
PDF
Introduction to GraphQL for beginners
PDF
apidays Paris 2022 - Of graphQL, DX friction, and surgical monolithectomy, Fr...
PDF
Graphql
PDF
Mój przepis na skalowalną architekturę mikroserwisową? Apollo Federation i Gr...
PPTX
GraphQL.pptx
PPTX
GraphQL.pptx
DOCX
How to Deploy a GraphQL API A Comprehensive Guide.docx
PDF
GraphQL as an alternative approach to REST (as presented at Java2Days/CodeMon...
PDF
Andrea Baldon, Emanuele Di Saverio - GraphQL for Native Apps: the MyAXA case ...
PDF
Scaling your GraphQL applications with Dgraph
PPTX
gRPC, GraphQL, REST - Which API Tech to use - API Conference Berlin oct 20
PDF
Adding GraphQL to your existing architecture
Scaling Your Team With GraphQL: Why Relationships Matter
apidays LIVE Paris - GraphQL meshes by Jens Neuse
GraphQL Advanced Concepts A Comprehensive Guide.docx
GraphQL Federation, the missing piece of microservices
GraphQL for Native Apps
Introduction to GraphQL
apidays LIVE Hong Kong 2021 - GraphQL : Beyond APIs, graph your enterprise by...
The API Journey: from REST to GraphQL
Introduction to GraphQL for beginners
apidays Paris 2022 - Of graphQL, DX friction, and surgical monolithectomy, Fr...
Graphql
Mój przepis na skalowalną architekturę mikroserwisową? Apollo Federation i Gr...
GraphQL.pptx
GraphQL.pptx
How to Deploy a GraphQL API A Comprehensive Guide.docx
GraphQL as an alternative approach to REST (as presented at Java2Days/CodeMon...
Andrea Baldon, Emanuele Di Saverio - GraphQL for Native Apps: the MyAXA case ...
Scaling your GraphQL applications with Dgraph
gRPC, GraphQL, REST - Which API Tech to use - API Conference Berlin oct 20
Adding GraphQL to your existing architecture
Ad

More from Alexander Tokarev (20)

PPTX
Rate limits and all about
PPTX
rnd teams.pptx
PPTX
FinOps for private cloud
PPTX
FinOps introduction
PPTX
Open Policy Agent for governance as a code
PPTX
Relational databases for BigData
PPTX
Cloud DWH deep dive
PPTX
PPTX
P9 speed of-light faceted search via oracle in-memory option by alexander tok...
PPTX
Row Level Security in databases advanced edition
PPTX
Row level security in enterprise applications
PPTX
Inmemory BI based on opensource stack
PPTX
Oracle InMemory hardcore edition
PPTX
Tagging search solution design Advanced edition
PPTX
Faceted search with Oracle InMemory option
PPTX
Oracle JSON treatment evolution - from 12.1 to 18 AOUG-2018
PPTX
Tagging search solution design
PPTX
Oracle JSON internals advanced edition
PPTX
Oracle Result Cache deep dive
PPTX
Oracle result cache highload 2017
Rate limits and all about
rnd teams.pptx
FinOps for private cloud
FinOps introduction
Open Policy Agent for governance as a code
Relational databases for BigData
Cloud DWH deep dive
P9 speed of-light faceted search via oracle in-memory option by alexander tok...
Row Level Security in databases advanced edition
Row level security in enterprise applications
Inmemory BI based on opensource stack
Oracle InMemory hardcore edition
Tagging search solution design Advanced edition
Faceted search with Oracle InMemory option
Oracle JSON treatment evolution - from 12.1 to 18 AOUG-2018
Tagging search solution design
Oracle JSON internals advanced edition
Oracle Result Cache deep dive
Oracle result cache highload 2017

Recently uploaded (20)

PDF
BIO-INSPIRED HORMONAL MODULATION AND ADAPTIVE ORCHESTRATION IN S-AI-GPT
PDF
ChapteR012372321DFGDSFGDFGDFSGDFGDFGDFGSDFGDFGFD
PPTX
CURRICULAM DESIGN engineering FOR CSE 2025.pptx
PDF
737-MAX_SRG.pdf student reference guides
PDF
Accra-Kumasi Expressway - Prefeasibility Report Volume 1 of 7.11.2018.pdf
PPTX
ASME PCC-02 TRAINING -DESKTOP-NLE5HNP.pptx
PDF
Visual Aids for Exploratory Data Analysis.pdf
PPTX
6ME3A-Unit-II-Sensors and Actuators_Handouts.pptx
PPTX
tack Data Structure with Array and Linked List Implementation, Push and Pop O...
PDF
distributed database system" (DDBS) is often used to refer to both the distri...
PDF
SMART SIGNAL TIMING FOR URBAN INTERSECTIONS USING REAL-TIME VEHICLE DETECTI...
PPTX
Amdahl’s law is explained in the above power point presentations
PDF
Design Guidelines and solutions for Plastics parts
PPTX
Information Storage and Retrieval Techniques Unit III
PDF
null (2) bgfbg bfgb bfgb fbfg bfbgf b.pdf
PDF
Level 2 – IBM Data and AI Fundamentals (1)_v1.1.PDF
PPTX
Graph Data Structures with Types, Traversals, Connectivity, and Real-Life App...
PDF
Influence of Green Infrastructure on Residents’ Endorsement of the New Ecolog...
PPTX
introduction to high performance computing
PDF
Artificial Superintelligence (ASI) Alliance Vision Paper.pdf
BIO-INSPIRED HORMONAL MODULATION AND ADAPTIVE ORCHESTRATION IN S-AI-GPT
ChapteR012372321DFGDSFGDFGDFSGDFGDFGDFGSDFGDFGFD
CURRICULAM DESIGN engineering FOR CSE 2025.pptx
737-MAX_SRG.pdf student reference guides
Accra-Kumasi Expressway - Prefeasibility Report Volume 1 of 7.11.2018.pdf
ASME PCC-02 TRAINING -DESKTOP-NLE5HNP.pptx
Visual Aids for Exploratory Data Analysis.pdf
6ME3A-Unit-II-Sensors and Actuators_Handouts.pptx
tack Data Structure with Array and Linked List Implementation, Push and Pop O...
distributed database system" (DDBS) is often used to refer to both the distri...
SMART SIGNAL TIMING FOR URBAN INTERSECTIONS USING REAL-TIME VEHICLE DETECTI...
Amdahl’s law is explained in the above power point presentations
Design Guidelines and solutions for Plastics parts
Information Storage and Retrieval Techniques Unit III
null (2) bgfbg bfgb bfgb fbfg bfbgf b.pdf
Level 2 – IBM Data and AI Fundamentals (1)_v1.1.PDF
Graph Data Structures with Types, Traversals, Connectivity, and Real-Life App...
Influence of Green Infrastructure on Residents’ Endorsement of the New Ecolog...
introduction to high performance computing
Artificial Superintelligence (ASI) Alliance Vision Paper.pdf

Graph ql and enterprise