Layer Drupal with emerging technologies to create a performant, scalable data purveyor. Modularizing the architecture creates performant applications for all content and all users.
Unblocking The Main Thread Solving ANRs and Frozen Frames
Drupal as a Data Purveyor, Part I
1. ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13@astonishdesign #ddtx13
Drupal as
a Data Purveyor
Layering Drupal with emerging technologies to create a
performant, scalable data purveyor.
2. ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
ASTONISH DESIGN
C H A N G E G A M E
Diana Montalion Dupuis
@dianadupuis
Sam Heuck
@samheuck
Andrew Elster
@filmknurd
3. ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
ASTONISH DESIGN
C H A N G E G A M E
We have a new website: astonishdesign.com
@Astonish_Design
4. ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
An open-source content management PHP/MySQL framework designed
for rapid development of content-rich web applications.
5. ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Reasons (among many)
• Growth: evolving tool
• Foundation skill set
• User features
6. ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
http://jdhancock.com/ • JD Hancock• http://farm9.staticflickr.com/8322/8031897271_9c63e48a29_b.jpg
7. ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
“Big” Data
"Big" in relation to the amount
of content Drupal is designed
to manage
8. ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Volume
9. ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Velocity
BIKE WALLS• http://www.bikewalls.com
10. ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Variety
11. ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Content
•Every kind of data
•Coming from everywhere
12. ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Current Issues
•Bootstrapping
•Bottlenecks - Normalized - Join Happy
•Lack of solution architecture
13. ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Views
Rapid
Development
Platform
Visitors
& Content
Authors
Miners
Who is the user?
14. ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Welcome to the future
When modularizing the architecture creates performant applications for
all content and all users.
15. ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Traditional Optimizations
16. ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13@astonishdesign #ddtx13
A Balancing Act
17. ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13@astonishdesign #ddtx13
Go for the low hanging fruit
18. ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
ELENA ELISSEEVA, SHUTTERSTOCK • http://www.shutterstock.com/pic.mhtml?id=61884133
Case Study: NRG
19. ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
High Abstraction
Easy to Maintain
Cheap
Low Abstraction
Hard to Maintain
Costly
Views
Query Builder
Dynamic Queries
Static Queries
Low
Performance
High
Performance
20. ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13@astonishdesign #ddtx13
The problem with views...
21. ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13@astonishdesign #ddtx13
In other words...
22. ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13@astonishdesign #ddtx13
Solution!
Dynamic • Extensible • Integrated
Query Builder API
23. ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
High Abstraction
Easy to Maintain
Cheap
Low Abstraction
Hard to Maintain
Costly
Views
Query Builder
Dynamic Queries
Static Queries
Low
Performance
High
Performance
OLEKSANDR DIBROVA/DEPOSITPHOTOS • http://depositphotos.com/10983976/stock-photo-Brick-Wall.html
24. ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Duplicate
Data
Rapid
Development
Platform
Denormalized
Document Storage for READS
Normalized
Relational for WRITES
Data Mining
Content & Data
Creation
CoSQL
25. ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
CAP Theorem
26. ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
DOUG BEGHTEL/THE OREGONIAN • http://www.oregonlive.com/foodday/index.ssf/2011/09/act_quick_on_those_grocery_out.html
27. ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
28. ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
In our next session ...
29. ASTONISH DESIGN
C H A N G E G A M E astonishdesign.com@astonishdesign #ddtx13
Questions?