What specific compression techniques does QD employ?
• Row packing. Since a QDB is read-only, QD does not need to reserve extra space for updates or deletions, or store predicate information for each block of row data. QD compresses each column based on the cardinality of the column’s data (how many different entries appear in the column) and then it compresses each row using repetitive bit pattern techniques. • Floor values. In a business database the range of values associated with a particular row tends to be fairly narrow, although the numbers themselves may be large. QD also uses floors (essentially smaller numbers to represent larger numbers) for date and time columns; these represent actual numerical entries in a more compressed form. • Tokenization. When a database is blindly compressed with a single algorithm, the result can be a larger database. In most business applications, many columns will have a moderate number of values repeated many times. QD can create a token representing that repetition and then compress the column mo