Array qué páginas a disco

¿Alguien sabe de una clase / biblioteca de matriz .NET que pague su contenido en el disco?

La idea es poder usarlo como una matriz normal, pero la clase usa menos RAM (para evitar excepciones fuera de la memoria con más de 2GB de datos). Idealmente la clase implementará uno de:

  • System.Collections.Generic.IList
  • System.Collection.IList

Por lo tanto, se insertará fácilmente en el código existente y, con suerte, funcionará con un DataGridView (aunque es posible que todavía deba implementar el “Modo Virtual”).

Cualquier idea muy apreciada!

No he encontrado nada de eso, pero supongo que es porque rara vez se necesita. Después de todo, una tabla de base de datos (en SQL Server o cualquier otra base de datos) es en esencia una matriz basada en disco.

Podría escribir un contenedor IList <> alrededor de una tabla de base de datos. Agregue algo de caché y tendrá una matriz perfecta basada en disco.

A menos que esté lidiando con registros de longitud fija (e incluso entonces haya problemas), se encontrará con muchos problemas al tratar 2GB de datos como una matriz que hace que muchos usos de matriz tengan un desempeño horrible.

  • Índice de()
  • InsertAt ()
  • RemoveAt ()
  • Ordenar()

¿Hay alguna razón para que una base de datos no funcione?

Encontré esta solución en VB de una matriz basada en archivos: http://www.vbforums.com/showthread.php?t=504649

Pero parece hacky … Sigo buscando otra implementación.