Skip to main content

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

  • May 30, 2013
  • 1 reply
  • 8 views

Vincent_1
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?

1 reply

Forum|alt.badge.img+2
  • Participating Frequently
  • May 30, 2013
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.