Weiwei, in addition to what Andy said you have control over what is used in the block cache in your queries. See <Get>.setCacheBlocks and <Scan>.setCacheBlocks. These are true by default.
Thanks Andy for the explanation, the Hbase book doesn¹t explain this enough. I'll submit a patch. On 7/8/11 9:40 PM, "Andrew Purtell" <[email protected]> wrote: >IN_MEMORY means that HBase will try really hard to keep all of the data >blocks for a table in the block cache. Block cache is expired on a LRU >basis in three priority bands. Blocks for IN_MEMORY tables have the >highest priority. They will be the last to be evicted. > >It does not mean data is never written to disk -- all data in HBase is >backed by files in HDFS. > >It does not mean the table data won't be evicted if the table becomes >very large and it cannot all fit in the available configured block cache. > >Best regards, > > > - Andy > >Problems worthy of attack prove their worth by hitting back. - Piet Hein >(via Tom White) > > >----- Original Message ----- >> From: Weiwei Xiong <[email protected]> >> To: [email protected] >> Cc: >> Sent: Friday, July 8, 2011 6:04 PM >> Subject: IN_MEMORY setting >> >> Hi all, >> >> Is there anyway to always keep a table in memory? Will IN_MEMORY setting >> server this purpose? >> >> Thanks, >> ww >>
