What is Column Storage in Hana & how it is faster?

Column store is divided into three parts: i) Main ii) L2 Delta iii) L1 Delta/cache.

  • Persisted data are saved in Main Memory.
  • Buffer and transaction changes are kept in L2 Delta and High Inserts / Deletes / Updates etc in L1 Delta.

L1-delta
– accepts all incoming data requests
– stores records in row format (write-optimized)
• fast insert and delete
• fast field update
• fast record projection
– no data compression
– holds between 10,000 – 100,000 rows per single-node

L2-delta
– the 2nd stage of the record life cycle
– stores records in column format
– dictionary encoding for better memory usage
– unsorted dictionary
• requiring secondary index structures to optimally
support point query access patterns
– well suited to store up to 10 million rows

Main
– final data format
– stores records in column format
– highest compression rate
• sorted dictionary
• positions in dictionary are stored in a well organised bit-packed manner
• the dictionary section is also compressed

Hence smart innovation of the L1, L2 & Main memory or simply the combination of all three, make data read and write, really fast and effective.

Advertisement

Leave a Comment