cisco's move from legacy software to cloud-based service model: couchbase connect 2015
TRANSCRIPT
![Page 1: Cisco's Move from Legacy Software to Cloud-Based Service Model: Couchbase Connect 2015](https://reader030.vdocument.in/reader030/viewer/2022032506/55c9dce1bb61eb2e4d8b471b/html5/thumbnails/1.jpg)
Application Renovation with Couchbase Clint Ricker
![Page 2: Cisco's Move from Legacy Software to Cloud-Based Service Model: Couchbase Connect 2015](https://reader030.vdocument.in/reader030/viewer/2022032506/55c9dce1bb61eb2e4d8b471b/html5/thumbnails/2.jpg)
VSRM Intro
VSRM = Video Session & Resource Manager
Enables broadcast, on demand, and hosted DVR Video
![Page 3: Cisco's Move from Legacy Software to Cloud-Based Service Model: Couchbase Connect 2015](https://reader030.vdocument.in/reader030/viewer/2022032506/55c9dce1bb61eb2e4d8b471b/html5/thumbnails/3.jpg)
Background scenario
Changing industry
Changing ecosystem
![Page 4: Cisco's Move from Legacy Software to Cloud-Based Service Model: Couchbase Connect 2015](https://reader030.vdocument.in/reader030/viewer/2022032506/55c9dce1bb61eb2e4d8b471b/html5/thumbnails/4.jpg)
Sold as a 1U appliance
VSRM (Before Couchbase)
Scalability via segmentation (1 server per 100K subscribers)
No centralized management
![Page 5: Cisco's Move from Legacy Software to Cloud-Based Service Model: Couchbase Connect 2015](https://reader030.vdocument.in/reader030/viewer/2022032506/55c9dce1bb61eb2e4d8b471b/html5/thumbnails/5.jpg)
VSR<
Platform Components
Applications
Application Protocol Adaptors
SDV Policy Mgr
S6VERM
SSP
Resource Manager
Resource Manager Adaptors
CMTS QAMBulk
Encryptor
Elem
ent Ma
nager (proprietary local
database)
VSRM (Before Couchbase)
MCMIS
VOD
Log Manager
Config Manager
HA Manager
![Page 6: Cisco's Move from Legacy Software to Cloud-Based Service Model: Couchbase Connect 2015](https://reader030.vdocument.in/reader030/viewer/2022032506/55c9dce1bb61eb2e4d8b471b/html5/thumbnails/6.jpg)
VSRM
Clients (externally sharded to
~100K)
QAMQAMQAMQAMQAM
Mgmt
DB
VSRM
Clients (externally sharded to
~100K)
QAMQAMQAMQAMQAM
Mgmt
DB
VSRM
Clients (externally sharded to
~100K)
QAMQAMQAMQAMQAM
Mgmt
DB
VSRM
Clients (externally sharded to
~100K)
QAMQAMQAMQAMQAM
Mgmt
DB
VSRM
Clients (externally sharded to
~100K)
QAMQAMQAMQAMQAM
Mgmt
DB
VSRM Scalability (Before Couchbase)
![Page 7: Cisco's Move from Legacy Software to Cloud-Based Service Model: Couchbase Connect 2015](https://reader030.vdocument.in/reader030/viewer/2022032506/55c9dce1bb61eb2e4d8b471b/html5/thumbnails/7.jpg)
Phase 1: Assessment
![Page 8: Cisco's Move from Legacy Software to Cloud-Based Service Model: Couchbase Connect 2015](https://reader030.vdocument.in/reader030/viewer/2022032506/55c9dce1bb61eb2e4d8b471b/html5/thumbnails/8.jpg)
Strong Underlying Design
Pluggable components
Core components plus adaptors
Model based applications
![Page 9: Cisco's Move from Legacy Software to Cloud-Based Service Model: Couchbase Connect 2015](https://reader030.vdocument.in/reader030/viewer/2022032506/55c9dce1bb61eb2e4d8b471b/html5/thumbnails/9.jpg)
Deep customer entrenchment
Large scale customer deployments
Deep customer integration and customization
![Page 10: Cisco's Move from Legacy Software to Cloud-Based Service Model: Couchbase Connect 2015](https://reader030.vdocument.in/reader030/viewer/2022032506/55c9dce1bb61eb2e4d8b471b/html5/thumbnails/10.jpg)
Rich algorithms and business logic
Complex algorithms
Rich support for customer policy rules
![Page 11: Cisco's Move from Legacy Software to Cloud-Based Service Model: Couchbase Connect 2015](https://reader030.vdocument.in/reader030/viewer/2022032506/55c9dce1bb61eb2e4d8b471b/html5/thumbnails/11.jpg)
Why not?
Bad Design
Easy to reimplement algorithms and business logic
Small customer entrenchment
High technical debt
![Page 12: Cisco's Move from Legacy Software to Cloud-Based Service Model: Couchbase Connect 2015](https://reader030.vdocument.in/reader030/viewer/2022032506/55c9dce1bb61eb2e4d8b471b/html5/thumbnails/12.jpg)
Phase 2: Renovation
![Page 13: Cisco's Move from Legacy Software to Cloud-Based Service Model: Couchbase Connect 2015](https://reader030.vdocument.in/reader030/viewer/2022032506/55c9dce1bb61eb2e4d8b471b/html5/thumbnails/13.jpg)
VSRM VSRM VSRM VSRM VSRM
DB DB DB DB DB
Concept
Distributed database / shared memory
![Page 14: Cisco's Move from Legacy Software to Cloud-Based Service Model: Couchbase Connect 2015](https://reader030.vdocument.in/reader030/viewer/2022032506/55c9dce1bb61eb2e4d8b471b/html5/thumbnails/14.jpg)
Why Couchbase?
Strong consistency
Reliable low latency
Great scalability
![Page 15: Cisco's Move from Legacy Software to Cloud-Based Service Model: Couchbase Connect 2015](https://reader030.vdocument.in/reader030/viewer/2022032506/55c9dce1bb61eb2e4d8b471b/html5/thumbnails/15.jpg)
VSR<
Platform Components
Applications
Application Protocol Adaptors
SDV Policy Mgr
S6VERM
SSP
Resource Manager
Resource Manager Adaptors
CMTS QAMBulk
Encryptor
Elem
ent Ma
nager (proprietary local
database)
VSRM
MCMIS
VOD
Log Manager
Config Manager
HA Manager
Couchbase Adaptor
DB Manager
State
![Page 16: Cisco's Move from Legacy Software to Cloud-Based Service Model: Couchbase Connect 2015](https://reader030.vdocument.in/reader030/viewer/2022032506/55c9dce1bb61eb2e4d8b471b/html5/thumbnails/16.jpg)
Data Former Became
Per session data (session state)
In memory C struct and legacy local database
Couchbase keys (now text based)
Component data model (config / application state)
Legacy local database 1 couchbase key per tableSession data typically peeled offCounters are individual keys
Raw memory C struct Couchbase keys using memcpy on C/C++.Other APIs transparently handle objects.
Data Model Transformation
![Page 17: Cisco's Move from Legacy Software to Cloud-Based Service Model: Couchbase Connect 2015](https://reader030.vdocument.in/reader030/viewer/2022032506/55c9dce1bb61eb2e4d8b471b/html5/thumbnails/17.jpg)
Data Sizing
Smaller keys have lower latency
Max rate of consistent update of a key–higher for small keys
Transactions needed for consistent updates of groups of keys
![Page 18: Cisco's Move from Legacy Software to Cloud-Based Service Model: Couchbase Connect 2015](https://reader030.vdocument.in/reader030/viewer/2022032506/55c9dce1bb61eb2e4d8b471b/html5/thumbnails/18.jpg)
Design Rules
Real time operations use key/value operations
Views reserved for maintenance operations
All database calls go through abstraction layer
![Page 19: Cisco's Move from Legacy Software to Cloud-Based Service Model: Couchbase Connect 2015](https://reader030.vdocument.in/reader030/viewer/2022032506/55c9dce1bb61eb2e4d8b471b/html5/thumbnails/19.jpg)
Locking / Serialization
Pessimistic locks as a replacement for mutex
Provides serialization, not order
Optimistic locks for read efficiency
![Page 20: Cisco's Move from Legacy Software to Cloud-Based Service Model: Couchbase Connect 2015](https://reader030.vdocument.in/reader030/viewer/2022032506/55c9dce1bb61eb2e4d8b471b/html5/thumbnails/20.jpg)
Queries
Be intentional on what data is indexed
Weaker consistency
Limited resource, especially if stale=true
![Page 21: Cisco's Move from Legacy Software to Cloud-Based Service Model: Couchbase Connect 2015](https://reader030.vdocument.in/reader030/viewer/2022032506/55c9dce1bb61eb2e4d8b471b/html5/thumbnails/21.jpg)
Data Model TransformationCouchbase = clustering Swiss Army knife
Lightweight directory services
Simple distributed queues with append
Master election via get w/lock
![Page 22: Cisco's Move from Legacy Software to Cloud-Based Service Model: Couchbase Connect 2015](https://reader030.vdocument.in/reader030/viewer/2022032506/55c9dce1bb61eb2e4d8b471b/html5/thumbnails/22.jpg)
Danger Zones
Consider key contention. Break apart keys if necessary. Redesign to avoid.
Distributed databases require robust error handling.
Test error handling and edge cases at scale.
![Page 23: Cisco's Move from Legacy Software to Cloud-Based Service Model: Couchbase Connect 2015](https://reader030.vdocument.in/reader030/viewer/2022032506/55c9dce1bb61eb2e4d8b471b/html5/thumbnails/23.jpg)
Phase 3: Makeover Grand Reveal
![Page 24: Cisco's Move from Legacy Software to Cloud-Based Service Model: Couchbase Connect 2015](https://reader030.vdocument.in/reader030/viewer/2022032506/55c9dce1bb61eb2e4d8b471b/html5/thumbnails/24.jpg)
VSR<
Platform Components
Applications
Application Protocol Adaptors
SDV Policy Mgr
S6VERM
SSP
Resource Manager
Resource Manager Adaptors
CMTS QAMBulk
Encryptor
Elem
ent Ma
nager (proprietary local
database)
VSRM (Before Couchbase)
MCMIS
VOD
Log Manager
Config Manager
HA Manager
![Page 25: Cisco's Move from Legacy Software to Cloud-Based Service Model: Couchbase Connect 2015](https://reader030.vdocument.in/reader030/viewer/2022032506/55c9dce1bb61eb2e4d8b471b/html5/thumbnails/25.jpg)
VSR<
Platform Components
Couchbase Adaptor
Applications
Application Protocol Adaptors
SDV Policy Mgr
S6VERM
SSP
Resource Manager
Resource Manager Adaptors
CMTS QAMBulk
Encryptor
Elem
ent Ma
nager (structure only)
VSRM Today
MCMIS
VOD
Log Manager
Config Manager
HA Manager
Web Svc Manager
Recorder Mgr
Linear Mgr
C3 A8RM-IS
RM-SS
RecorderVideo Mux
DB Manager
![Page 26: Cisco's Move from Legacy Software to Cloud-Based Service Model: Couchbase Connect 2015](https://reader030.vdocument.in/reader030/viewer/2022032506/55c9dce1bb61eb2e4d8b471b/html5/thumbnails/26.jpg)
VSRM
Clients (externally sharded to
~100K)
QAMQAMQAMQAMQAM
Mgmt
DB
VSRM
Clients (externally sharded to
~100K)
QAMQAMQAMQAMQAM
Mgmt
DB
VSRM
Clients (externally sharded to
~100K)
QAMQAMQAMQAMQAM
Mgmt
DB
VSRM
Clients (externally sharded to
~100K)
QAMQAMQAMQAMQAM
Mgmt
DB
VSRM
Clients (externally sharded to
~100K)
QAMQAMQAMQAMQAM
Mgmt
DB
VSRM Scalability Before Couchbase
![Page 27: Cisco's Move from Legacy Software to Cloud-Based Service Model: Couchbase Connect 2015](https://reader030.vdocument.in/reader030/viewer/2022032506/55c9dce1bb61eb2e4d8b471b/html5/thumbnails/27.jpg)
VSR<VSRMVM
Instance
VSRM Scalability Today (unified deployment model)
QAMQAMQAMQAMQAM
QAMQAMQAMQAMQAM
QAMQAMQAMQAMQAMQAMQAMQAMQAMQAM
QAMQAMQAMQAMQAM
QAMQAMQAMQAMQAM
QAMQAMQAMQAMQAM
QAMQAMQAMQAMQAM
QAMQAMQAMQAMQAM
Clients
VSRMVM
Instance
VSRMVM
Instance
VSRMVM
Instance
VSRMVM
Instance
Management
Load Balancer
Load Balancer
CouchbaseClusterCouchbase
ClusterCouchbaseCluster
Provisioning
Public or P
rivate C
loud
![Page 28: Cisco's Move from Legacy Software to Cloud-Based Service Model: Couchbase Connect 2015](https://reader030.vdocument.in/reader030/viewer/2022032506/55c9dce1bb61eb2e4d8b471b/html5/thumbnails/28.jpg)
VSR<
VSRM Scalability Today (per service deployment model)
QAMQAMQAMQAMQAM
QAMQAMQAMQAMQAM
QAMQAMQAMQAMQAMQAMQAMQAMQAMQAM
QAMQAMQAMQAMQAM
QAMQAMQAMQAMQAM
QAMQAMQAMQAMQAM
QAMQAMQAMQAMQAM
QAMQAMQAMQAMQAM
Clients
App Micro Service
App Service
Load Balancer
Load Balancer
CouchbaseClusterCouchbase
ClusterCouchbaseCluster
Provisioning
Public or P
rivate C
loud
Resource Mgr
Service
Resource Mgr
Service
Resource Mgr
Service
App AdaptorsServices
Resource Mgr
Service
Resource AdaptorServices
Management
![Page 29: Cisco's Move from Legacy Software to Cloud-Based Service Model: Couchbase Connect 2015](https://reader030.vdocument.in/reader030/viewer/2022032506/55c9dce1bb61eb2e4d8b471b/html5/thumbnails/29.jpg)
The End