Download - Unlocked Workshop OSCON 2013 - Part I
![Page 1: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/1.jpg)
OSCON
23 july 2013
Portland, ORButter Up your application
Tuesday, July 23, 13
![Page 2: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/2.jpg)
welcome & introductions
Tuesday, July 23, 13
![Page 3: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/3.jpg)
your unlocked team
3
Wayne A. Walls@waynewalls
Alex Brandt@alunduil
Hart Hoover@hhoover
Tuesday, July 23, 13
![Page 4: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/4.jpg)
get social!
4
@rackspace #unlockedPDX#oscon
Tuesday, July 23, 13
![Page 5: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/5.jpg)
5
Tuesday, July 23, 13
![Page 6: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/6.jpg)
6
Business Strategy
Tuesday, July 23, 13
![Page 7: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/7.jpg)
7
Cloud Savvy
Tuesday, July 23, 13
![Page 8: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/8.jpg)
8
Cloud Freedom
Tuesday, July 23, 13
![Page 9: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/9.jpg)
9
Application Fit
Tuesday, July 23, 13
![Page 10: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/10.jpg)
cost of cloud apps
Wayne wallscloud evangelist
Tuesday, July 23, 13
![Page 11: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/11.jpg)
11
Tuesday, July 23, 13
![Page 12: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/12.jpg)
40%PRIVATE CLOUD
11
Tuesday, July 23, 13
![Page 13: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/13.jpg)
40%PRIVATE CLOUD
11
50%HOSTED ON-SITE
Tuesday, July 23, 13
![Page 14: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/14.jpg)
90% of Workloads Remain In-House...
40%PRIVATE CLOUD
11
50%HOSTED ON-SITE
Tuesday, July 23, 13
![Page 15: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/15.jpg)
Cost Considerations
Infrastructure
12
Tuesday, July 23, 13
![Page 16: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/16.jpg)
13
How many customers can you serve?
Tuesday, July 23, 13
![Page 17: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/17.jpg)
14
How easy would it be to scale?
Tuesday, July 23, 13
![Page 18: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/18.jpg)
Innovation
15
Tuesday, July 23, 13
![Page 19: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/19.jpg)
In-house?
16
Tuesday, July 23, 13
![Page 20: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/20.jpg)
Cost Considerations
17
Developers
Tuesday, July 23, 13
![Page 21: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/21.jpg)
18
Developer time translates into $
Tuesday, July 23, 13
![Page 22: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/22.jpg)
19
Apply effort where it matters
Tuesday, July 23, 13
![Page 23: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/23.jpg)
20
Be realistic about engineering time
Tuesday, July 23, 13
![Page 24: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/24.jpg)
21
Choose tools that scale
Tuesday, July 23, 13
![Page 25: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/25.jpg)
everything as code
Wayne wallscloud evangelist
hart hoovercloud evangelist
Tuesday, July 23, 13
![Page 26: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/26.jpg)
Tuesday, July 23, 13
![Page 27: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/27.jpg)
24
Self-service
Tuesday, July 23, 13
![Page 28: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/28.jpg)
25
On-demand
Tuesday, July 23, 13
![Page 29: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/29.jpg)
26
Metered
Tuesday, July 23, 13
![Page 30: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/30.jpg)
27
Resource pooling
Tuesday, July 23, 13
![Page 31: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/31.jpg)
28
Broad network access
Tuesday, July 23, 13
![Page 32: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/32.jpg)
NIST SAys...
29
Tuesday, July 23, 13
![Page 33: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/33.jpg)
NIST says...
30
Tuesday, July 23, 13
![Page 34: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/34.jpg)
NIST says...
31
Tuesday, July 23, 13
![Page 35: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/35.jpg)
multi-cloud
32
Tuesday, July 23, 13
![Page 36: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/36.jpg)
ENTER devops
33
Tuesday, July 23, 13
![Page 37: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/37.jpg)
34
Culture & Work Methodology
Tuesday, July 23, 13
![Page 38: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/38.jpg)
35
Tooling
Tuesday, July 23, 13
![Page 39: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/39.jpg)
36
Deployment Strategies
Tuesday, July 23, 13
![Page 40: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/40.jpg)
37
Measure All the Things
Tuesday, July 23, 13
![Page 41: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/41.jpg)
38
Automate All the Things
Tuesday, July 23, 13
![Page 42: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/42.jpg)
39
Tuesday, July 23, 13
![Page 43: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/43.jpg)
40
Tuesday, July 23, 13
![Page 44: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/44.jpg)
41
Gerrit
Tuesday, July 23, 13
![Page 45: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/45.jpg)
42
Gerrit
Tuesday, July 23, 13
![Page 46: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/46.jpg)
43
Tuesday, July 23, 13
![Page 47: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/47.jpg)
44
Tuesday, July 23, 13
![Page 48: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/48.jpg)
Infrastructure as code
45
Tuesday, July 23, 13
![Page 49: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/49.jpg)
46
Same Problems
Tuesday, July 23, 13
![Page 50: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/50.jpg)
47
What version is in production?
Tuesday, July 23, 13
![Page 51: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/51.jpg)
48
Issues are found, fixed & redeployed quickly
Tuesday, July 23, 13
![Page 52: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/52.jpg)
49
Test as you develop
Tuesday, July 23, 13
![Page 53: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/53.jpg)
50
Same Best Practices
Tuesday, July 23, 13
![Page 54: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/54.jpg)
51
Tag, branch & release code that defines infra
Tuesday, July 23, 13
![Page 55: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/55.jpg)
52
Coverage lifecycle over various stages
Tuesday, July 23, 13
![Page 56: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/56.jpg)
53
Continuously Test
Tuesday, July 23, 13
![Page 57: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/57.jpg)
54
Tuesday, July 23, 13
![Page 58: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/58.jpg)
Chef Server
Chef Workstation
Chef Client
knife
node
Chef Client
node
environment
55
Tuesday, July 23, 13
![Page 59: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/59.jpg)
•Nodes: Servers
•Environments: Groups of nodes (Dev/QA/Prod)
•Recipes: Describes the desired state of a node
•Cookbooks: Group of Recipes
•Roles: Group of Cookbooks (Web)
•Attribute: information about the current state of a node
56
Tuesday, July 23, 13
![Page 60: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/60.jpg)
Thinking like a developer57
Tuesday, July 23, 13
![Page 61: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/61.jpg)
Product Backlog
Sprint Backlog Sprint Working increment
of the software
58
1. Design
5. QA 2. Build
4. Release 3. Configure
Tuesday, July 23, 13
![Page 62: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/62.jpg)
59
1. Design
5. QA 2. Build
4. Release 3. Configure
Tuesday, July 23, 13
![Page 63: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/63.jpg)
Tuesday, July 23, 13
![Page 64: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/64.jpg)
Test Driven Development
Tuesday, July 23, 13
![Page 65: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/65.jpg)
Test Driven Development
Behavior Driven Development
Tuesday, July 23, 13
![Page 66: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/66.jpg)
Test Driven Development
Behavior Driven Development Domain Driven Development
Tuesday, July 23, 13
![Page 67: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/67.jpg)
Test Driven Development
Behavior Driven Development
Application Bliss
Domain Driven Development
Tuesday, July 23, 13
![Page 68: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/68.jpg)
POLYGLOT PERSISTENCE
alex brandtsr developer
Tuesday, July 23, 13
![Page 69: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/69.jpg)
62
Tuesday, July 23, 13
![Page 70: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/70.jpg)
63
Tuesday, July 23, 13
![Page 71: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/71.jpg)
64
Tuesday, July 23, 13
![Page 72: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/72.jpg)
65
RDBMS may not be the best fit
Tuesday, July 23, 13
![Page 73: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/73.jpg)
66
Tuesday, July 23, 13
![Page 74: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/74.jpg)
67
Tuesday, July 23, 13
![Page 75: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/75.jpg)
68
5 Characteristics
Tuesday, July 23, 13
![Page 76: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/76.jpg)
69
Non-relational
Tuesday, July 23, 13
![Page 77: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/77.jpg)
70
Distributed
Tuesday, July 23, 13
![Page 78: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/78.jpg)
71
Open-source
Tuesday, July 23, 13
![Page 79: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/79.jpg)
72
Horizontally Scalable
Tuesday, July 23, 13
![Page 80: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/80.jpg)
73
Schema-less
Tuesday, July 23, 13
![Page 81: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/81.jpg)
orders
customers
order lines
credit cards
ID: 1001
line items:
customer: Ann
0321293533
0321601912
0131495054
2
1
1
$48 $48
$39
$51
$39
$51
payment details:
Card: AmexCC #: 12345expires: 04/2001
74
Tuesday, July 23, 13
![Page 82: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/82.jpg)
75
There are several different types of data stores that are considered to
be NoSQL
Tuesday, July 23, 13
![Page 83: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/83.jpg)
76
Key/Value Databases
Tuesday, July 23, 13
![Page 84: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/84.jpg)
77
Document Databases
Tuesday, July 23, 13
![Page 85: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/85.jpg)
78
Column-Family Stores
Tuesday, July 23, 13
![Page 86: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/86.jpg)
79
Graph Databases
Tuesday, July 23, 13
![Page 87: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/87.jpg)
80
Types in Detail
Tuesday, July 23, 13
![Page 88: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/88.jpg)
Key/Value DatabaseS
81
Tuesday, July 23, 13
![Page 89: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/89.jpg)
Key/Value DatabaseS
• Good Use Cases:
• Storing Session Information
• User Profiles & Preferences
• Shopping Cart Data
• Bad Use Cases:
• Data Relationships
•Multi-operation Transactions
•Query by Data
82
Tuesday, July 23, 13
![Page 90: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/90.jpg)
Key/Value DatabaseS
• Good Use Cases:
• Storing Session Information
• User Profiles & Preferences
• Shopping Cart Data
• Bad Use Cases:
• Data Relationships
•Multi-operation Transactions
•Query by Data
83
Tuesday, July 23, 13
![Page 91: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/91.jpg)
document Database
84
Tuesday, July 23, 13
![Page 92: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/92.jpg)
document Databases
•Good Use Cases:
• Event Logging
• Blogging Platforms
• Real-time Analytics
• Article storage
• Bad Use Cases:
• Complex Transactions
•Queries against Varying Aggregate Structures
85
Tuesday, July 23, 13
![Page 93: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/93.jpg)
document Databases
•Good Use Cases:
• Event Logging
• Blogging Platforms
• Real-time Analytics
• Article storage
• Bad Use Cases:
• Complex Transactions
•Queries against Varying Aggregate Structures
86
Tuesday, July 23, 13
![Page 94: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/94.jpg)
COLUMN FAMILY
87
Tuesday, July 23, 13
![Page 95: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/95.jpg)
88
Tuesday, July 23, 13
![Page 96: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/96.jpg)
COLUMN-FAMILY datastores
•Good Use Cases:
• Event Logging
• Blogging Platforms
• Counters (page visits)
• Expiring Usage
• Bad Use Cases:
• ACID transactions required
• Early prototype applications
89
Tuesday, July 23, 13
![Page 97: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/97.jpg)
graph database
90
Tuesday, July 23, 13
![Page 98: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/98.jpg)
Amanda
KNOWS
KNOWS
KNOWS
Robert
Gerry
Lamar
KNOWS
App 1
BUILTBUILT
KNOWS
App 2
USES
BUILT
Christie
KNOWS
Destiny
Jessica
KNOWS
App 3
BUILT
USES
USES
USES
KNOWS
graph database
91
Tuesday, July 23, 13
![Page 99: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/99.jpg)
graph databases
•Good Use Cases:
• Connected Data
• Location-based services
• Recommendation engines
• Bad Use Cases:
• Ability to update specific aggregates
92
Tuesday, July 23, 13
![Page 100: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/100.jpg)
Companies using nosql
93
DATABASE COMPANIES
Tuesday, July 23, 13
![Page 101: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/101.jpg)
THE FUTURE IS POLYGLOT
94
Neo4Jdatabase
Cassandradatabase
Couchdatabase
MongoDBdatabase
RELATIONALDATABASE
Graph-structureddomain rules
Columnar dataaccess with
decentralization
Documentstructures
Document structureswith offlineprocessing
(Actors) (Actors)
(Actors)(Actors)
Asynchronous message passing
MODULE 1
MODULE 2
MODULE 3
MODULE 4
IEEE Software Sept/October 2010 - Debasish Ghosh / Twitter @debasishg
Tuesday, July 23, 13
![Page 102: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/102.jpg)
95
POLYGLOT PATTERN: cache
ORDERTAKING
RESTAURANTMANAGEMENT
REDISCACHE
MYSQL DATABASE SECONDFIRST
CONSUMERRESTAURANT
OWNER
Credit: @crichardson
Tuesday, July 23, 13
![Page 103: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/103.jpg)
96
POLYGLOT PATTERN: write to sql and NOSQL
NEWTWEET
INSERT
LPUSHXLTRIM
MySQL
TWEETS
FOLLOWS
FOLLOWERS
Redis: Timeline
FOLLOWER 1
FOLLOWER 2
FOLLOWER 3
Avoidexpensive
MySQL joins
Credit: @crichardson
Tuesday, July 23, 13
![Page 104: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/104.jpg)
97
POLYGLOT PATTERN: REPLICATE FROM MYsql to NOSQL
QUERYSERVICE
UPDATESERVICE
REDISMYSQL
DATABASE
SYSTEMOF RECORD
MATERIALIZED VIEW
READER WRITER
replicate and
denormalize
query() update()
Credit: @crichardson
Tuesday, July 23, 13
![Page 105: Unlocked Workshop OSCON 2013 - Part I](https://reader033.vdocuments.net/reader033/viewer/2022052821/554915f5b4c9055d458c26d8/html5/thumbnails/105.jpg)
98
Atomic
Consistent
Isolated
Durable
ACID to base
Basically Available
Soft state
Eventually consistent
Tuesday, July 23, 13