The Cache: Technology Expert's Forum
 
*
Welcome, Guest. Please login or register. September 18, 2019, 08:11:36 PM

Login with username, password and session length


Pages: [1] 2 3 4
  Print  
Author Topic: noSQL FTW!  (Read 16566 times)
vsloathe
vim ftw!
Global Moderator
Lifer
*****
Offline Offline

Posts: 1669



View Profile
« on: April 06, 2010, 06:12:10 AM »

Been playing around with this:

http://cassandra.apache.org/

for a project at work. I'm liking. Facebook has put Cassandra in a number of non-mission-critical pathways so far.

tl;dr for those unfamiliar with noSQL methodology or some of the competing products advancing it: relational databases are optimized for reads, most of the web runs heavy on writes. Using a non-relational storage mechanism is a great way to ensure that no matter what kind of performance or scalability issues you're having, you can always just throw more hardware at the problem and it will fix itself.
Logged

hai
kurdt
Lifer
*****
Offline Offline

Posts: 1153


paha arkkitehti


View Profile
« Reply #1 on: April 06, 2010, 06:44:36 AM »

And Casandra is only one of many new dbs that will kick traditional sql dbs to the balls in so many ways. You should check Redis.. it pretty much kills everything else if you are looking for speed and are not ready to pay big bucks.
Logged

I met god and he had nothing to say to me.
vsloathe
vim ftw!
Global Moderator
Lifer
*****
Offline Offline

Posts: 1669



View Profile
« Reply #2 on: April 06, 2010, 07:32:21 AM »

MongoDB and hBase are a couple others we've been checking out.

Obviously you know I wouldn't install anything on trusting clients' machines whose source I can't examine.
Logged

hai
kurdt
Lifer
*****
Offline Offline

Posts: 1153


paha arkkitehti


View Profile
« Reply #3 on: April 06, 2010, 07:59:56 AM »

MongoDB and hBase are a couple others we've been checking out.

Obviously you know I wouldn't install anything on trusting clients' machines whose source I can't examine.
Luckily almost all the new ones are open-source projects. I was interested in HBase but that dried a bit because so many people said that it's too slow for production usage. I read somewhere that HBase's newest version is suppose to be fast enough but I can't say for sure. There's also Hypertable that's been getting good publicity but my personal choice at the moment is MongoDB. I'm hearing good things about Cassandra but a part of me doesn't want to touch it because it's from idea/privacy thief Zuckerberg's Facebook.

Have you checked Voldemort? It's db from LinkedIn guys.
Logged

I met god and he had nothing to say to me.
isthisthingon
Global Moderator
Lifer
*****
Offline Offline

Posts: 2879



View Profile
« Reply #4 on: April 06, 2010, 10:32:42 AM »

Mongo vs Couch: http://www.mongodb.org/display/DOCS/Comparing+Mongo+DB+and+Couch+DB

@Voldemort - haven't heard anything but I'm looking forward to user feedback on the new rebalancing feature: http://wiki.github.com/voldemort/voldemort/voldemort-rebalancing  Nice idea for continuous integration support - on paper.

EDIT: kurdt - I've heard many have moved from CouchDB to MongoDB for performance reasons, as you mentioned in a previous post.
« Last Edit: April 06, 2010, 10:35:03 AM by isthisthingon » Logged

I would love to change the world, but they won't give me the source code.
kurdt
Lifer
*****
Offline Offline

Posts: 1153


paha arkkitehti


View Profile
« Reply #5 on: April 06, 2010, 12:01:17 PM »

EDIT: kurdt - I've heard many have moved from CouchDB to MongoDB for performance reasons, as you mentioned in a previous post.
Yeah.. my new favority combo is Redis & MongoDB Smiley I can't think many things or apps that I can't pull off with those. I have to confess that relational databases are pretty much dead to me. I know it's a stupid thing to say but I just can't see any good enough benefit to lock myself into schemes again.
Logged

I met god and he had nothing to say to me.
isthisthingon
Global Moderator
Lifer
*****
Offline Offline

Posts: 2879



View Profile
« Reply #6 on: April 06, 2010, 12:47:33 PM »

>I know it's a stupid thing to say

 Undecided  That's not a stupid thing to say imo.  Of course I've felt like a total tard for years now clamoring on about clouds.  I could have been wrong or still could be totally wrong when "Stratospheric Virtuality" turns cloud computing into the punch cards of our times.

But NoSQL combined with current cost trends makes this prediction for you.  I remember mainframe loyalists thinking me ignorant for supposing cheap PC farms with an n-tier approach to development would eventually scale outside of their performance bubble   Shocked
Logged

I would love to change the world, but they won't give me the source code.
nop_90
Global Moderator
Lifer
*****
Offline Offline

Posts: 2203


