FoundationDB es una base de datos NoSQL distribuida de múltiples modelos de código abierto y gratuita desarrollada por Apple Inc. con una arquitectura de nada compartido . [3] El producto se diseñó en torno a una base de datos "central", con características adicionales suministradas en "capas". [4] La base de datos central expone un almacén de valores clave ordenado con transacciones . [5] Las transacciones pueden leer o escribir múltiples claves almacenadas en cualquier máquina en el clúster mientras son totalmente compatibles con las propiedades de ACID . [6] Las transacciones se utilizan para implementar una variedad de modelos de datos a través de capas.
Autor (es) original (es) |
|
---|---|
Desarrollador (es) | Apple Inc. |
Versión inicial | 4 de marzo de 2013 |
Lanzamiento estable | 6.2.28 [1] / 15 de noviembre de 2020 |
Repositorio | |
Escrito en | C ++ , C [2] |
Sistema operativo | |
Disponible en | inglés |
Tipo | NoSQL |
Licencia | Apache 2.0 |
Sitio web | www |
El programa FoundationDB Alpha comenzó en enero de 2012 y concluyó el 4 de marzo de 2013 con su lanzamiento público Beta. [7] Su versión 1.0 fue lanzada para disponibilidad general el 20 de agosto de 2013. El 24 de marzo de 2015 se informó que Apple había adquirido la empresa. [8] Un aviso en el sitio web de FoundationDB indicó que la empresa ha "evolucionado" su misión y ya no ofrecería descargas del software. [9]
El 19 de abril de 2018, Apple abrió el software y lo lanzó bajo la licencia Apache 2.0 . [10]
Principales características
Las principales características de FoundationDB incluyen las siguientes:
- Almacén de valores-clave ordenado
- Además de admitir lecturas y escrituras estándar basadas en claves, la propiedad de ordenación permite lecturas de rango que pueden escanear de manera eficiente grandes franjas de datos. [5]
- Actas
- El procesamiento de transacciones emplea control de simultaneidad de múltiples versiones para lecturas y simultaneidad optimista para escrituras. Las transacciones pueden abarcar varias claves almacenadas en varias máquinas.
- Propiedades ACID
- FoundationDB garantiza un aislamiento serializable y una gran durabilidad mediante el almacenamiento redundante en disco antes de que las transacciones se consideren comprometidas .
- Capas
- Las capas asignan nuevos modelos de datos , API y lenguajes de consulta al núcleo de FoundationDB. Emplean la capacidad de FoundationDB para actualizar varios elementos de datos en una sola transacción, lo que garantiza la coherencia. [4] Un ejemplo es su capa SQL . [11]
- Grupos de productos básicos
- FoundationDB está diseñado para su implementación en clústeres distribuidos de hardware básico que ejecutan Linux . [12]
- Replicación
- FoundationDB almacena cada dato en varias máquinas de acuerdo con un factor de replicación configurable. La replicación triple es el modo recomendado para clústeres de 5 o más máquinas.
- Escalabilidad
- FoundationDB está diseñado para admitir el escalado horizontal mediante la adición de máquinas a un clúster mientras maneja automáticamente la replicación y el particionamiento de datos.
- Sistemas soportados
- FoundationDB admite paquetes para Linux, Windows y macOS. La versión de Linux admite clústeres de producción, mientras que las versiones de Windows y macOS admiten la operación local con fines de desarrollo. También se admiten configuraciones en Amazon EC2 . [13]
- Enlaces de lenguaje de programación
- FoundationDB admite enlaces de lenguaje para Python, Go, Ruby, Node.js, Java, PHP y C, todos los cuales están disponibles con el producto. [13]
Limitaciones de diseño
El diseño de FoundationDB tiene varias limitaciones:
- Transacciones largas
- FoundationDB no admite transacciones que duran más de cinco segundos.
- Grandes transacciones
- El tamaño de la transacción no puede superar los 10 MB del total de claves y valores escritos.
- Grandes claves y valores
- Las claves no pueden superar los 10 kB de tamaño. Los valores no pueden superar los 100 kB de tamaño.
Historia
FoundationDB, con sede en Viena, VA, [13] fue fundada en 2009 por Nick Lavezzo, Dave Rosenthal y Dave Scherer, basándose en su experiencia en puestos ejecutivos y tecnológicos en su empresa anterior, Visual Sciences. [14]
En marzo de 2015, el sitio de la comunidad FoundationDB se actualizó para indicar que la empresa había cambiado de dirección y ya no ofrecería descargas de su producto. La empresa fue adquirida por Apple Inc. , que se confirmó el 25 de marzo de 2015. [15] [8]
El 19 de abril de 2018, Apple abrió el software y lo lanzó bajo la licencia Apache 2.0 . [10]
Ver también
- Transacción de base de datos
- Base de datos distribuida
- Transacción distribuida
- Lista de software anteriormente propietario
Referencias
- ^ "Lanzamientos de apple / foundationdb" . github.com . Consultado el 15 de noviembre de 2020 .
- ^ FoundationDB: el almacén de valor clave transaccional, distribuido y de código abierto - apple / foundationdb , 4 de enero de 2019 - a través de GitHub
- ^ Database House quiere que deje de usar ACID
- ^ a b FoundationDB lanza Beta de su base de datos 'NoSQL / YesACID'
- ^ a b "NoSQL compatible con ACID de FoundationDB disponible" . Archivado desde el original el 28 de junio de 2013 . Consultado el 11 de abril de 2013 .
- ^ El avance NoSQL de FoundationDB desafía el dominio de las bases de datos relacionales
- ^ "FoundationDB trae transacciones a NoSQL" . Archivado desde el original el 20 de abril de 2018 . Consultado el 11 de abril de 2013 .
- ^ a b Apple adquiere Durable Database Company FoundationDB
- ^ "Copia archivada" . Archivado desde el original el 25 de marzo de 2015 . Consultado el 19 de diciembre de 2019 .CS1 maint: copia archivada como título ( enlace )
- ^ a b "FoundationDB es de código abierto" . www.foundationdb.org . Consultado el 19 de abril de 2018 .
- ^ "La capa SQL de FoundationDB" . Archivado desde el original el 20 de agosto de 2013 . Consultado el 21 de agosto de 2013 .
- ^ FoundationdB lanza nueva plataforma de datos NoSQL
- ^ a b c FoundationDB tiene como objetivo consolidar NoSQL
- ^ SQL o NoSQL: FoundationDB lanza una base de datos 'Lo mejor de ambos mundos'
- ^ https://blogs.wsj.com/digits/2015/03/24/apple-acquires-foundationdb/?mod=WSJ_hps_sections_tech
enlaces externos
- Página web oficial
- FoundationDB en Twitter
- Blog de FoundationDB