stringtranslate.com

ScyllaDB

ScyllaDB es un almacén de datos de columna ancha NoSQL distribuido de código abierto . Fue diseñado para ser compatible con Apache Cassandra y al mismo tiempo lograr rendimientos significativamente mayores y latencias más bajas. Admite los mismos protocolos que Cassandra ( CQL y Thrift ) y los mismos formatos de archivo (SSTable), pero es una implementación completamente reescrita, utilizando el lenguaje C++20 que reemplaza el Java de Cassandra y la biblioteca de programación asincrónica Seastar [1] que reemplaza la clásica. Técnicas de programación de Linux como hilos, memoria compartida y archivos mapeados. Además de implementar los protocolos de Cassandra, ScyllaDB también implementa la API de Amazon DynamoDB . [2]

ScyllaDB utiliza un diseño fragmentado en cada nodo, lo que significa que cada núcleo de CPU maneja un subconjunto diferente de datos. Los núcleos no comparten datos, sino que se comunican explícitamente cuando es necesario. Los autores de ScyllaDB afirman que este diseño permite a ScyllaDB lograr un rendimiento mucho mejor en máquinas NUMA SMP modernas y escalar muy bien con la cantidad de núcleos. Han medido hasta 2 millones de solicitudes por segundo en una sola máquina [3] y también afirman que un clúster ScyllaDB puede atender tantas solicitudes como un clúster Cassandra 10 veces su tamaño, y hacerlo con latencias más bajas. [4] Las pruebas independientes no siempre han podido confirmar tales mejoras de rendimiento de 10 veces y, a veces, midieron aceleraciones más pequeñas, como 2x. [5] Un punto de referencia de Samsung de 2017 observó una aceleración de 10 veces en máquinas de alta gama: el punto de referencia de Samsung informó que ScyllaDB superó a Cassandra en un grupo de máquinas de 24 núcleos por un margen de 10 a 37 veces, dependiendo de la carga de trabajo de YCSB . [6]

ScyllaDB está disponible localmente, en los principales proveedores de nube pública o como DBaaS (ScyllaDB Cloud).

Historia

ScyllaDB fue iniciado en diciembre de 2014 por la startup Cloudius Systems (más tarde rebautizada como ScyllaDB Inc.), anteriormente conocida por haber creado OSv . ScyllaDB se lanzó como código abierto en septiembre de 2015, [7] bajo la licencia AGPL . Los empleados de ScyllaDB Inc. siguen siendo los principales programadores detrás de Scylla, pero su desarrollo está abierto al público y utiliza repositorios públicos de GitHub y listas de correo públicas.

Referencias

  1. ^ Seastar es un marco C++ avanzado de código abierto para aplicaciones de servidor de alto rendimiento en hardware moderno.
  2. ^ ScyllaDB obtiene 25 millones de dólares para una API de código abierto compatible con Amazon DynamoDB
  3. ^ ScyllaDB: compatibilidad con Cassandra a 1,8 millones de solicitudes por nodo por Don Marti (entonces empleado de ScyllaDB Inc.), presentado en la Decimocuarta Exposición Anual de Linux del Sur de California , 24 de enero de 2016.
  4. ^ Comparativa del clúster YCSB, en el sitio web de ScyllaDB Inc., leído el 19 de febrero de 2017.
  5. ^ ScyllaDB vs Cassandra: ¿hacia un nuevo mito?, por Marc Alonso y Thomas Mouron en el sitio web octo.com, 15 de diciembre de 2015.
  6. ^ Rezaei, Arash; Guz, Zvika; Balakrishnan, Vijay (febrero de 2017), ScyllaDB y Samsung NVMe SSD aceleran el rendimiento de la base de datos NoSQL (PDF) , Samsung Semiconductor Inc., p. 12 , recuperado el 7 de febrero de 2019
  7. ^ "Cassandra reescrita en C++, diez veces más rápido", 22 de septiembre de 2015, barra punto

enlaces externos