View Profile
« Reply #7 on: April 06, 2010, 02:23:53 PM »

Undecided  That's not a stupid thing to say imo.  Of course I've felt like a total tard for years now clamoring on about clouds.  I could have been wrong or still could be totally wrong when "Stratospheric Virtuality" turns cloud computing into the punch cards of our times.

I have been yapping about ZODB which powers zope for ages. Granted ZODB pickles python objects directly, but same concept and zope has been using it for 10+ years.
ZODB speed wise knocks the socks off mysql and you do not have to worry about the table shit etc.

So i know how u feel  ROFLMAO
Logged
vsloathe
vim ftw!
Global Moderator
Lifer
*****
Offline Offline

Posts: 1669



View Profile
« Reply #8 on: April 07, 2010, 06:37:08 AM »

Mongo's sharding/replication is not as mature as Cassandra's. I think we're going with Cassandra because it's been developed from the ground up with ease of scalability in mind.
Logged

hai
rcjordan
Lifer
*****
Offline Offline

Posts: 882


View Profile
« Reply #9 on: April 07, 2010, 07:37:47 AM »

I know less-than-jack about large-scale db's, but I did happen to note that reddit flipped over to casandra back in mid-March. Speed problems pushed them to make the move.

http://blog.reddit.com/2010/03/she-who-entangles-men.html
Logged
vsloathe
vim ftw!
Global Moderator
Lifer
*****
Offline Offline

Posts: 1669



View Profile
« Reply #10 on: April 07, 2010, 09:47:33 AM »

Cassandra is BLINDINGLY faster than any RDB. Not hard to do mind you, and there are applications where an RDB is a better idea. For us, importing around 8 million rows per day of tabular data, it was a no-brainer.
Logged

hai
nutballs
Administrator
Lifer
*****
Offline Offline

Posts: 5627


Back in my day we had 9 planets


View Profile
« Reply #11 on: April 07, 2010, 10:03:50 AM »

can you give me a very brief rundown of what makes it different from mysql?

Is it just that these other DBs are faster because they have less features? (really in the end that is often the case with most software)

any standout stuff?
Logged

I could eat a bowl of Alphabet Soup and shit a better argument than that.
isthisthingon
Global Moderator
Lifer
*****
Offline Offline

Posts: 2879



View Profile
« Reply #12 on: April 07, 2010, 10:29:51 AM »

MySQL is an RDBMS and these others are NoSQL technologies.  Cassandra high level architecture: http://www.cs.cornell.edu/projects/ladis2009/papers/lakshman-ladis2009.pdf.

The highest level answer I'd give is you are exchanging immediate efficiency, accuracy and performance (RDB) for massive scalability and a far more simplistic approach to interacting with your data (noSQL).  Cassandra, for example, has only 3 API calls: insert/get/delete.

A distributed, multi-dimensional map indexed by a key Smiley
Logged

I would love to change the world, but they won't give me the source code.
vsloathe
vim ftw!
Global Moderator
Lifer
*****
Offline Offline

Posts: 1669



View Profile
« Reply #13 on: April 07, 2010, 11:14:34 AM »

can you give me a very brief rundown of what makes it different from mysql?

Is it just that these other DBs are faster because they have less features? (really in the end that is often the case with most software)

any standout stuff?

They aren't databases. At least not as you'd think of them. There are no tables, no pre-defined structure (well, with Cassandra there is but it's not implicit to the tech). They're just key-value pair stores. Really, really fast ones.
Logged

hai
kurdt
Lifer
*****
Offline Offline

Posts: 1153


paha arkkitehti


View Profile
« Reply #14 on: April 07, 2010, 11:55:32 AM »

If you go all the way to key/value databases it takes some time to get used to the mindset. I'm not sure if this applies to Cassandra (it does for Redis) but you can't search with values so only thing you got is the key. You have to know the exact key to get the value behind it. So that means that you can't do something like "timestamp:project_id":"523" because unless you know the exact timestamp, you're not going to find value 523. You have to forget the mindset of getting exact values with exact queries and step into the world of getting a shitload of values and filtering with code. But once you get used to think in key/value pairs, there's very few things that you can't translate from SQL world - it's just a matter of thinking data different way.
Logged

I met god and he had nothing to say to me.
Pages: [1] 2 3 4
  Print  
 
Jump to:  

Perkiset's Place Home   Best of The Cache   phpMyIDE: MySQL Stored Procedures, Functions & Triggers
Politics @ Perkiset's   Pinkhat's Perspective   
cache
mart
coder
programmers
ajax
php
javascript
Powered by MySQL Powered by PHP Powered by SMF 1.1.2 | SMF © 2006-2007, Simple Machines LLC
Seo4Smf v0.2 © Webmaster's Talks


Valid XHTML 1.0! Valid CSS!