"You should think about rows and columns not being arranged like the classic spreadsheet model, but rather use a tag metaphor, that is, information is available under a specific tag."
"Every column value, or cell, either is timestamped implicitly by the system or can be set explicitly by the user. This can be used, for example, to save multiple versions of a value as it changes over time. Different versions of a cell are stored in decreasing time-stamp order, allowing you to read "
"There is also the option to run client-supplied code in the address space of the server.The server-side framework to support this is called coprocessors."
"The data is stored in store files, called HFiles, which are persistent and ordered immut-able maps from keys to values. Internally, the files are sequences of blocks with a block index stored at the end."
"There are three major components to HBase: the client library, one master server, and many region servers."
"A more critical feature is the so-called delayed allocation, and it is recommended that you turn it off for Hadoop and HBase use. Delayed allocation keeps the data in memory and reserves the required number of blocks until the data is finally flushed to disk."
"HBase implicitly assumes that data is stored in a reliable manner by the filesystem. It has no added means to replicate data or even maintain copies of its own storage files. This functionality must be provided by the lower-level system."
"You could implement most of the filter functionality in your client code as well, but you would have to transfer much more data—something you need to avoid at scale."