Más contenido relacionado
La actualidad más candente (20)
Similar a IBM - Introduction to Cloudant (20)
Más de Francisco González Jiménez (20)
IBM - Introduction to Cloudant
- 1. © 2014 IBM Corporation
Introduction to Cloudant
- 2. © 2014 IBM Corporation2
Agenda
Introducing Cloudant
Aside: Primer on NoSQL & DBaaS
Features and Functionality
Use Cases and Customer Examples
Next Steps
Q&A At Anytime
- 3. © 2014 IBM Corporation3
Simple to use…but feature-rich
Scales…massively
Available….always
3
A fully-managed data layer service for web and
mobile applications NoSQL DBaaS
- 4. © 2014 IBM Corporation4
What is NoSQL Really?
Actual: “Not only SQL”
Better: Non-Relational
New ways of storing
and querying data
beyond the RDBMS
The Rise of Polyglot
Persistence
Why NoSQL?
1. Scalability
2. Flexible Schema
3. Fast
Development
4. Cost
5. Cloud
Architecture
Compatibility
- 5. © 2014 IBM Corporation5
5
Recommended Reading - NoSQL
NoSQL Distilled Seven Databases in
Seven Weeks
- 6. © 2014 IBM Corporation6
ROI: DIY vs. Hosted DB vs. DBaaS
Hardware
Software
Admin
Design
Software
Admin
Design
Design
DIYDIY HostedHosted DBaaSDBaaS
Aside:
Why
Database-as-a-Service
(DBaaS)?
- 7. © 2014 IBM Corporation
Cloudant Features & Functionality
- 8. © 2014 IBM Corporation8
The Cloudant Data Layer
− Best-of-Breed NoSQL Database and Clustering Technology
− Managed 24x7x365 by DevOps Experts
− Global Data Presence in 35+ Data Centers
8
- 9. © 2014 IBM Corporation9
Cloudant Overview
− Operational Data Store
− NoSQL Document Database
− Simple and well-defined HTTP API
− Fully Integrated:
• Replication & Sync
• MapReduce for Real-time Analytics
• Full-Text Search
• GeoSpatial
− Multi-tenant and dedicated-tenant clusters
− Monitoring, administration, & development Dashboard
− Powered by Apache CouchDB, Dynamo Clustering, Lucene
Search, and a whole lot more…
9
- 10. © 2014 IBM Corporation10
1
0
Document Database Basics
• Documents are stored in the popular JSON format with a flexible
schema
• A database is a logical collection of documents, with single set of
access permissions
• Cluster can hold any number of databases
- 11. © 2014 IBM Corporation11
1
1
Cloudant Cluster – Durable, Available & Scalable
• Horizontally scalable
• Data is auto-sharded across cluster
• All data stored in triplicate
• Built using a master-master design
so no single point of failure for reads
or writes
• Cross-data center replication
• Geo-load balancing for user access
to data closest to them
- 12. © 2014 IBM Corporation12
1
2
Developing with Cloudant
• Dashboard
• HTTP RESTful API
• Language Agnostic
• Compatible with open
source Apache
CouchDB
• Cloudant and
CouchDB-compatible
API Libraries
- 13. © 2014 IBM Corporation13
IaaSPaaSCloud Agnostic Ecosystem
1
3
- 14. © 2014 IBM Corporation
Use Cases and Customer Examples
- 15. © 2014 IBM Corporation15
Typical Data Layer Challenges
Cloudant Customers lean on Cloudant
to solve many data layer challenges
Exponentially growing user base
Relational database isn’t scaling
Do-it-yourself database proved to be a
challenge
No budget, time, or skill set for
administration
Building an application from scratch
with unknown capacity requirements
Need simple and fast development
1
5
- 16. © 2014 IBM Corporation16
Case Study: FitnessKeeper
1
6
FitnessKeeper:
•Relational DB wasn’t scaling
•Simplify operations and development
•Reduce costs
Creator of fitness tracking
mobile app RunKeeper
Started off with a relational
database (PostgreSQL)
Explosive growth (> 20
million active users) resulted
in scalability issues
Want their team to focus on
user experience and front-
end development
Started migration to Cloudant
last year
Built new BreezeApp
exclusively on Cloudant
- 17. © 2014 IBM Corporation17
Case Study: Fidelity Investments
Fidsafe
1
7
FidSafe evaluated:
•MySQL (too costly to horizontally
scale)
•DynamoDB (too hard to manage)
•Couchbase (not compatible with
CouchDB)
•Cloudant (choice due to
simplicity and service)
Online secure store for important
docs (wills, legal docs, etc.) that is
practical, secure, and
collaborative.
Evaluated other DB’s but chose
Cloudant
Hybrid Cloud application built on:
− Qooxdoo
− Node.js (Express)
− S3
− Cloudant
- 19. © 2014 IBM Corporation19
1
9
Sign Up!
1. Sign up at https://cloudant.com/sign-up
2. Use the Dashboard to start creating databases and
documents!
3. Access your account at https://<account>.cloudant.com
4. Check out Cloudant docs
5. Go through the For Developers tutorials
6. Contact Us: support@cloudant.com or #cloudant on
IRC
- 20. © 2014 IBM Corporation20
2
0
Cloudant Account Types
Multi-Tenant Dedicated
Details
• Sign up online
• Shared hardware
• Choose from among 8 data
centers around the world
• Dedicated cluster of servers for
a specific customer
• Data center or data centers of
choice
• SLA, Cross-DC Replication, and
Cluster Management
Use
Cases
• Evaluation & Learning
• Functional Testing
• Small Production Launches
• POC for Prod Launch
• Performance Testing
• Production Environments
Pricing
• Free if under $5/month
• Pay per Usage
• Storage: GB/month
• Usage: HTTP requests
• Priced Per Node
• 3 Nodes to Start (N=3 Minimum)
• Bare-metal vs. AWS
• Includes Gold Support (24x7)
- 21. © 2014 IBM Corporation21
Cloudant’’’’s DNA
Combines best OS technology & thinking to create most scalable, flexible,
always-on DBaaS for big mobile and the internet of things
Graphite &
Riemann
Monitoring
Chef
Configuration
Management
rsyslog
Federated Logging
CollectD
Continuous
Integration
CouchDB
JSON storage, API,
Replication
Dynamo
Clustering, Scaling,
Fault Tolerance
Lucene
Text indexing &
Search
Haproxy
Geo-Load Balancing
GeoJSON
Geospatial indexing &
query
Jenkins
Continuous
Integration
- 22. © 2014 IBM Corporation22
The Cloudant DBaaS Stack
Visualization
Lucene
Search
Chainable
MapReduce
Management
Monitoring
IOQ
Apache CouchDB
Docs: JSON,
Attachments
Developer APIs
Prioritizing IO types; prevents
“noisy neighbors” in multi-
tenancy
Clustering API, Sharding,
Intra-cluster messaging
JSON Doc Store, HTTP
API, GET/PUT docs, Views,
Replication…
= Cloudant
built/integrated
Horizontal Clustering Framework
2
2
GeoSpatial
Indexing
Geo-Load Balancing Connects users to closest copy
of data
Dashboards: Monitoring,
Admin, Development
- 23. © 2014 IBM Corporation23
2
3
IBM Contributions to Open Source
- 24. © 2014 IBM Corporation24
IBM has embraced Open Source since 1960s!
2
- 25. © 2014 IBM Corporation25
Application Architecture with Cloudant
25
- 26. © 2014 IBM Corporation26
Querying Data - Choices
2
6
Primary Index Secondary Index Search Index Geospatial Index
• Exists for every
database “OOTB”,
stored in a b-tree
• Primary key doc._id
• Use when you can find
documents based on
their _id
• Built using
MapReduce, stored in
a b-tree
• Use when you need to
analyze data or get a
range of keys
• Ex: count data fields,
sum/average numeric
results, advanced
stats, group by date,
etc.
• Built using Lucene
• Unique to Cloudant
(not in CouchDB)
• Ad-hoc queries
• Find documents based
on their contents
• Can do groups, facets,
and geo (bbox & sort
by distance)
• Unique to Cloudant,
stored in R* tree
• Complex geometries
(polygon,
circularstring, etc.)
• Advanced relations
(intersect, overlaps,
etc.)
• GeoJSON
- 27. © 2014 IBM Corporation27 27
Local
Storage
Local
Storage
Store data on the servers
and/or the local device
Native libraries built to
support synchronization
process and local storage
management
Synchronize the data
between devices by
pushing/pulling data from
Cloudant
Store and Access Data Everywhere
- 28. © 2014 IBM Corporation28 28
Putting Data on the Edge
Geographically disperse your data across multiple data centers to
allow for easy access depending on location
Ability to store data across 35 geographic locations
- 29. © 2014 IBM Corporation29 29
Local
Storage
Read/Write from local storage
when connection is unavailable
Restored connection will sync
the data to the server as well as
other devices connected to
same source
Ensures data integrity through
revision history replication
Continuously On….
- 30. © 2014 IBM Corporation30 30
Ability to isolate data to the
individual on the local device and
server
Limit overall network activity by
syncing only data pertinent to
those users and their devices
Easily share data across devices
based on user access
Simplify and Distribute More Efficiently
- 31. © 2014 IBM Corporation31 31
Sync Any Device using JSON over HTTP
JSON
Cloudant
HTTP
JSON
HTTP
JSON
HTTP
JSON
HTTP
JSON
HTTP
JSON
HTTP
- 32. © 2014 IBM Corporation32
Cloudant Geospatial
32
Combines the advanced geospatial analyses of GIS with the flexibility,
scalability, and data sync of Cloudant.
Scale for data size, concurrent users, and multiple locations
Deliver local access to geospatial data and analyses
Extends existing GIS applications to the geospatial edge
Example:
https://normanb.cloudant.com/colorado_skiing/geo/demos/cloudant/index.html
- 33. © 2014 IBM Corporation33
Cloudant in the Market – DBaaS Managed Service
How does Cloudant’s service fit in the database market?
Hosted
Do-it-yourself
(DIY)
RDBMS / SQL NoSQL
Managed
MongoDB
CouchDB
CouchBase
Cassandra
Riak
SQL
Oracle
MySQL
PostgreSQL
…
AWS SDB
AWS RDS
Other SQL
solutions on
Rackspace, etc.
Amazon -
DynamoDB
- 34. © 2014 IBM Corporation34
Cloudant & IBM’s Big Data Portfolio
IBM is unique in having developed an enterprise class big data and analytics
platform that allows you to address the full spectrum of big data business
challenges. Cloudant provides another leading solution to the already market-
leading portfolio.
Cloudant integration with other IBM Big Data Products:
BigInsights is IBM’s Hadoop platform for analytics
− Cloudant is complementary to BigInsights
− Data from Cloudant can be copied into BigInsights for analytics as part of the
Watson Foundations zone based architecture
DB2 BLU is IBM’s in-memory high performance relational database system
(RDBMS) for analytics
− Cloudant is complementary to DB2 BLU
− Data can from Cloudant can be loaded into DB2 BLU directly for analytics or via
the BigInsights landing zone as part of Watson Foundations
- 35. © 2014 IBM Corporation35
Why Companies Use Cloudant DBaaS
Scales massively & elastically
− Handle millions of daily active users
Guaranteed performance & up time
− Removes risk of project & SLA delivery failure
More agile development for web & mobile
− No rigid schemas to slow development
Managed for you 24x7
− Stay focused on new development, not DB
administration
Build More. Grow More. Sleep More.
Cloudant empowers clients from all verticals to get their applications to market faster in a
cost-effective, hassle-free delivery model with guaranteed performance and support.
- 36. © 2014 IBM Corporation36
Joel DeYoung
Co-Founder & Director of Technology; Hothead Games
“Our code handles
hundreds of millions of
transactions a day.
Moving our data to
Cloudant has freed up our
team to focus on what
matters most: making a
great experience for users.
”
scales globally on
demand with fully
managed services
- 37. © 2014 IBM Corporation37
Samsung
achieves scalability and
flexible schemas for its data
Hyuk-Jeen Suh, Senior Investment Manager; Samsung
“Samsung Ventures believes
a globally distributed data
layer and management
of that data is especially
critical for large enterprise
businesses.
”
- 38. © 2014 IBM Corporation38
Postmark
gains 5x in data storage for
identical server footprint
Chris Nagele, Postmark
“Goodbye MongoDB, Hello Cloudant.
We were looking for a solution that
would allow us to scale easily and
something that fit in with our existing
infrastructure.
Cloudant was a perfect fit.
”
- 39. © 2014 IBM Corporation39
Novartis
successfully manages clinical
trial data with high availability,
stability, and security
John Walker, IT Director for Novartis
“Everything is incremental in the
Cloudant world, so we only have
to [execute] operations on the
small amount of data that’s
changing each day. Processes
that were occurring in the realm of
ten to twelve hours, we have
down to minutes.
”