SlideShare a Scribd company logo
1 of 30
© 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
What is scalability?

© 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
Some standard definitions
The ability of a system, network, or process to
handle a growing amount of work in a
capable manner or its ability to be enlarged to
accommodate that growth. (Wikipedia)
The ability to handle increased workload by
repeatedly applying a cost effective strategy
for extending a system’s capacity (SEI)

© 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
Consider a simple web application

© 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
Load v/s Performance of a nonscalable system

© 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
Scalability Bottlenecks
Memory
 Out of memory

 Disk thrashing
 Fragmentation

CPU
 Overload
 Context switches
 I/O waits

Others
 Disk
 Network
© 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
Load v/s performance of a scalable
system (Ideal)

© 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
© 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
Improve application performance…

© 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
Improve application performance
Identify and fix performance bottlenecks
Algorithms
 DB queries
 Thread Deadlocks
 I/O

Why is it important
When you use less resources per task (processor
time, memory, N/W round trips etc)…

…You can handle a lot more load

© 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
Loose coupling paradigms - SOA

Loosely coupled interactions
One-to-one communications
Consumer-based trigger
Synchronous
© 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
Loose coupling paradigms - EDA

Decoupled interactions
Many-to-many communications
Event-based trigger
Asynchronous
© 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
Distribute work, data
Motivations:
Can scale independently

Failures are isolated

Segment Functionality
application pools

Segment Data
Based on functional areas
Horizontal split

© 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
Asynchronous communication
Motivations
Can scale components independently
 Can decouple availability
 Can spread peak load over time

Integrate different services asynchronously
 Point to point / publish subscribe
 Staged event driven architecture (SEDA)

© 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
Point to point
messaging

Publish-Subscribe
messaging

© 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
Aggressive Caching
Motivations:
Save processing cycles
 Save on network round-trip delays

Content caching on CDNs

Caching on clients (browsers/mobile devices)
Caching at application layer
Distributed caching

© 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
Cache Everywhere
Distributed In
memory Cache

Proxy

App Server

Web Browser
LRU Cache
Browser Cache

Page Cache
Query Cache

CDN
Resource
Cache

© 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.

Database
Result Cache
Avoid or distribute state
Motivations:
Save memory and processing cycles
 Reduce machine affinity

Strive for statelessness

Maintain session data in browsers if possible
Store session state in distributed cache

© 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
Database
Simplify entity relationships to aid split

Use the right kind of Database lock
Avoid distributed transactions
Don’t select everything, read only as much
data as you can use
Consider NoSQL storage

© 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
© 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
How do we scale…

Individual community

© 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
Scaling storage: Multi SID
Goal: To be able to scale out DB storage as required

Application

Realm-Schema map

Persistence Layer

DB Instance #1

Schema 1
Schema 2
Schema 20

DB Instance #2

Schema 1
Schema 2
Schema 20

© 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
Clustering v/s Sharding
Clustering
 Oracle RAC, Hbase
 Automatically scale datastore
 Rebalances to distribute capacity
 Nodes communicate with each other
 Very complicated
 Cluster manager failure!

Sharding
 Data distributed manually
 Split database to add capacity
 Data does not move
 Nodes are unaware of each other
 Custom algorithm based on functional / key distribution
© 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
Scaling search: Arches
Goal: To be able to scale up search/publish activities linearly

© 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
Arches goals…
 Elastic architecture with ability to add capacity on the fly
 Sub-second search performance
 Improving indexing performance with customer isolation

 Eventually be used to build the global search service
all across Ariba

Arches interfaces…
 Pub API: Publish endpoint exposed over one way

messaging
 Search API: REST based search endpoint
 Pull API: REST based data pull endpoint to be

implemented by applications
 Manage API: REST based management endpoint
© 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
Lightweight Metadata: Overcoming
memory bottleneck
Problem:
All realms, even realms with no customization and
no activity consume lots of system resources
 Realms with no customization have the same foot
print as realms with lots of customization

Important for mid-market offering

Goals

© 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
Light weight metadata solution
Shape of a Class is now shared across
Variants
Sub Types computed dynamically

© 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
Dynamic capacity realms project
Goal: Remove downtimes for scaling our products.

Dynamic scalability

Tolerate change to cluster topology
Central connection manager
Goal: Improve database connection usage.

Central connection manager to distribute
database connections based on usage

Local pools & Global pool
© 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
ADE (Ariba data enrichment) scalability
Instance 1

Weblogic
Managed
Server

ADE
Client

