Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads.
Application Renovation
with Couchbase Clint Ricker
VSRM Intro
VSRM = Video Session & Resource
Manager
Enables broadcast, on demand, and
hosted DVR Video
Background scenario
Changing industry
Changing ecosystem
Sold as a 1U appliance
VSRM (Before Couchbase)
Scalability via segmentation (1 server
per 100K subscribers)
No centralized...
VSR<
Platform
Components
Applications
Application Protocol
Adaptors
SDV Policy
Mgr
S6
VERM
SSP
Resource Manager
Resource M...
VSRM
Clients
(externally
sharded to
~100K)
QAMQAMQAMQAMQAM
Mgmt
DB
VSRM
Clients
(externally
sharded to
~100K)
QAMQAMQAMQAM...
Phase 1: Assessment
Strong Underlying Design
Pluggable components
Core components plus adaptors
Model based applications
Deep customer entrenchment
Large scale customer deployments
Deep customer integration and
customization
Rich algorithms and business logic
Complex algorithms
Rich support for customer policy rules
Why not?
Bad Design
Easy to reimplement algorithms and
business logic
Small customer entrenchment
High technical debt
Phase 2: Renovation
VSRM VSRM VSRM VSRM VSRM
DB DB DB DB DB
Concept
Distributed database / shared memory
Why Couchbase?
Strong consistency
Reliable low latency
Great scalability
VSR<
Platform
Components
Applications
Application Protocol
Adaptors
SDV Policy
Mgr
S6
VERM
SSP
Resource Manager
Resource M...
Data Former Became
Per session data (session
state)
In memory C struct and
legacy local database
Couchbase keys (now text
...
Data Sizing
Smaller keys have lower latency
Max rate of consistent update of a
key–higher for small keys
Transactions need...
Design Rules
Real time operations use key/value
operations
Views reserved for maintenance
operations
All database calls go...
Locking / Serialization
Pessimistic locks as a replacement for
mutex
Provides serialization, not order
Optimistic locks fo...
Queries
Be intentional on what data is indexed
Weaker consistency
Limited resource, especially if
stale=true
Data Model TransformationCouchbase = clustering Swiss Army knife
Lightweight directory services
Simple distributed queues ...
Danger Zones
Consider key contention. Break apart
keys if necessary. Redesign to avoid.
Distributed databases require robu...
Phase 3: Makeover Grand Reveal
VSR<
Platform
Components
Applications
Application Protocol
Adaptors
SDV Policy
Mgr
S6
VERM
SSP
Resource Manager
Resource M...
VSR<
Platform
Components
Couchbase
Adaptor
Applications
Application Protocol
Adaptors
SDV Policy
Mgr
S6
VERM
SSP
Resource ...
VSRM
Clients
(externally
sharded to
~100K)
QAMQAMQAMQAMQAM
Mgmt
DB
VSRM
Clients
(externally
sharded to
~100K)
QAMQAMQAMQAM...
VSR<VSRM
VM
Instance
VSRM Scalability Today (unified deployment model)
QAMQAMQAMQAMQAM
QAMQAMQAMQAMQAM
QAMQAMQAMQAMQAM
QAM...
VSR<
VSRM Scalability Today (per service deployment model)
QAMQAMQAMQAMQAM
QAMQAMQAMQAMQAM
QAMQAMQAMQAMQAM
QAMQAMQAMQAMQAM...
The End
Upcoming SlideShare
Loading in …5
×

Cisco's Move from Legacy Software to Cloud-Based Service Model: Couchbase Connect 2015

1,270 views

Published on

Old application? Ugly or outdated designs? High cost of maintenance? An in-depth look into our experience in using Couchbase as a catalyst to modernize a standalone software appliance into cloud-based horizontally-scalable services.

Published in: Software
  • Be the first to comment

  • Be the first to like this

Cisco's Move from Legacy Software to Cloud-Based Service Model: Couchbase Connect 2015

  1. 1. Application Renovation with Couchbase Clint Ricker
  2. VSRM Intro VSRM = Video Session & Resource Manager Enables broadcast, on demand, and hosted DVR Video
  3. Background scenario Changing industry Changing ecosystem
  4. Sold as a 1U appliance VSRM (Before Couchbase) Scalability via segmentation (1 server per 100K subscribers) No centralized management
  5. VSR< Platform Components Applications Application Protocol Adaptors SDV Policy Mgr S6 VERM SSP Resource Manager Resource Manager Adaptors CMTS QAM Bulk Encryptor ElementManager(proprietarylocal database) VSRM (Before Couchbase) MCMIS VOD Log Manager Config Manager HA Manager
  6. 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)
  7. Phase 1: Assessment
  8. Strong Underlying Design Pluggable components Core components plus adaptors Model based applications
  9. Deep customer entrenchment Large scale customer deployments Deep customer integration and customization
  10. Rich algorithms and business logic Complex algorithms Rich support for customer policy rules
  11. Why not? Bad Design Easy to reimplement algorithms and business logic Small customer entrenchment High technical debt
  12. Phase 2: Renovation
  13. VSRM VSRM VSRM VSRM VSRM DB DB DB DB DB Concept Distributed database / shared memory
  14. Why Couchbase? Strong consistency Reliable low latency Great scalability
  15. VSR< Platform Components Applications Application Protocol Adaptors SDV Policy Mgr S6 VERM SSP Resource Manager Resource Manager Adaptors CMTS QAM Bulk Encryptor ElementManager(proprietarylocal database) VSRM MCMIS VOD Log Manager Config Manager HA Manager Couchbase Adaptor DB Manager State
  16. 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 table Session data typically peeled off Counters are individual keys Raw memory C struct Couchbase keys using memcpy on C/C++. Other APIs transparently handle objects. Data Model Transformation
  17. 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
  18. Design Rules Real time operations use key/value operations Views reserved for maintenance operations All database calls go through abstraction layer
  19. Locking / Serialization Pessimistic locks as a replacement for mutex Provides serialization, not order Optimistic locks for read efficiency
  20. Queries Be intentional on what data is indexed Weaker consistency Limited resource, especially if stale=true
  21. Data Model TransformationCouchbase = clustering Swiss Army knife Lightweight directory services Simple distributed queues with append Master election via get w/lock
  22. 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.
  23. Phase 3: Makeover Grand Reveal
  24. VSR< Platform Components Applications Application Protocol Adaptors SDV Policy Mgr S6 VERM SSP Resource Manager Resource Manager Adaptors CMTS QAM Bulk Encryptor ElementManager(proprietarylocal database) VSRM (Before Couchbase) MCMIS VOD Log Manager Config Manager HA Manager
  25. VSR< Platform Components Couchbase Adaptor Applications Application Protocol Adaptors SDV Policy Mgr S6 VERM SSP Resource Manager Resource Manager Adaptors CMTS QAM Bulk Encryptor ElementManager(structureonly) VSRM Today MCMIS VOD Log Manager Config Manager HA Manager Web Svc Manager Recorder Mgr Linear Mgr C3 A8 RM -IS RM -SS Recorder Video Mux DB Manager
  26. 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
  27. VSR<VSRM VM Instance VSRM Scalability Today (unified deployment model) QAMQAMQAMQAMQAM QAMQAMQAMQAMQAM QAMQAMQAMQAMQAM QAMQAMQAMQAMQAM QAMQAMQAMQAMQAM QAMQAMQAMQAMQAM QAMQAMQAMQAMQAM QAMQAMQAMQAMQAM QAMQAMQAMQAMQAM Clients VSRM VM Instance VSRM VM Instance VSRM VM Instance VSRM VM Instance Management Load Balancer Load Balancer Couchbase ClusterCouchbase ClusterCouchbase Cluster Provisioning PublicorPrivate Cloud
  28. VSR< VSRM Scalability Today (per service deployment model) QAMQAMQAMQAMQAM QAMQAMQAMQAMQAM QAMQAMQAMQAMQAM QAMQAMQAMQAMQAM QAMQAMQAMQAMQAM QAMQAMQAMQAMQAM QAMQAMQAMQAMQAM QAMQAMQAMQAMQAM QAMQAMQAMQAMQAM Clients App Micro Service App Service Load Balancer Load Balancer Couchbase ClusterCouchbase ClusterCouchbase Cluster Provisioning PublicorPrivate Cloud Resource Mgr Service Resource Mgr Service Resource Mgr Service App Adaptors Services Resource Mgr Service Resource Adaptor Services Management
  29. The End
стоимость цемента

куда вложить небольшие деньги

источник

×