how can vertica know the position of a row in each columns

for example, we select a row from a table. how can vertica know the position of the row? is there a rowid in each columns?


  • Options
    Hi Vincent, No, there is not a row ID for each column. We have to be more clever than that if we want performance :-) If you would like to understand more about how we (and other column-oriented databases) work, I would encourage you to read the paper "C-Store: A Column-oriented DBMS": http://db.csail.mit.edu/projects/cstore/vldb.pdf Several of our founders were authors on this paper. That paper discusses how to join columns from the same projection, and a couple approaches to join columns from different projections. If you'd like to know more about Vertica's particular implementation, that's discussed in our recent VLDB paper: http://vldb.org/pvldb/vol5/p1790_andrewlamb_vldb2012.pdf There's a whole lot of detail in these two papers. If you'd like to know more than that, your best bet is to find us at an academic conference.

Leave a Comment

BoldItalicStrikethroughOrdered listUnordered list
Align leftAlign centerAlign rightToggle HTML viewToggle full pageToggle lights
Drop image/file