Weblogic
Administrative
Server

Load balancing
(EJBs & RMI)
Weight based sticky
session

JMS
Product
Product
Engines
Engines

Instance 2

Weblogic
Managed
Server

JDBC
Clustering

JMS
Product
Product
Engines
Engines

Instance 3

Weblogic
Managed
Server

JMS
Product
Product
Engines
Engines

ADE
DB

© 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.

SDB
(Ops)
© 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.

More Related Content

What's hot

Oracle engineered systems executive presentation
Oracle engineered systems executive presentationOracle engineered systems executive presentation
Oracle engineered systems executive presentationOTN Systems Hub
 
Reduccion TCO sistemas Integrados
Reduccion TCO sistemas IntegradosReduccion TCO sistemas Integrados
Reduccion TCO sistemas IntegradosFran Navarro
 
AutoML - Heralding a New Era of Machine Learning - CASOUG Oct 2021
AutoML - Heralding a New Era of Machine Learning - CASOUG Oct 2021AutoML - Heralding a New Era of Machine Learning - CASOUG Oct 2021
AutoML - Heralding a New Era of Machine Learning - CASOUG Oct 2021Sandesh Rao
 
Oracle Database Appliance - Introduction in Cyprus
Oracle Database Appliance - Introduction in CyprusOracle Database Appliance - Introduction in Cyprus
Oracle Database Appliance - Introduction in CyprusAndy Panayiotou
 
Bay Area Hadoop User Group
Bay Area Hadoop User GroupBay Area Hadoop User Group
Bay Area Hadoop User GroupPentaho
 
Virtual Compute Appliance Oracle IaaS
Virtual Compute Appliance Oracle IaaS Virtual Compute Appliance Oracle IaaS
Virtual Compute Appliance Oracle IaaS Fran Navarro
 
Oracle Cloud – Application Performance Monitoring
Oracle Cloud – Application Performance MonitoringOracle Cloud – Application Performance Monitoring
Oracle Cloud – Application Performance MonitoringMarketingArrowECS_CZ
 
Oracle Enterprise Metadata Management
Oracle Enterprise Metadata ManagementOracle Enterprise Metadata Management
Oracle Enterprise Metadata ManagementAndrey Akulov
 
MongoDB World 2019: Implementation and Operationalization of MongoDB Sharding...
MongoDB World 2019: Implementation and Operationalization of MongoDB Sharding...MongoDB World 2019: Implementation and Operationalization of MongoDB Sharding...
MongoDB World 2019: Implementation and Operationalization of MongoDB Sharding...MongoDB
 
Oracle MAA (Maximum Availability Architecture) 18c - An Overview
Oracle MAA (Maximum Availability Architecture) 18c - An OverviewOracle MAA (Maximum Availability Architecture) 18c - An Overview
Oracle MAA (Maximum Availability Architecture) 18c - An OverviewMarkus Michalewicz
 
5 here today still here tomorrow new technology for big_forever_archives
5 here today still here tomorrow new technology for big_forever_archives5 here today still here tomorrow new technology for big_forever_archives
5 here today still here tomorrow new technology for big_forever_archivesDr. Wilfred Lin (Ph.D.)
 
IBM POWER8 Processor-Based Systems RAS
IBM POWER8 Processor-Based Systems RASIBM POWER8 Processor-Based Systems RAS
IBM POWER8 Processor-Based Systems RASthinkASG
 
Trafodion overview
Trafodion overviewTrafodion overview
Trafodion overviewRohit Jain
 
Meetup Oracle Database MAD_BCN: 1.2 Oracle Database 18c (autonomous database)
Meetup Oracle Database MAD_BCN: 1.2 Oracle Database 18c (autonomous database)Meetup Oracle Database MAD_BCN: 1.2 Oracle Database 18c (autonomous database)
Meetup Oracle Database MAD_BCN: 1.2 Oracle Database 18c (autonomous database)avanttic Consultoría Tecnológica
 
Data Mobility for the Oracle Database by JWilliams and RGonzalez
Data Mobility for the Oracle Database by JWilliams and RGonzalezData Mobility for the Oracle Database by JWilliams and RGonzalez
Data Mobility for the Oracle Database by JWilliams and RGonzalezMarkus Michalewicz
 
Empowering you with Democratized Data Access, Data Science and Machine Learning
Empowering you with Democratized Data Access, Data Science and Machine LearningEmpowering you with Democratized Data Access, Data Science and Machine Learning
Empowering you with Democratized Data Access, Data Science and Machine LearningDataWorks Summit
 

