Let me determine if this:

$column_family->get('row_key', $columns=array('name1', 'name2'));

Is faster then your more flexible get now i use:


Method 1 is harder to implement obviously and can it give less load/bandwith/delay?

Cassandra isn't mysql therefore it can come as no real surprise that several things will vary there. :)

Within this situation, Cassandra's sparse-row storage model implies that for small amounts of posts the entire-row version is going to be faster because Cassandra does not have to deserialize and appearance its row-level column records.

Obviously for bigger amounts of posts the additional work of deserializing a lot more than you'll need will dominate again.

Main point here: worrying relating to this is nearly certainly premature optimisation. When it is not, test.

First the first is faster, especially if you use large tables which contain lots of posts.

Even you've just two posts known as name1 and name2, indicating their names should avoid removing column names from table structure on MySQL side. So it ought to be faster than using * selector.

However, test out your results using microtime() in PHP against large tables and you will see what I am speaking about. Obviously, for those who have 20+ posts in table and you need to extract all of them it's simpler to place * than listing all individuals column-names but when it comes to speed, listing posts is bit faster.

The easiest method to read this conclusion, would be to test drive it on your own.