Live data from Hacker News

Columnar Storage

the-paper-trail.org

11–18 of 18 posts

Re: Columnar Storage

#12
post #6

possibly dumb question; what's the difference between columnar storage and a bunch of row-major tables with an id column, and one column of data?

grundprinzip's answer is good. I'd like to add a remark.

In database systems it is important to distinguish between the logical and physical models.

When you design a relational database, you focus on the correct logical model.

"People can have multiple phone numbers".

"Phone numbers belong to a single phone".

"Mobile phones are possessed by one person. Landlines can be shared".

And so on. You express this logical model to the database, most likely in SQL.

Eventually you notice that query X is slow. Your first step is to check that your logical design was sound, because poorly designed schemata are hard for query planners to reason correctly about.

Then you start doing things to the physical representation. You say stuff like:

"I look up by phone numbers a lot."

Or, in SQL terms, you add an index to a column.

Similarly, as this article pointed out, there are times when grouping data by column rather than row is advantageous. So then you tell the database to use a columnar store.

And so on. Modern RDBMSes all support the same major logical model descriptions; but they can vary widely on what physical directives you give.

Re: Columnar Storage

#13
post #6

possibly dumb question; what's the difference between columnar storage and a bunch of row-major tables with an id column, and one column of data?

The id column and row header (as depicted in the post) can significantly waste I/O bandwidth.

See the paper "Column-stores vs. row-stores: how different are they really?" in SIGMOD 2008 for performance comparisons between C-store and approaches of emulating column-store in row-store databases.

Re: Columnar Storage

#14
post #7

Earlier quoted context omitted.

Sounds like Impala could use your talent. You should talk with them.

Thanks for the pointer! Looking at Cloudera's jobs board, most tech-heavy work is in SF or Palo Alto. I live in San Mateo, convenient to both of those, but ... I'm likely leaving for the North Carolina RTP area soon.

Cloudera has an office in RTP (Raleigh) as well: http://www.cloudera.com/content/cloudera/en/about/contact-us...

Re: Columnar Storage

#15
Everything old is new again. I remember considering using Sybase IQ Multiplex (columnar engine) back in 2000 in my startup. Just like "nosql" was all the rage a few years ago, bringing memory of the Pick databases of yore.

Re: Columnar Storage

#16
The world is a bit bigger than the USA...I was a PhD candidate in a European DB research group that developed a columnar storage DB kernel (CWI in Amsterdam, MonetDB), and VectorWise came out of that group (http://www.monetdb.org, http://www.actian.com/products/vectorwise).

It's good to see this is finally catching on not only for BI and datamining tasks.

Post reply on HN