What's hot (20)

Oracle engineered systems executive presentation
Oracle engineered systems executive presentationOracle engineered systems executive presentation
Oracle engineered systems executive presentation
 
Reduccion TCO sistemas Integrados
Reduccion TCO sistemas IntegradosReduccion TCO sistemas Integrados
Reduccion TCO sistemas Integrados
 
AutoML - Heralding a New Era of Machine Learning - CASOUG Oct 2021
AutoML - Heralding a New Era of Machine Learning - CASOUG Oct 2021AutoML - Heralding a New Era of Machine Learning - CASOUG Oct 2021
AutoML - Heralding a New Era of Machine Learning - CASOUG Oct 2021
 
Oracle Database Appliance - Introduction in Cyprus
Oracle Database Appliance - Introduction in CyprusOracle Database Appliance - Introduction in Cyprus
Oracle Database Appliance - Introduction in Cyprus
 
Bay Area Hadoop User Group
Bay Area Hadoop User GroupBay Area Hadoop User Group
Bay Area Hadoop User Group
 
Virtual Compute Appliance Oracle IaaS
Virtual Compute Appliance Oracle IaaS Virtual Compute Appliance Oracle IaaS
Virtual Compute Appliance Oracle IaaS
 
Oracle Cloud – Application Performance Monitoring
Oracle Cloud – Application Performance MonitoringOracle Cloud – Application Performance Monitoring
Oracle Cloud – Application Performance Monitoring
 
Integrated dwh 3
Integrated dwh 3Integrated dwh 3
Integrated dwh 3
 
Oracle Enterprise Metadata Management
Oracle Enterprise Metadata ManagementOracle Enterprise Metadata Management
Oracle Enterprise Metadata Management
 
MongoDB World 2019: Implementation and Operationalization of MongoDB Sharding...
MongoDB World 2019: Implementation and Operationalization of MongoDB Sharding...MongoDB World 2019: Implementation and Operationalization of MongoDB Sharding...
MongoDB World 2019: Implementation and Operationalization of MongoDB Sharding...
 
Oracle MAA (Maximum Availability Architecture) 18c - An Overview
Oracle MAA (Maximum Availability Architecture) 18c - An OverviewOracle MAA (Maximum Availability Architecture) 18c - An Overview
Oracle MAA (Maximum Availability Architecture) 18c - An Overview
 
Autonomous Data Warehouse
Autonomous Data WarehouseAutonomous Data Warehouse
Autonomous Data Warehouse
 
Future of-hadoop-analytics
Future of-hadoop-analyticsFuture of-hadoop-analytics
Future of-hadoop-analytics
 
5 here today still here tomorrow new technology for big_forever_archives
5 here today still here tomorrow new technology for big_forever_archives5 here today still here tomorrow new technology for big_forever_archives
5 here today still here tomorrow new technology for big_forever_archives
 
IBM POWER8 Processor-Based Systems RAS
IBM POWER8 Processor-Based Systems RASIBM POWER8 Processor-Based Systems RAS
IBM POWER8 Processor-Based Systems RAS
 
Trafodion overview
Trafodion overviewTrafodion overview
Trafodion overview
 
Database Report
Database ReportDatabase Report
Database Report
 
Meetup Oracle Database MAD_BCN: 1.2 Oracle Database 18c (autonomous database)
Meetup Oracle Database MAD_BCN: 1.2 Oracle Database 18c (autonomous database)Meetup Oracle Database MAD_BCN: 1.2 Oracle Database 18c (autonomous database)
Meetup Oracle Database MAD_BCN: 1.2 Oracle Database 18c (autonomous database)
 
Data Mobility for the Oracle Database by JWilliams and RGonzalez
Data Mobility for the Oracle Database by JWilliams and RGonzalezData Mobility for the Oracle Database by JWilliams and RGonzalez
Data Mobility for the Oracle Database by JWilliams and RGonzalez
 
Empowering you with Democratized Data Access, Data Science and Machine Learning
Empowering you with Democratized Data Access, Data Science and Machine LearningEmpowering you with Democratized Data Access, Data Science and Machine Learning
Empowering you with Democratized Data Access, Data Science and Machine Learning
 

Viewers also liked

Series 33 - E - History of Pirana Satpanth Part 2 of 3
Series 33 - E - History of Pirana Satpanth  Part 2 of 3Series 33 - E - History of Pirana Satpanth  Part 2 of 3
Series 33 - E - History of Pirana Satpanth Part 2 of 3Satpanth Dharm
 
