Cassandra Day Atlanta 2015: Troubleshooting with Apache Cassandra
Application Development with Apache Cassandra as a Service
-
Upload
wso2 -
Category
Technology
-
view
2.915 -
download
1
Transcript of Application Development with Apache Cassandra as a Service
![Page 1: Application Development with Apache Cassandra as a Service](https://reader034.fdocuments.in/reader034/viewer/2022052505/555c3b6ed8b42a2c068b49c8/html5/thumbnails/1.jpg)
Application Development with Apache
Cassandra as a Service
By Deependra Ariyadewa
![Page 2: Application Development with Apache Cassandra as a Service](https://reader034.fdocuments.in/reader034/viewer/2022052505/555c3b6ed8b42a2c068b49c8/html5/thumbnails/2.jpg)
WSO2
• Founded in 2005 by acknowledged leaders in XML, Web Services Technologies & Standards and Open Source. Primary contributors to Apache Web Services projects started in 2001
• Producing entire middleware platform 100% open source under Apache license
• Business model is to sell comprehensive support & maintenance for our products
• Technology OEM’d by IBM, Progress, Software AG, Alcatel, EMC,
• and CA
• Venture funded by Intel Capital and Quest Software.
• Global corporation with offices in Palo Alto, USA Portsmouth, UK & Colombo, Sri Lanka
• 150+ employees and growing.
![Page 3: Application Development with Apache Cassandra as a Service](https://reader034.fdocuments.in/reader034/viewer/2022052505/555c3b6ed8b42a2c068b49c8/html5/thumbnails/3.jpg)
Attendees will learn
• When to select a NoSQL column store database
• The advantages of WSO2 Column Store Service – (CSS),
particularly in a cloud deployment
• How to create and manage a Cassandra keyspace using
WSO2 CSS
• How to develop and deploy an application with the WSO2
CSS
![Page 4: Application Development with Apache Cassandra as a Service](https://reader034.fdocuments.in/reader034/viewer/2022052505/555c3b6ed8b42a2c068b49c8/html5/thumbnails/4.jpg)
Introduction to Data Problem
• Rapid growth of published data.
• Managing large amounts of data is difficult
Difficulties include
o Capture
o Storage
o Search
o Sharing
o Analytics
o Visualization
![Page 5: Application Development with Apache Cassandra as a Service](https://reader034.fdocuments.in/reader034/viewer/2022052505/555c3b6ed8b42a2c068b49c8/html5/thumbnails/5.jpg)
The Well Known Data Solution
• Relational Database Management Systems - RDBMS
Oracle, DB2, Postgress, MySQL
• Object-oriented Databases
VelocityDB, Wakanda, Zope
• NoSQL Databases
Cassandra, CouchDB, MongoDB
![Page 6: Application Development with Apache Cassandra as a Service](https://reader034.fdocuments.in/reader034/viewer/2022052505/555c3b6ed8b42a2c068b49c8/html5/thumbnails/6.jpg)
Limitations in Relational Model
• Relational model should maintain ACID
properties.
• Hard to scale up keeping Consistency and Isolation due to Node Failures and distributed locking.
• less scalable SQL.
o Distributed JOIN
![Page 7: Application Development with Apache Cassandra as a Service](https://reader034.fdocuments.in/reader034/viewer/2022052505/555c3b6ed8b42a2c068b49c8/html5/thumbnails/7.jpg)
An alternative to ACID is BASE
• Basic Availability
• Soft-state
• Eventual consistency
![Page 8: Application Development with Apache Cassandra as a Service](https://reader034.fdocuments.in/reader034/viewer/2022052505/555c3b6ed8b42a2c068b49c8/html5/thumbnails/8.jpg)
CAP Theorem
• In distributed systems it is only possible to have two
properties out of the properties Consistency, Availability and
Partition Tolerance at any given time.
![Page 9: Application Development with Apache Cassandra as a Service](https://reader034.fdocuments.in/reader034/viewer/2022052505/555c3b6ed8b42a2c068b49c8/html5/thumbnails/9.jpg)
NoSQL Data Solutions
• Tunable Consistency
• Fault Tolerant
• Decentralized
• Runs on Cheap Commodity Hardware
• Flexible Data Models
![Page 10: Application Development with Apache Cassandra as a Service](https://reader034.fdocuments.in/reader034/viewer/2022052505/555c3b6ed8b42a2c068b49c8/html5/thumbnails/10.jpg)
NoSQL Database Types
• Wide Column Store / Column Families
o Cassandra, HBase
• Document Store
o MongoDB, CouchDB
• Key Value / Tuple Store
o Riak, Redis
• Graph Databases
o Neo4J, FlockDB source:http://nosql-database.org/
![Page 11: Application Development with Apache Cassandra as a Service](https://reader034.fdocuments.in/reader034/viewer/2022052505/555c3b6ed8b42a2c068b49c8/html5/thumbnails/11.jpg)
When to Select NoSQL Column Store
• Structured Data
• Highly Scalable Systems with Primary Key Retrieval
• Highly scalable systems with WHERE clause Support
![Page 12: Application Development with Apache Cassandra as a Service](https://reader034.fdocuments.in/reader034/viewer/2022052505/555c3b6ed8b42a2c068b49c8/html5/thumbnails/12.jpg)
Apache Cassandra Features
• Fault Tolerant
Data is automatically replicated to multiple node / across multiple data centers for fault tolerance.
• Decentralized
Every node in the cluster is identical.
• Rich Data Model
support key/value systems and column families.
• Elastic
Read and write throughput both increase linearly as new machines are added,
with no downtime or interruption to applications.
![Page 13: Application Development with Apache Cassandra as a Service](https://reader034.fdocuments.in/reader034/viewer/2022052505/555c3b6ed8b42a2c068b49c8/html5/thumbnails/13.jpg)
WSO2 Data Solutions
• Data Service Server - DSS
• Relational Storage Service - RSS
• Column Store Service - CSS
• File System as a service ( FSaaS) - HDFS
![Page 14: Application Development with Apache Cassandra as a Service](https://reader034.fdocuments.in/reader034/viewer/2022052505/555c3b6ed8b42a2c068b49c8/html5/thumbnails/14.jpg)
Cassandra Deployment Diagram
![Page 15: Application Development with Apache Cassandra as a Service](https://reader034.fdocuments.in/reader034/viewer/2022052505/555c3b6ed8b42a2c068b49c8/html5/thumbnails/15.jpg)
WSO2 Column Store
• User requests are authenticated and authorized with Carbon User manager.
• Cassandra service listens on port 9160 for thrift calls.
• Port 7000 uses as the default gossip channel.
![Page 16: Application Development with Apache Cassandra as a Service](https://reader034.fdocuments.in/reader034/viewer/2022052505/555c3b6ed8b42a2c068b49c8/html5/thumbnails/16.jpg)
WSO2 Stratos
![Page 17: Application Development with Apache Cassandra as a Service](https://reader034.fdocuments.in/reader034/viewer/2022052505/555c3b6ed8b42a2c068b49c8/html5/thumbnails/17.jpg)
WSO2 Column Store as a Service (CSS)
![Page 18: Application Development with Apache Cassandra as a Service](https://reader034.fdocuments.in/reader034/viewer/2022052505/555c3b6ed8b42a2c068b49c8/html5/thumbnails/18.jpg)
How to Install Cassandra feature
• Install Cassandra feature from p2 repository.
![Page 19: Application Development with Apache Cassandra as a Service](https://reader034.fdocuments.in/reader034/viewer/2022052505/555c3b6ed8b42a2c068b49c8/html5/thumbnails/19.jpg)
Expand the Cassandra Cluster
• Decide on a Key partitioner
partitioner: org.apache.cassandra.dht.RandomPartitioner
• Set Seeds
- seeds: "192.168.0.102", "192.168.0.103"
• Set Listen address to an IP
listen_address: 192.168.0.10
• Plug WSO2 authentication / authorization system.
authenticator: org.wso2.carbon.cassandra.server.CarbonCassandraAuthenticator
authority: org.wso2.carbon.cassandra.server.CarbonCassandraAuthority
![Page 20: Application Development with Apache Cassandra as a Service](https://reader034.fdocuments.in/reader034/viewer/2022052505/555c3b6ed8b42a2c068b49c8/html5/thumbnails/20.jpg)
Manage Keyspace / Column Families
![Page 21: Application Development with Apache Cassandra as a Service](https://reader034.fdocuments.in/reader034/viewer/2022052505/555c3b6ed8b42a2c068b49c8/html5/thumbnails/21.jpg)
Manage Keyspace / Column Families
![Page 22: Application Development with Apache Cassandra as a Service](https://reader034.fdocuments.in/reader034/viewer/2022052505/555c3b6ed8b42a2c068b49c8/html5/thumbnails/22.jpg)
Manage Keyspace / Column Families
![Page 23: Application Development with Apache Cassandra as a Service](https://reader034.fdocuments.in/reader034/viewer/2022052505/555c3b6ed8b42a2c068b49c8/html5/thumbnails/23.jpg)
Write Clients with Hector ( Java API )
![Page 24: Application Development with Apache Cassandra as a Service](https://reader034.fdocuments.in/reader034/viewer/2022052505/555c3b6ed8b42a2c068b49c8/html5/thumbnails/24.jpg)
Write Clients with Hector
![Page 25: Application Development with Apache Cassandra as a Service](https://reader034.fdocuments.in/reader034/viewer/2022052505/555c3b6ed8b42a2c068b49c8/html5/thumbnails/25.jpg)
Q & A
![Page 26: Application Development with Apache Cassandra as a Service](https://reader034.fdocuments.in/reader034/viewer/2022052505/555c3b6ed8b42a2c068b49c8/html5/thumbnails/26.jpg)
https://ail.google.com/mail/u/0/?ui=2&ik=ad9ae58f41&vi
ew=att&th=1331a70983344a32&attid=0.1&disp=thd&re
alattid=f_gtxto6mk0&zw
Selected Customers
![Page 27: Application Development with Apache Cassandra as a Service](https://reader034.fdocuments.in/reader034/viewer/2022052505/555c3b6ed8b42a2c068b49c8/html5/thumbnails/27.jpg)
WSO2 engagement model
• QuickStart -
• Development Support
• Development Services
• Production Support
• Turnkey Solutions
• WSO2 Mobile Services Solution
• WSO2 FIX Gateway Solution
• WSO2 SAP Gateway Solution