title: How to store a huge hash table in RAM and share it between different applications?
body: <p>The data contains information like billions of ID-scores pairs. To quickly access these paired information, I plan to use the hash-table container since its time complexity of search is O(1). Considering the the raw data is around 80G, I don't want to load the data into RAM every time when I need to run search application. What I want to do is to generate the hash-table once and then store it in RAM with persistence of filesystem lifetime (the expense of RAM is not a criteria), and search it with different applications.</p>
  
  <p>Based on my limited understanding, I could use "Memory Mapped Files" (boost C++ libraries). But I have questions:</p>
  
  <p>1) Is it possible to keep the hash-table data structure when write it to the mapped file?
  2) How much time it will cost to map the existed file to RAM?</p>
  
  <p>Any answers/comments/suggestions are most welcomed!</p>
  
  <p>Thanks,</p>