MILF Final Working Draft on Comprehensive Compact
MILF Final Working Draft on Comprehensive CompactMILF Final Working Draft on Comprehensive Compact
MILF Final Working Draft on Comprehensive CompactGenPeace
 
GE 2 minutes book 06 & 07-jun-1951 -suggesting our abkkp samaj is formed by ...
GE 2  minutes book 06 & 07-jun-1951 -suggesting our abkkp samaj is formed by ...GE 2  minutes book 06 & 07-jun-1951 -suggesting our abkkp samaj is formed by ...
GE 2 minutes book 06 & 07-jun-1951 -suggesting our abkkp samaj is formed by ...Satpanth Dharm
 
Series 16 -Attachment 2 -Momin Chetamani -English
Series 16  -Attachment 2 -Momin Chetamani -EnglishSeries 16  -Attachment 2 -Momin Chetamani -English
Series 16 -Attachment 2 -Momin Chetamani -EnglishSatpanth Dharm
 
Cradle The Future - Joel Svedlund - JCI ECM 2010
Cradle The Future - Joel Svedlund - JCI ECM 2010Cradle The Future - Joel Svedlund - JCI ECM 2010
Cradle The Future - Joel Svedlund - JCI ECM 2010Joel Svedlund
 
U peace peacebuilding_slideshare
U peace peacebuilding_slideshareU peace peacebuilding_slideshare
U peace peacebuilding_slideshareGenPeace
 
Series 7 pirana satpanth-ni_pol_ane_satya_no_prakash-d
Series 7  pirana satpanth-ni_pol_ane_satya_no_prakash-dSeries 7  pirana satpanth-ni_pol_ane_satya_no_prakash-d
Series 7 pirana satpanth-ni_pol_ane_satya_no_prakash-dSatpanth Dharm
 
El cinema com a reflex social
El cinema com a reflex socialEl cinema com a reflex social
El cinema com a reflex socialtoas
 
CerdasMulia Ramadhan - Training Ramadhan Pesantren Al-Munawaroh
CerdasMulia Ramadhan - Training Ramadhan Pesantren Al-MunawarohCerdasMulia Ramadhan - Training Ramadhan Pesantren Al-Munawaroh
CerdasMulia Ramadhan - Training Ramadhan Pesantren Al-MunawarohArry Rahmawan
 
Series 23 dasond -wrong definition on satpanth website -de
Series 23  dasond -wrong definition on satpanth website -deSeries 23  dasond -wrong definition on satpanth website -de
Series 23 dasond -wrong definition on satpanth website -deSatpanth Dharm
 
Series 1 Satpanthi Way of Converting Hindus to Muslims -d
Series 1  Satpanthi Way of Converting Hindus to Muslims -dSeries 1  Satpanthi Way of Converting Hindus to Muslims -d
Series 1 Satpanthi Way of Converting Hindus to Muslims -dSatpanth Dharm
 
Oe 14 Appreciation letter -to himmatbhai & team -by ahmednagar district samaj
Oe 14  Appreciation letter -to himmatbhai & team -by ahmednagar district samajOe 14  Appreciation letter -to himmatbhai & team -by ahmednagar district samaj
Oe 14 Appreciation letter -to himmatbhai & team -by ahmednagar district samajSatpanth Dharm
 

Viewers also liked (20)

Web application security
Web application securityWeb application security
Web application security
 
Software as a Service
Software as a ServiceSoftware as a Service
Software as a Service
 
May 2010 Issue
May 2010 IssueMay 2010 Issue
May 2010 Issue
 
Series 33 - E - History of Pirana Satpanth Part 2 of 3
Series 33 - E - History of Pirana Satpanth  Part 2 of 3Series 33 - E - History of Pirana Satpanth  Part 2 of 3
Series 33 - E - History of Pirana Satpanth Part 2 of 3
 
MILF Final Working Draft on Comprehensive Compact
MILF Final Working Draft on Comprehensive CompactMILF Final Working Draft on Comprehensive Compact
MILF Final Working Draft on Comprehensive Compact
 
GE 2 minutes book 06 & 07-jun-1951 -suggesting our abkkp samaj is formed by ...
GE 2  minutes book 06 & 07-jun-1951 -suggesting our abkkp samaj is formed by ...GE 2  minutes book 06 & 07-jun-1951 -suggesting our abkkp samaj is formed by ...
GE 2 minutes book 06 & 07-jun-1951 -suggesting our abkkp samaj is formed by ...
 
