En realidad, no creo que haya tantas opciones realistas. En orden de preferencia, mis selecciones serían:
- Amazon S3. Cumple con todos sus requisitos, y sus cualidades opcionales también. Tiene un muy buen historial de tiempo de actividad y soporte. No es interno; pero ¿realmente no es un requisito con el que podría trabajar, f.x. usar acceso VPN o simplemente HTTPS... S3 realmente sería mi primera opción, si la latencia WAN y los precios de Amazon funcionan para usted. Y si el precio no funciona para usted, bueno, dudo que una solución DYI realmente termine siendo significativamente menos costosa...
- MogileFS parece ajustarse perfectamente a sus requisitos. No hay mucha actividad en torno a MogileFS, pero eso se debe principalmente a que funciona según lo previsto para sus (relativamente pocos) usuarios.
- Lustre tiene una tecnología realmente excelente detrás, es un sistema de archivos POSIX local regular (si eso es beneficioso para usted) y se ha actualizado continuamente a lo largo de los años. La gran pregunta es si toda la fusión entre Sun y Oracle afectará a Lustre. A largo plazo, si Sun juega bien sus cartas, tener ZFS y Lustre bajo un mismo techo podría conducir a cosas muy buenas... En este momento, creo que Luster se usa principalmente en iniciativas académicas y comerciales de HPC y no en aplicaciones de Internet. esto puede no ser cierto, pero si a Luster le está yendo bien en las aplicaciones de Internet, entonces están seguros de que no están promocionando bien ese hecho...
El sistema de archivos distribuidos de Hadoop (HDFS) no coincidiría con sus requisitos en mi humilde opinión. HDFS es increíble, pero su enfoque similar a una gran tabla significa que es menos accesible que los sistemas de archivos anteriores. Por supuesto, si realmente está buscando una escalabilidad masiva y una perspectiva a largo plazo, entonces HDFS puede ser lo correcto, con Yahoo, Facebook y otros invirtiendo en el crecimiento de Hadoop.
Un comentario, la mayoría de los sistemas anteriores copian todo el archivo en 2 o 3 nodos para lograr la redundancia. Esto ocupa muchísimo más espacio que los esquemas de codificación de paridad/RAID, pero es manejable a escala y parece ser la solución que todos han tomado. Entonces no obtendrás el 75% de eficiencia que mencionas...
Si fuera yo, estaría usando GlusterFS. La versión actual es bastante sólida y conozco personas en algunas instalaciones muy grandes tanto en el espacio de HPC como de Internet que confían en ella en sus sistemas de producción. Básicamente, puede adaptarlo a sus necesidades colocando los componentes a medida que los necesita. A diferencia de Lustre, no hay servidores de metadatos dedicados, por lo que se minimizan los puntos centrales de falla y es más fácil escalar la configuración.
Desafortunadamente, no creo que haya una manera fácil de cumplir con los criterios del 75 % sin tirar el rendimiento por el desagüe.
Se ejecuta en hardware básico, sin embargo, el rendimiento realmente brilla cuando se usa la interconexión Infiniband. Afortunadamente, el precio de IB es bastante bajo en estos días.
Es posible que desee consultar a los muchachos de Scalable Informatics y sus productos Jackrabbit como una solución. Admiten GlusterFS en su hardware y el precio de su solución sin duda rivaliza con el costo de armar algo desde cero.