open source - office - ¿Hay una tienda en la nube probada de negocios/Key=> Value Database?(Fuente abierta)
manual de excel 2010 (12)
He estado buscando soluciones de computación / almacenamiento en la nube durante mucho tiempo (inspiradas en Google Bigtable). Pero no puedo encontrar una solución fácil de usar y lista para el negocio.
Estoy buscando un Key => Value simple, tolerante a fallas, distribuido como SimpleDB de Amazon.
He visto cosas como:
- El proyecto CouchDB : base de datos simple y distribuida, tolerante a errores. Pero solo entiende JSON. Sin conectores XML, etc.
- Eucalyptus : Nice Amazon EC2 interfaces. Estándares abiertos y XML. ¿Pero menos distribuido y menos tolerante a las fallas? También hay muchas entradas abiertas con problemas XEN / VMWare.
- Cloudstore / Kosmosfs : agradable distribuido, tolerante a fallas fs. Pero es difícil de configurar. ¿Hay algún conector java?
- Apache Hadoop : buen sistema que tiene mucho más que capacidades para almacenar datos. Utiliza su propio sistema de archivos distribuidos Hadoop y ha sido probado en clusters con 2000 nodos.
- * Amazon SimpleDB : ¡No se puede encontrar una alternativa de código abierto! Es un sistema bueno pero caro para grandes cantidades de datos. Y eres adicto a Amazon.
¿Hay otras soluciones mejores por ahí? ¿Cuál es el mejor para elegir? ¿Cuál ofrece la menor cantidad de SOF (Singe Point of Failure)?
¿Qué tal memcached ?
El blog High Scalability cubre este problema; si hay una solución de código abierto para lo que estás buscando, seguramente estará allí.
Otros proyectos incluyen:
- Proyecto Voldemort
- Lightcloud - Base de datos de valores-clave
- Ringo: almacenamiento clave-valor distribuido para datos inmutables
Otra buena lista: Anti-RDBMS: una lista de tiendas distribuidas de valores-clave
Buena compilación de herramientas de almacenamiento para su pregunta:
http://www.metabrew.com/article/anti-rdbms-a-list-of-distributed-key-value-stores/
En lugar de buscar algo inspirado en la gran tabla de Google, ¿por qué no usar solo bigtable directamente? Podría escribir un front-end en Google App-Engine.
Es posible que desee echarle un vistazo a esto (utilizando MySQL como almacén de clave-valor):
Es posible que desee ver Hypertable que está modelado después de la tabla grande de Google.
Si quieres algo como Bigtable, no puedes ir más allá de HBase o Hypertable ; ambos son clones de Bigtable de código abierto. Una cosa a tener en cuenta, sin embargo, es si sus requisitos realmente son "lo suficientemente grandes" para Bigtable. Se amplía a miles de servidores de tabletas, y como tal, tiene un poco de infraestructura debajo para permitir eso (por ejemplo, manejar la expectativa de fallas normales de nodos).
Si no anticipas crecer, al menos, decenas de servidores de tabletas, tal vez quieras considerar una de las alternativas propuestas: no puedes vencer a BerkelyDb por simplicidad, ni a MySQL por la ubicuidad. Si todo lo que necesita es un almacén de datos clave / valor, puede colocar un envoltorio ''dict'' simple alrededor de la interfaz de su base de datos, y cambiar su back-end si lo supera.
Usa el CouchDB
- ¿Qué pasa con JSON?
- JSON a XML es trivial
Uso la API de Google, api, es Xml, gratuita, documentada, basada en la nube y tiene conectores para muchos idiomas. Creo que completará su factura si también desea un alojamiento gratuito.
Ahora, si quiere alojar sus propios servidores, el gabinete de Tokio es su respuesta, su clave => basada en valores, utiliza archivos planos, y es la base de datos más rápida que existe en este momento (muy simple comparada con Oracle, pero increíblemente buena para almacenar y acceder datos, aproximadamente 1 millón de registros por segundo, con aproximadamente 10 bytes de sobrecarga (dependiendo del motor de almacenamiento)). En cuanto a negocios, TokyoCabinet es el corazón de un servicio llamado Mixi, que es el equivalente de Facebook + MyPage de Japón, con varios millones de usuarios pesados, por lo que en realidad está muy probado en la batalla.
Wikipedia dice que Yahoo contribuye a Hadoop y lo usa en producción ( artículo vinculado desde wikipedia ). Entonces, yo diría que cuenta para la eficacia empresarial, aunque no estoy seguro de si cuenta como una base de datos de valores K / V.
No está en su lista el sistema de Friendfeed de usar MySQL como un simple almacén de claves / valores sin esquema .
Es difícil para mí entender tus prioridades. CouchDB es simple, tolerante a fallas y distribuido, pero de alguna manera lo excluyes porque no tiene XML. ¿Los conectores XML y Java son un requisito no especificado?
(De todos modos, CouchDB debería de hecho ser excluido porque es joven, su API no es estable y no es una tienda de valores clave).
El gabinete de Tokio también ha recibido cierta atención, ya que admite esquemas de tablas, pares de valores clave y tablas hash. Utiliza Lua como una plataforma de scripts incorporada y usa HTTP como protocolo de comunicación. Aquí hay una gran demostración .
Cloudera es una compañía que comercializa Apache Hadoop, con algún valor agregado, por supuesto, como productos, configuración, capacitación y servicios de soporte.
MongoDB es otra opción que es muy similar a CouchDB, pero usa lenguaje de consulta muy similar a SQL en lugar de map / reduce en JavaScript. También es compatible con índices, perfiles de consultas, replicación y almacenamiento de datos binarios.
Tiene una gran cantidad de documentación que puede ser abrumadora desde el primer momento, por lo que sugiero comenzar con la visita del desarrollador