Series 16 -Attachment 2 -Momin Chetamani -English
Series 16  -Attachment 2 -Momin Chetamani -EnglishSeries 16  -Attachment 2 -Momin Chetamani -English
Series 16 -Attachment 2 -Momin Chetamani -English
 
Diana
DianaDiana
Diana
 
R edes inte
R edes inteR edes inte
R edes inte
 
Sorting Objects (Math)
Sorting Objects (Math)Sorting Objects (Math)
Sorting Objects (Math)
 
Cradle The Future - Joel Svedlund - JCI ECM 2010
Cradle The Future - Joel Svedlund - JCI ECM 2010Cradle The Future - Joel Svedlund - JCI ECM 2010
Cradle The Future - Joel Svedlund - JCI ECM 2010
 
801-ADMONUMB
801-ADMONUMB801-ADMONUMB
801-ADMONUMB
 
U peace peacebuilding_slideshare
U peace peacebuilding_slideshareU peace peacebuilding_slideshare
U peace peacebuilding_slideshare
 
Series 7 pirana satpanth-ni_pol_ane_satya_no_prakash-d
Series 7  pirana satpanth-ni_pol_ane_satya_no_prakash-dSeries 7  pirana satpanth-ni_pol_ane_satya_no_prakash-d
Series 7 pirana satpanth-ni_pol_ane_satya_no_prakash-d
 
El cinema com a reflex social
El cinema com a reflex socialEl cinema com a reflex social
El cinema com a reflex social
 
CerdasMulia Ramadhan - Training Ramadhan Pesantren Al-Munawaroh
CerdasMulia Ramadhan - Training Ramadhan Pesantren Al-MunawarohCerdasMulia Ramadhan - Training Ramadhan Pesantren Al-Munawaroh
CerdasMulia Ramadhan - Training Ramadhan Pesantren Al-Munawaroh
 
Series 23 dasond -wrong definition on satpanth website -de
Series 23  dasond -wrong definition on satpanth website -deSeries 23  dasond -wrong definition on satpanth website -de
Series 23 dasond -wrong definition on satpanth website -de
 
Test doubles and EasyMock
Test doubles and EasyMockTest doubles and EasyMock
Test doubles and EasyMock
 
Series 1 Satpanthi Way of Converting Hindus to Muslims -d
Series 1  Satpanthi Way of Converting Hindus to Muslims -dSeries 1  Satpanthi Way of Converting Hindus to Muslims -d
Series 1 Satpanthi Way of Converting Hindus to Muslims -d
 
Oe 14 Appreciation letter -to himmatbhai & team -by ahmednagar district samaj
Oe 14  Appreciation letter -to himmatbhai & team -by ahmednagar district samajOe 14  Appreciation letter -to himmatbhai & team -by ahmednagar district samaj
Oe 14 Appreciation letter -to himmatbhai & team -by ahmednagar district samaj
 

Similar to Scaling web systems ts

Migrate and Modernize Your Database
Migrate and Modernize Your DatabaseMigrate and Modernize Your Database
Migrate and Modernize Your DatabaseAmazon Web Services
 
Preparing Your Data for Cloud Analytics & AI/ML
Preparing Your Data for Cloud Analytics & AI/MLPreparing Your Data for Cloud Analytics & AI/ML
Preparing Your Data for Cloud Analytics & AI/MLAmazon Web Services
 
Chug building a data lake in azure with spark and databricks
Chug   building a data lake in azure with spark and databricksChug   building a data lake in azure with spark and databricks
Chug building a data lake in azure with spark and databricksBrandon Berlinrut
 
Deep Dive - Amazon Relational Database Services_AWSPSSummit_Singapore
Deep Dive - Amazon Relational Database Services_AWSPSSummit_SingaporeDeep Dive - Amazon Relational Database Services_AWSPSSummit_Singapore
Deep Dive - Amazon Relational Database Services_AWSPSSummit_SingaporeAmazon Web Services
 
Using AWS Purpose-Built Databases to Modernize your Applications
Using AWS Purpose-Built Databases to Modernize your ApplicationsUsing AWS Purpose-Built Databases to Modernize your Applications
Using AWS Purpose-Built Databases to Modernize your ApplicationsAmazon Web Services
 
What_to_expect_from_oracle_database_12c
What_to_expect_from_oracle_database_12cWhat_to_expect_from_oracle_database_12c
What_to_expect_from_oracle_database_12cMaria Colgan
 
