Upload
couchbase
View
161
Download
7
Embed Size (px)
Citation preview
Implementation of Couchbaseat Cars.com
Couchbase Connect 2016
Jason WilliamsBruce Zawadzki
2
To be the leading decision engine that moves people through the car
ownership cycle with transparent, fun and engaging experiences.
3
4
5
Challenges & Opportunities
Identify Use Cases
Vendor Selection
Initial Launch
6
Challenges & Opportunities
Business
• Quickly onboard new data
• Quickly release new products
• Start small and iterate
• “Fail Fast” & Learn
Architecture
• Flexible data / documents
• Cost-effective scalability
• Fast data access
• Aligned to Cloud & SOA strategies
7
8
Use Cases
Vehicle Listings Profile Product Data Metrics Pricing Data
9
Vendor Selection Process• Initial Research
• POCs
• Proposals & Demos from 5 Solutions Providers
• Analyst Conversations
10
Why we chose Couchbase - Highlights• Features & Functions• N1QL, Secondary Indexes, Map Reduce Views, …
• Architectural Simplicity• Peer-to-Peer, Multi-dimensional scaling, …
• Performance & High Availability• Memory-first architecture, XDCR, …
• Cloud Readiness & SOA/Microservices Alignment• Easy on/off-prem deployment, document model aligns to fine-grained micro
services, …
11
First Use Cases
12
Goals of our first Couchbase use cases• Deploy and operationalize the new platform with minimal risk
• Provide visible business value
• Learn and document to accelerate future NoSQL development efforts at Cars
• Have fun
13
Vehicle ListingDemand Metrics
14
Vehicle Detail Page (VDP)
15
VDP Activity
16
Architecture
17
Unpackingthe Price
18
VDP – Features
19
VDP – Detailed Pricing
20
Architecture
21
Our Experience with Couchbase• Learning the basics and getting up and running on Couchbase was easy
• Automatic in-memory caching simplified our architecture and design
• Single node architecture simplified our deployment and support
• We liked that N1QL uses a familiar syntax and provides us with many of the same capabilities of a relational database if we need them
• We liked that the Couchbase SDK allows us to configure timeout and durability options on the client side so we can configure these as we need for each of our different use cases
• Couchbase offers flexibility
22
Thank You!