Your SlideShare is downloading. ×
Modern Cassandra for Developers
Upcoming SlideShare
Loading in...5
×

Thanks for flagging this SlideShare!

Oops! An error has occurred.

×
Saving this for later? Get the SlideShare app to save on your phone or tablet. Read anywhere, anytime – even offline.
Text the download link to your phone
Standard text messaging rates apply

Modern Cassandra for Developers

691

Published on

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
691
On Slideshare
0
From Embeds
0
Number of Embeds
2
Actions
Shares
0
Downloads
10
Comments
0
Likes
0
Embeds 0
No embeds

Report content
Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
No notes for slide

Transcript

  • 1. Modern Cassandra for Developers Jeremy Hanna Support Engineer ©2013 DataStax Confidential. Do not distribute without consent.
  • 2. Solid Design •Massive scalability •Multi-datacenter •High Performance •Reliability/Availability •no SPOF, no special roles
  • 3. Ease of Use?
  • 4. Approachable •CQL3 •Cassandra native drivers •Native paging •Tracing •DevCenter •Atomic batches •Lightweight transactions •Triggers
  • 5. CQL3 •Basic auth, similar to mysql • CREATE • GRANT USER bombadil WITH PASSWORD 'goldberry4ever' SUPERUSER; ALTER ON KEYSPACE shire TO gandalf; •Native drivers •Support for collections (list, map, set) •Hadoop support •Tracing •Native paging (2.0)
  • 6. CQL3 examples CREATE KEYSPACE shire WITH REPLICATION = {'class': 'NetworkTopologyStrategy', 'eu' : 3, 'us-east' : 2}; SELECT * FROM emp WHERE empID IN (130,104) ORDER BY deptID DESC; INSERT INTO excelsior.clicks (userid, url, date, name)
 VALUES (
 3715e600-2eb0-11e2-81c1-0800200c9a66,
 ‘http://cassandra.apache.org',
 ‘2013-10-09', ‘Mary')
 USING TTL 86400; UPDATE users SET email = ‘charlie@wonka.com’ WHERE login = ‘cbucket64' IF email = ‘cbucket@wonka.com’
  • 7. Native drivers •Asynchronous •allows multiple concurrent queries per connection •Server notifications •Made for CQL3 •Java, C#, Python, others in community
  • 8. DevCenter
  • 9. Request Tracing •Interactively using cqlsh •Programmatically using the Java driver •Probabilistic tracing
  • 10. Various other goodies •Atomic batches for grouped updates •Lightweight transactions •Example: username creation •Heavy operation (4 round-trips) •Triggers (warning experimental in 2.0) •CREATE TRIGGER <name> ON <table> USING <classname>;
  • 11. Questions? •Jeremy Hanna •Support engineer at DataStax •@jeromatron on twitter and #cassandra irc •See also •https://github.com/datastax/java-driver •http://www.datastax.com/what-we-offer/products-services/devcenter •http://www.datastax.com/docs •http://www.datastax.com/dev/blog

×