Simplify IT: Oracle SuperCluster
Simplify IT: Oracle SuperCluster Simplify IT: Oracle SuperCluster
Simplify IT: Oracle SuperCluster Fran Navarro
 
Oracle databáze – Konsolidovaná Data Management Platforma
Oracle databáze – Konsolidovaná Data Management PlatformaOracle databáze – Konsolidovaná Data Management Platforma
Oracle databáze – Konsolidovaná Data Management PlatformaMarketingArrowECS_CZ
 
Amazon Aurora and AWS Database Migration Service
Amazon Aurora and AWS Database Migration ServiceAmazon Aurora and AWS Database Migration Service
Amazon Aurora and AWS Database Migration ServiceAmazon Web Services
 
Big data journey to the cloud rohit pujari 5.30.18
Big data journey to the cloud   rohit pujari 5.30.18Big data journey to the cloud   rohit pujari 5.30.18
Big data journey to the cloud rohit pujari 5.30.18Cloudera, Inc.
 
Why to Use an Oracle Database?
Why to Use an Oracle Database? Why to Use an Oracle Database?
Why to Use an Oracle Database? Markus Michalewicz
 
The Evolution of Database Technologies Christian Bandulet
The Evolution of Database Technologies Christian BanduletThe Evolution of Database Technologies Christian Bandulet
The Evolution of Database Technologies Christian BanduletChristian Bandulet
 
Data Catalog & ETL - Glue & Athena
Data Catalog & ETL - Glue & AthenaData Catalog & ETL - Glue & Athena
Data Catalog & ETL - Glue & AthenaAmazon Web Services
 
Data Catalog & ETL - Glue & Athena
Data Catalog & ETL - Glue & AthenaData Catalog & ETL - Glue & Athena
Data Catalog & ETL - Glue & AthenaAmazon Web Services
 
Tendencias Storage
Tendencias StorageTendencias Storage
Tendencias StorageFran Navarro
 
Oracle MAA Best Practices - Applications Considerations
Oracle MAA Best Practices - Applications ConsiderationsOracle MAA Best Practices - Applications Considerations
Oracle MAA Best Practices - Applications ConsiderationsMarkus Michalewicz
 
From raw data to business insights. A modern data lake
From raw data to business insights. A modern data lakeFrom raw data to business insights. A modern data lake
From raw data to business insights. A modern data lakejavier ramirez
 
Databases - Choosing the right Database on AWS
Databases - Choosing the right Database on AWSDatabases - Choosing the right Database on AWS
Databases - Choosing the right Database on AWSAmazon Web Services
 

Similar to Scaling web systems ts (20)

Migrate and Modernize Your Database
Migrate and Modernize Your DatabaseMigrate and Modernize Your Database
Migrate and Modernize Your Database
 
Preparing Your Data for Cloud Analytics & AI/ML
Preparing Your Data for Cloud Analytics & AI/MLPreparing Your Data for Cloud Analytics & AI/ML
Preparing Your Data for Cloud Analytics & AI/ML
 
Chug building a data lake in azure with spark and databricks
Chug   building a data lake in azure with spark and databricksChug   building a data lake in azure with spark and databricks
Chug building a data lake in azure with spark and databricks
 
Deep Dive - Amazon Relational Database Services_AWSPSSummit_Singapore
Deep Dive - Amazon Relational Database Services_AWSPSSummit_SingaporeDeep Dive - Amazon Relational Database Services_AWSPSSummit_Singapore
Deep Dive - Amazon Relational Database Services_AWSPSSummit_Singapore
 
Using AWS Purpose-Built Databases to Modernize your Applications
Using AWS Purpose-Built Databases to Modernize your ApplicationsUsing AWS Purpose-Built Databases to Modernize your Applications
Using AWS Purpose-Built Databases to Modernize your Applications
 
What_to_expect_from_oracle_database_12c
What_to_expect_from_oracle_database_12cWhat_to_expect_from_oracle_database_12c
What_to_expect_from_oracle_database_12c
 
Simplify IT: Oracle SuperCluster
Simplify IT: Oracle SuperCluster Simplify IT: Oracle SuperCluster
Simplify IT: Oracle SuperCluster
 
Oracle databáze – Konsolidovaná Data Management Platforma
Oracle databáze – Konsolidovaná Data Management PlatformaOracle databáze – Konsolidovaná Data Management Platforma
Oracle databáze – Konsolidovaná Data Management Platforma
 
