title: .Net 4.0 Memory-Mapped Files verses RDMS Storage
body: <p>I'm interested in people's thoughts comparing storing data in a traditional SQL based Database or utilising a <a href="http://msdn.microsoft.com/en-us/library/dd997372(VS.100).aspx" rel="nofollow noreferrer">Memory-Mapped File</a> such as the one in the new .Net 4.0 runtime.  The data in question would be arrays of simple structures.</p>
  
  <p>Obvious pros and cons:</p>
  
  <p><strong>SQL Database Pros</strong></p>
  
  <ol>
  <li>Adhoc query support</li>
  <li>SQL Management Tools</li>
  <li>Schema changes (adding more columns and setting default values)</li>
  </ol>
  
  <p><strong>Memory-Mapped Pros</strong></p>
  
  <ol start="4">
  <li>Lighter overhead? (this is an assumption on my part)</li>
  <li>Shareable between process threads</li>
  <li>Any others?</li>
  </ol>
  
  <p>Is it worth it for performance gains?</p>