CockroachDB es un sistema de gestión de bases de datos SQL distribuidas de código abierto desarrollado por Cockroach Labs. [ 2 ] [ 3 ]
La funcionalidad relacional se basa en un almacén de clave-valor distribuido, transaccional y consistente que puede sobrevivir a diversos fallos de infraestructura subyacentes y es compatible con PostgreSQL , lo que significa que los usuarios pueden aprovechar una amplia gama de controladores y herramientas del extenso ecosistema de PostgreSQL. Un clúster de CockroachDB consta de varios nodos que pueden distribuirse en dominios de fallos como centros de datos o regiones de nube pública. Un clúster puede escalarse tanto horizontalmente [ 4 ] (añadiendo nodos) como verticalmente (aumentando los recursos asignados a los nodos existentes). Puede proporcionar altos niveles de resiliencia y disponibilidad y puede ejecutarse en diversos entornos como hardware físico, máquinas virtuales , contenedores y Kubernetes , tanto en centros de datos privados como en la nube. CockroachDB recibe su nombre de las cucarachas, ya que son conocidas por su resistencia a los desastres. [ 5 ]
Historia
Cockroach Labs fue fundada en 2015 por los exempleados de Google Spencer Kimball , Peter Mattis y Ben Darnell . Kimball y Mattis habían sido miembros clave del equipo del Sistema de Archivos de Google , [ 6 ] mientras que Darnell fue un miembro clave del equipo de Google Reader . [ 7 ]
Mientras trabajaban en Google, los tres habían utilizado Bigtable, propiedad de Google, y su sucesor, Spanner . [ 3 ] Tras dejar Google, quisieron diseñar y construir algo similar. [ 8 ] Spencer Kimball escribió la primera versión del diseño en enero de 2014 y comenzó el proyecto de código abierto en GitHub en febrero de 2014, permitiendo el acceso y las contribuciones externas. [ 9 ]
El desarrollo en GitHub atrajo contribuciones sustanciales, lo que le valió al proyecto el premio al Novato del Año de Código Abierto otorgado por Black Duck Software. [ 10 ]
Los cofundadores apoyaron el proyecto con conferencias, actividades de networking, encuentros y rondas de financiación.
En junio de 2019, Cockroach Labs anunció que CockroachDB cambiaría su licencia de la licencia de software libre Apache License 2.0 a su licencia de código fuente disponible , conocida como Business Source License (BuSL) , que prohíbe “ofrecer una versión comercial de CockroachDB como servicio sin comprar una licencia”, aunque seguirá siendo gratuita para uso de la comunidad. [ 11 ] [ 12 ]
Características
CockroachDB almacena copias de datos en múltiples ubicaciones para brindar acceso rápido. [ 8 ] [ 13 ]
Se describe como un almacén de datos transaccional , escalable y con replicación consistente . [ 14 ] Una sola instancia puede escalar desde una sola computadora portátil hasta miles de servidores. [ 3 ]
CockroachDB está diseñado para ejecutarse en la nube y tiene una alta tolerancia a fallos . Según medios de comunicación populares, se describe como "casi imposible" de derribar. [ 15 ] [ 16 ] [ 13 ]
CockroachDB tiene un modelo de consistencia diseñado para asemejarse lo más posible a las capacidades de Google Spanner , pero sin depender de hardware especializado para la sincronización horaria. "Sin lecturas obsoletas" es la forma más sencilla de describir este modelo de consistencia, que ha optado deliberadamente por la compensación de tener historiales de transacciones no linealizables. [ 17 ] Se garantiza la consistencia externa de las transacciones que contienen claves superpuestas. Por lo tanto, en la práctica, es muy improbable que los sistemas que se basan en CockroachDB reproduzcan problemas de consistencia, ya que los nodos con grandes variaciones en la desviación del reloj pueden eliminarse de los clústeres, las aplicaciones pueden confiar en la consistencia externa proporcionada por las claves superpuestas y la escritura en el mismo rango, y las escrituras propagan los cambios a las cachés de marcas de tiempo de los seguidores. [ 18 ]
Véase también
Referencias
- ↑ "Preguntas frecuentes sobre licencias" .
- ↑ Ovide, Shira (4 de junio de 2015). "CockroachDB se lleva 6,3 millones de dólares para solucionar las deficiencias de su base de datos" . The Wall Street Journal . Consultado el 22 de febrero de 2020 .
- 1 2 3 Finley, Klint (4 de junio de 2015). "Ex empleados de Google reciben millones para ayudarte a construir el próximo Google" . Wired . Recuperado el 22 de febrero de 2020 .
- ↑ Heller, Martin (4 de enero de 2018). "Reseña de CockroachDB: Una base de datos SQL escalable diseñada para la supervivencia" . InfoWorld . Recuperado el 19 de marzo de 2024 .
- ↑ Pina, Eduardo; Sá, Filipe; Bernardino, Jorge (enero de 2023). "Evaluación de bases de datos NewSQL: CockroachDB, MariaDB Xpand y VoltDB" . Future Internet . 15 (1): 10. doi : 10.3390/fi15010010 . hdl : 10316/114892 . ISSN 1999-5903 .
- ↑ Metz, Cade (10 de julio de 2012). "Google rehace su imperio en línea con 'Coloso'"" . Wired . Consultado el 22 de febrero de 2020 .
- ↑ Wauters, Robin (28 de julio de 2009). "¡Robo! Ben Darnell deja el equipo de Google Reader y se une a FriendFeed" . TechCrunch . Consultado el 22 de febrero de 2020 .
- 1 2 Novet, Jordan (4 de junio de 2015). "La última inversión de Peter Fenton es una startup de bases de datos llamada Cockroach" . VentureBeat . Recuperado el 22 de febrero de 2020 .
- ↑ Ewbank, Kay (9 de junio de 2015). "CockroachDB lanzado" . I Programmer . Recuperado el 22 de febrero de 2020 .
- ↑ Finleey, Klint (28 de enero de 2015). "Estos son los proyectos de código abierto más populares del momento" . Wired . Consultado el 22 de febrero de 2020 .
- ↑ Mattis, Peter; Darnell, Ben; Kimball, Spencer (4 de junio de 2019). "Por qué estamos volviendo a licenciar CockroachDB" . CockroachLabs.com . Recuperado el 22 de febrero de 2020 .
- ↑ "Licencia de la comunidad de CockroachDB" . Cockroach Labs . Consultado el 28 de julio de 2020 .
- 1 2 Babcock, Charles (4 de junio de 2015). "CockroachDB: la supervivencia definitiva de las bases de datos" . InformationWeek . Recuperado el 22 de febrero de 2020 .
- ↑ Darfler, Benjamin (29 de agosto de 2014). "CockroachDB: un almacén de datos transaccional, georreplicado y escalable" . InfoQ . Consultado el 22 de febrero de 2020 .
- ↑ Finley, Klint (22 de julio de 2014). "CockroachDB es el software en la nube resistente creado por ex empleados de Google" . Wired . Archivado del original el 14 de mayo de 2015. Consultado el 22 de febrero de 2020 .
- ↑ Finley, Klint (21 de julio de 2014). "A la vista de todos: Ex empleados de Google crean software en la nube casi imposible de derribar" . Wired . Consultado el 22 de febrero de 2020 .
- ↑ Matei, Andrei (24 de enero de 2019). "Modelo de consistencia de CockroachDB" .
- ↑ Cordell, Evan. "La única diferencia crucial entre Spanner y CockroachDB" .
Enlaces externos
- Sitio web oficial
- bases de datos en la nube
- computación distribuida
- NewSQL
- Almacenes de datos distribuidos
- Software que utiliza la licencia Business Source