Amazon Aurora and AWS Database Migration Service
Amazon Aurora and AWS Database Migration ServiceAmazon Aurora and AWS Database Migration Service
Amazon Aurora and AWS Database Migration Service
 
Oracle Cloud
Oracle CloudOracle Cloud
Oracle Cloud
 
Big data journey to the cloud rohit pujari 5.30.18
Big data journey to the cloud   rohit pujari 5.30.18Big data journey to the cloud   rohit pujari 5.30.18
Big data journey to the cloud rohit pujari 5.30.18
 
AWS Database Services @ Scale
AWS Database Services @ ScaleAWS Database Services @ Scale
AWS Database Services @ Scale
 
Why to Use an Oracle Database?
Why to Use an Oracle Database? Why to Use an Oracle Database?
Why to Use an Oracle Database?
 
The Evolution of Database Technologies Christian Bandulet
The Evolution of Database Technologies Christian BanduletThe Evolution of Database Technologies Christian Bandulet
The Evolution of Database Technologies Christian Bandulet
 
Data Catalog & ETL - Glue & Athena
Data Catalog & ETL - Glue & AthenaData Catalog & ETL - Glue & Athena
Data Catalog & ETL - Glue & Athena
 
Data Catalog & ETL - Glue & Athena
Data Catalog & ETL - Glue & AthenaData Catalog & ETL - Glue & Athena
Data Catalog & ETL - Glue & Athena
 
Tendencias Storage
Tendencias StorageTendencias Storage
Tendencias Storage
 
Oracle MAA Best Practices - Applications Considerations
Oracle MAA Best Practices - Applications ConsiderationsOracle MAA Best Practices - Applications Considerations
Oracle MAA Best Practices - Applications Considerations
 
From raw data to business insights. A modern data lake
From raw data to business insights. A modern data lakeFrom raw data to business insights. A modern data lake
From raw data to business insights. A modern data lake
 
Databases - Choosing the right Database on AWS
Databases - Choosing the right Database on AWSDatabases - Choosing the right Database on AWS
Databases - Choosing the right Database on AWS
 

Recently uploaded

Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebUiPathCommunity
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024Lorenzo Miniero
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfSeasiaInfotech2
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024The Digital Insurer
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):comworks
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostZilliz
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Enterprise Knowledge
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfRankYa
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr BaganFwdays
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Commit University
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Mattias Andersson
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesZilliz
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyAlfredo García Lavilla
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 

Recently uploaded (20)

Dev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio WebDev Dives: Streamline document processing with UiPath Studio Web
Dev Dives: Streamline document processing with UiPath Studio Web
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024SIP trunking in Janus @ Kamailio World 2024
SIP trunking in Janus @ Kamailio World 2024
 
The Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdfThe Future of Software Development - Devin AI Innovative Approach.pdf
The Future of Software Development - Devin AI Innovative Approach.pdf
 
My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024My INSURER PTE LTD - Insurtech Innovation Award 2024
My INSURER PTE LTD - Insurtech Innovation Award 2024
 
CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):CloudStudio User manual (basic edition):
CloudStudio User manual (basic edition):
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage CostLeverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
Leverage Zilliz Serverless - Up to 50X Saving for Your Vector Storage Cost
 
Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024Designing IA for AI - Information Architecture Conference 2024
Designing IA for AI - Information Architecture Conference 2024
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Search Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdfSearch Engine Optimization SEO PDF for 2024.pdf
Search Engine Optimization SEO PDF for 2024.pdf
 
"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan"ML in Production",Oleksandr Bagan
"ML in Production",Oleksandr Bagan
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!Nell’iperspazio con Rocket: il Framework Web di Rust!
Nell’iperspazio con Rocket: il Framework Web di Rust!
 
Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?Are Multi-Cloud and Serverless Good or Bad?
Are Multi-Cloud and Serverless Good or Bad?
 
Vector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector DatabasesVector Databases 101 - An introduction to the world of Vector Databases
Vector Databases 101 - An introduction to the world of Vector Databases
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
Commit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easyCommit 2024 - Secret Management made easy
Commit 2024 - Secret Management made easy
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 

