Your SlideShare is downloading. ×
0
Modern Cassandra for Developers
Modern Cassandra for Developers
Modern Cassandra for Developers
Modern Cassandra for Developers
Modern Cassandra for Developers
Modern Cassandra for Developers
Modern Cassandra for Developers
Modern Cassandra for Developers
Modern Cassandra for Developers
Modern Cassandra for Developers
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

701

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
701
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

×