Adobe Experience Manager helps you organize and manage the delivery of creative assets and other content across all of your digital marketing channels. MongoDB enables applications and system to scale beyond the ordinary assumptions in flexible and and agile way. Operating large scalable digital asset management system requires a certain understanding of how data is handled and how data is consumed. This talk his about how to make the most out of these 2 technologies: how to operate, maintain and optimize these system using the best practices and lessons learn from existing installation of AEM and MongoDB.
21. Sizing - Availability
Author Publisher
- Multiple Teams working on same content
- 24/7 our 9/5 on single time zone
- Backups and Maintenance Operations
- User Generated Content
- Geographical deployment
- Application Latency SLA
29. Sizing – Working Set
• Percentage of data that is constantly request by the application
– Indexes
– Recent Used Data
• Read / Write
– Impacts the calculation of the RAM requirement
• Working Set Should Fit In RAM
31. Sizing – Working Set
• AEM Calculation of Working Set
–Internal MongoDB Indexes
–Constantly accessed Assets
• % of data access
–AEM Indexes
• Multi-version Indexes
• Lucene Indexes
Collections
Nodes: Nodes and properties
Metadata information
Blobs: Stores binary data
Binary file chunks
ClusterNodes: Cluster configuration data
Settings: general application configuration data
Changes: revision tracking
Chops file into 258 block sizes
Generates a SHA-256 of all individual , it's id
Generates a diggest and stores it in nodes collection
General purpose are ideal for Content Management Systems
Rich Queries
Secondary indexes
…
Flexible data model is also good for the concurrency management and version control
Allows to scale the infrastructure and has HA out of the box
Author Environment
Multiple teams working on same assets ?
Collaboration
Validation
Curation
24/7 or just working hours on specific timezone?
Backups
Maintenance operations
Data Freshness
Make sure you design your infrastructure for availability compliance
RTO
RPO
Data Distribution
Multi datacenter
Disaster Recovery
High Availability
Functional Segregation
Analytics workload
Backups
Secondary Reads
Author Environment
Multiple teams working on same assets ?
Collaboration
Validation
Curation
24/7 or just working hours on specific timezone?
Backups
Maintenance operations
Data Freshness
High Availability – Ensure application availability during many types of failures
Disaster Recovery – Address the RTO and RPO goals for business continuity
Maintenance – Perform upgrades and other maintenance operations with no application downtime
Secondaries can be used for a variety of applications – failover, hot backup, rolling upgrades, data locality and privacy and workload isolation
Get some slides on MongoDB sizing
Get some slides on MongoDB sizing
Get some slides on MongoDB sizing
Get some slides on MongoDB sizing
Data Deduplication
Lucene FTS indexes structure
Get some slides on MongoDB sizing
Get some slides on MongoDB sizing
AEM can benefit from sharding but we still need to fine tune this it's implementation on multidatacenter setups.
If you are restricted by the volume on a primary node and want to shard within a single datacenter we strongly advise you to do so.
On Publishing nodes this is an effective way to scale your UGC data too.
Get some slides on MongoDB sizing
Get some slides on MongoDB sizing
Get some slides on MongoDB sizing
Get some slides on MongoDB sizing
Reduce Latency
Coolocation
Secondary reads
Indexation Selectivety
Concurrency Model
Compression
AEM Nodes and MongoDB Can Be Decoupled
Scaling
Operational
Test for Load
How Many Assets Are We Dealing With Today
How Many We Want In 6, 12, 24 months?
Monitor Your AEM Nodes Load
Number of concurrent users
Number of operated assets
Monitor Your MongoDB Nodes
Active Data Set
Disk Usage
IO
Scale!
MMS can do a lot for [ops teams].
Best Practices, Automated. MMS takes best practices for running MongoDB and automates them. So you run ops the way MongoDB engineers would do it. This not only makes it more fool-proof, but it also helps you…
Cut Management Overhead. No custom scripting or special setup needed. You can spend less time running and managing manual tasks because MMS takes care of a lot of the work for you, letting you focus on other tasks.
Meet SLAs. Automating critical management tasks makes it easier to meet uptime SLAs. This includes managing failover as well as doing rolling upgrades with no downtime.
Scale Easily. Provision new nodes and systems with a single click.