Scaling web systems ts

  • 1. © 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
  • 2. What is scalability? © 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
  • 3. Some standard definitions The ability of a system, network, or process to handle a growing amount of work in a capable manner or its ability to be enlarged to accommodate that growth. (Wikipedia) The ability to handle increased workload by repeatedly applying a cost effective strategy for extending a system’s capacity (SEI) © 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
  • 4. Consider a simple web application © 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
  • 5. Load v/s Performance of a nonscalable system © 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
  • 6. Scalability Bottlenecks Memory  Out of memory  Disk thrashing  Fragmentation CPU  Overload  Context switches  I/O waits Others  Disk  Network © 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
  • 7. Load v/s performance of a scalable system (Ideal) © 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
  • 8. © 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
  • 9. Improve application performance… © 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
  • 10. Improve application performance Identify and fix performance bottlenecks Algorithms  DB queries  Thread Deadlocks  I/O Why is it important When you use less resources per task (processor time, memory, N/W round trips etc)… …You can handle a lot more load © 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
  • 11. Loose coupling paradigms - SOA Loosely coupled interactions One-to-one communications Consumer-based trigger Synchronous © 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
  • 12. Loose coupling paradigms - EDA Decoupled interactions Many-to-many communications Event-based trigger Asynchronous © 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
  • 13. Distribute work, data Motivations: Can scale independently Failures are isolated Segment Functionality application pools Segment Data Based on functional areas Horizontal split © 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
  • 14. Asynchronous communication Motivations Can scale components independently  Can decouple availability  Can spread peak load over time Integrate different services asynchronously  Point to point / publish subscribe  Staged event driven architecture (SEDA) © 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
  • 15. Point to point messaging Publish-Subscribe messaging © 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
  • 16. Aggressive Caching Motivations: Save processing cycles  Save on network round-trip delays Content caching on CDNs Caching on clients (browsers/mobile devices) Caching at application layer Distributed caching © 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
  • 17. Cache Everywhere Distributed In memory Cache Proxy App Server Web Browser LRU Cache Browser Cache Page Cache Query Cache CDN Resource Cache © 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc. Database Result Cache
  • 18. Avoid or distribute state Motivations: Save memory and processing cycles  Reduce machine affinity Strive for statelessness Maintain session data in browsers if possible Store session state in distributed cache © 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
  • 19. Database Simplify entity relationships to aid split Use the right kind of Database lock Avoid distributed transactions Don’t select everything, read only as much data as you can use Consider NoSQL storage © 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
  • 20. © 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
  • 21. How do we scale… Individual community © 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
  • 22. Scaling storage: Multi SID Goal: To be able to scale out DB storage as required Application Realm-Schema map Persistence Layer DB Instance #1 Schema 1 Schema 2 Schema 20 DB Instance #2 Schema 1 Schema 2 Schema 20 © 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
  • 23. Clustering v/s Sharding Clustering  Oracle RAC, Hbase  Automatically scale datastore  Rebalances to distribute capacity  Nodes communicate with each other  Very complicated  Cluster manager failure! Sharding  Data distributed manually  Split database to add capacity  Data does not move  Nodes are unaware of each other  Custom algorithm based on functional / key distribution © 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
  • 24. Scaling search: Arches Goal: To be able to scale up search/publish activities linearly © 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
  • 25. Arches goals…  Elastic architecture with ability to add capacity on the fly  Sub-second search performance  Improving indexing performance with customer isolation  Eventually be used to build the global search service all across Ariba Arches interfaces…  Pub API: Publish endpoint exposed over one way messaging  Search API: REST based search endpoint  Pull API: REST based data pull endpoint to be implemented by applications  Manage API: REST based management endpoint © 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
  • 26. Lightweight Metadata: Overcoming memory bottleneck Problem: All realms, even realms with no customization and no activity consume lots of system resources  Realms with no customization have the same foot print as realms with lots of customization Important for mid-market offering Goals © 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
  • 27. Light weight metadata solution Shape of a Class is now shared across Variants Sub Types computed dynamically © 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
  • 28. Dynamic capacity realms project Goal: Remove downtimes for scaling our products. Dynamic scalability Tolerate change to cluster topology Central connection manager Goal: Improve database connection usage. Central connection manager to distribute database connections based on usage Local pools & Global pool © 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.
  • 29. ADE (Ariba data enrichment) scalability Instance 1 Weblogic Managed Server ADE Client Weblogic Administrative Server Load balancing (EJBs & RMI) Weight based sticky session JMS Product Product Engines Engines Instance 2 Weblogic Managed Server JDBC Clustering JMS Product Product Engines Engines Instance 3 Weblogic Managed Server JMS Product Product Engines Engines ADE DB © 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc. SDB (Ops)
  • 30. © 2010 Ariba, Inc. All rights reserved. The contents of this document are confidential and proprietary information of Ariba, Inc.