ScyllaDB es un almacén de datos NoSQL distribuido de código abierto, reimplementado a partir de la popular base de datos Apache Cassandra. Lanzado hace solo cuatro años en 2015, Scylla ha promediado un crecimiento de popularidad de más del 220% año tras año según DB-Engines. Hemos escuchado mucho sobre esta creciente base de datos de la comunidad DBA y nuestros usuarios, y decidimos convertirnos en patrocinadores de Scylla Summit de este año para obtener más información sobre las tendencias de implementación de sus usuarios. En esta publicación, desglosamos las implementaciones en la nube de ScyllaDB frente a las implementaciones locales, los proveedores de nube más populares, las bases de datos SQL y NoSQL utilizadas con ScyllaDB, las tareas de administración que consumen más tiempo y por qué debería usar ScyllaDB frente a Cassandra.
- ScyllaDB contra Cassandra
- ScyllaDB Cloud frente a ScyllaDB local
- Proveedores de nube más populares para ScyllaDB
- Bases de datos más utilizadas con ScyllaDB
- Tareas de administración de ScyllaDB que consumen más tiempo
ScyllaDB frente a Cassandra:¿cuál es mejor?
¿Se pregunta qué almacén de columnas anchas usar para sus implementaciones? Si bien Cassandra sigue siendo la más popular, ScyllaDB está ganando rápidamente como la séptima tienda de columna ancha más popular según DB-Engines. Entonces, ¿cuáles son algunas de las razones por las que los usuarios elegirían ScyllaDB frente a Cassandra?
ScyllaDB ofrece una latencia significativamente menor que le permite procesar un gran volumen de datos con un retraso mínimo. De hecho, según el informe de referencia de rendimiento de ScyllaDB, su latencia percentil 99,9 es hasta 11 veces mejor que Cassandra en AWS EC2 bare metal. Entonces, este tipo de desempeño tiene un costo, ¿no? Lo hace, pero afirman en este informe que es una reducción de costos de 2,5 veces en comparación con la ejecución de Cassandra, ya que pueden lograr este rendimiento con solo el 10 % de los nodos.
Hay docenas de artículos de calidad sobre ScyllaDB frente a Cassandra, por lo que nos detendremos aquí para llegar al propósito real de este artículo, desglosando los datos de usuario de ScyllaDB. .
ScyllaDB Cloud frente a ScyllaDB local
ScyllaDB se puede ejecutar tanto en la nube pública como en las instalaciones. De hecho, ScyllaDB se implementa con mayor frecuencia tanto en la nube pública como en entornos locales dentro de una sola organización. El 44 % de las implementaciones de ScyllaDB que aprovechan tanto la computación en la nube como en las instalaciones podría ser a través de un entorno de nube híbrida que aproveche ambos para una aplicación específica o usar estos entornos por separado para administrar diferentes aplicaciones.
Las implementaciones en las instalaciones de ScyllaDB y las implementaciones en la nube de ScyllaDB se mantuvieron a la par con un 28 % cada una. Puede ejecutar ScyllaDB y ScyllaDB Enterprise de código abierto gratuito en la nube o en las instalaciones, y la licencia de ScyllaDB Enterprise comienza en $ 28.8k / año para un total de 48 núcleos.
¿Cuál es la mejor manera de implementar #ScyllaDB? Nube vs. localHaga clic para twittear
Proveedores de nube más populares para ScyllaDB
Dado que el 28 % del clúster de ScyllaDB se implementa exclusivamente en la nube y el 72 % usa la nube de alguna manera, nos interesaba saber qué proveedores de la nube son los más populares para las cargas de trabajo de ScyllaDB. .
#1. AWS
Descubrimos que el 39,1 % de todas las implementaciones en la nube de ScyllaDB se ejecutan en AWS según los participantes de nuestra encuesta. Si bien esperábamos que AWS fuera el proveedor de nube número 1 para ScyllaDB, el porcentaje fue considerablemente más bajo que las respuestas de todos los tipos de bases de datos en la nube en esta encuesta que informó que el 55 % se estaba implementando en AWS. Este número está más en línea con nuestro reciente Informe de tendencias de bases de datos de código abierto de 2019, donde se informó que el 56,9 % de las implementaciones en la nube se ejecutaban en AWS. Esto puede deberse a que AWS no es compatible con ScyllaDB a través de sus servicios de bases de datos relacionales (RDS), por lo que podríamos suponer que a medida que más organizaciones continúan migrando sus datos a ScyllaDB, AWS puede experimentar una disminución en su base de clientes.
#2. Nube de Google
Google Cloud Platform (GCP) fue el segundo proveedor de nube más popular para ScyllaDB, con un 30,4 % de todas las implementaciones en la nube. Google Cloud ofrece su propia tienda de columnas anchas y una base de datos de big data llamada Bigtable, que en realidad ocupa el puesto n. ° 111, uno debajo de ScyllaDB en el n. ° 110 en DB-Engines. Las capacidades de bajo costo y alto rendimiento de ScyllaDB lo convierten en una opción atractiva para los usuarios de GCP, especialmente porque es de código abierto en comparación con Bigtable, que solo está disponible comercialmente en GCP.
#3. azur
Azure le siguió en tercer lugar, representando el 17,4 % de todas las implementaciones de ScyllaDB en la nube de nuestros encuestados. Azure es un proveedor de nube atractivo para las organizaciones que aprovechan el conjunto de servicios de Microsoft.
¿Qué proveedor de nube es el más popular para #ScyllaDB? AWS frente a Azure frente a GCPClick To Tweet
Se descubrió que el 13,0 % restante de las implementaciones en la nube de ScyllaDB se estaban ejecutando en los servicios de computación en la nube de DigitalOcean, Alibaba y Tencent.
Su servicio administrado, Scylla Cloud, actualmente solo está disponible en AWS, y debe usar la versión ScyllaDB Enterprise para aprovechar su DBaaS. Scylla Cloud planea agregar soporte para GCP y Azure en el futuro, pero con solo el 39 % de informes en AWS, podemos suponer que más del 60 % de las implementaciones de ScyllaDB se autogestionan en la nube.
Bases de datos más utilizadas con ScyllaDB
Como también encontramos en el Informe de base de datos de código abierto de 2019, las organizaciones en promedio aprovechan 3.1 tipos de bases de datos diferentes. Pero, en esta encuesta, las organizaciones que usan ScyllaDB informaron que solo usan 2.3 tipos de bases de datos diferentes en promedio, una reducción del 26 % en comparación con nuestros resultados de todos los usuarios de bases de datos de código abierto. También descubrimos que el 39 % de las implementaciones de ScyllaDB solo usan ScyllaDB y no aprovechan ningún otro tipo de base de datos en sus aplicaciones.
Entonces, ¿qué bases de datos se usan más comúnmente junto con ScyllaDB? Descubrimos que los usuarios de ScyllaDB también usan bases de datos SQL MySQL el 20 % del tiempo y PostgreSQL también el 20 % del tiempo. La segunda base de datos más utilizada con ScyllaDB fue Cassandra, representada en el 16 % de las implementaciones, y podríamos suponer que esto se debe a organizaciones que prueban ScyllaDB como una alternativa a Cassandra en sus aplicaciones, ya que ambos tipos de bases de datos son almacenes de columnas anchas.
MongoDB fue la cuarta base de datos implementada más popularmente con ScyllaDB con un 12 %. Redis y Elasticsearch quedaron empatados en el quinto lugar, y ambos aprovecharon el 8 % del tiempo con las implementaciones de ScyllaDB.
También encontramos que el 20 % de las implementaciones de Scylla aprovechan otros tipos de bases de datos, incluidas Oracle, Aerospike, Kafka (que ahora se está transformando en una base de datos de transmisión de eventos), DB2 y Tarantool.
Tareas de administración de ScyllaDB que consumen más tiempo
Sabemos que ScyllaDB es muy poderoso, pero ¿qué tan fácil es usarlo? Les preguntamos a los usuarios de ScyllaDB cuál era la tarea de administración que más tiempo les consumía, y el 28 % nos dijo que la reparación de Scylla era la tarea de administración más larga. Scylla Repair es un proceso de sincronización que se ejecuta en segundo plano para garantizar que todas las réplicas finalmente contengan los mismos datos. Los usuarios deben ejecutar el comando de reparación de nodetool con regularidad, ya que no hay forma de automatizar las reparaciones en las versiones ScyllaDB de código abierto o ScyllaDB Enterprise, pero puede configurar un programa de reparación a través de Scylla Manager.
El análisis de consultas lentas de ScyllaDB empató las copias de seguridad y las recuperaciones de ScyllaDB en el segundo lugar con un 14 % cada una para la tarea de administración que consume más tiempo. No parece que ScyllaDB tenga actualmente un analizador de consultas disponible para identificar las consultas que necesitan optimización, pero los usuarios pueden usar su registro lento de consultas para ver qué consultas tienen el tiempo de respuesta más largo. Las copias de seguridad de ScyllaDB tampoco se pueden automatizar a través de las versiones de código abierto y empresarial, pero afirman que las copias de seguridad recurrentes estarán disponibles en futuras ediciones de Scylla Manager. Tampoco existe una forma automatizada de restaurar una copia de seguridad de ScyllaDB, ya que deben realizarse manualmente en todas las versiones.
10 % de los usuarios de ScyllaDB informaron que agregar, eliminar o reemplazar nodos fue la tarea que más tiempo consumió, ocupando el cuarto lugar. Estos son procesos manuales que pueden llevar bastante tiempo, especialmente si se trata de un gran tamaño de datos. Agregar nodos se usa para escalar horizontalmente una implementación, mientras que eliminarlos reduce la escala de su implementación. Los nodos deben reemplazarse si están inactivos o inactivos, aunque un clúster aún puede estar disponible cuando más de un nodo está inactivo.
Empatado en el quinto lugar con un 7 % se encontraban las actualizaciones y la solución de problemas. Tanto ScyllaDB Enterprise como el código abierto requieren pasos extensos para actualizar un clúster. Los métodos recomendados son a través de un procedimiento continuo, por lo que no hay tiempo de inactividad, pero este es un proceso manual, por lo que el usuario debe desactivar un nodo a la vez, realizar todos los pasos de actualización, reiniciar y validar el nodo antes de continuar con la ejecución. mismos pasos para los nodos restantes en el clúster. De hecho, requiere mucho tiempo, ¡pero afortunadamente no es una tarea diaria! La solución de problemas es, por supuesto, un agujero de conejo profundo en el que sumergirse, pero los clientes de ScyllaDB Enterprise reciben soporte de misión crítica las 24 horas, los 7 días de la semana, y los usuarios de código abierto tienen acceso a una gran cantidad de recursos, que incluyen documentación, listas de correo, Scylla University y un canal de holgura para el usuario. discusiones.
¿Cuál es la tarea de administración de #ScyllaDB que consume más tiempo?Haga clic para twittear
El 21 % restante de las tareas que consumen mucho tiempo informadas por los usuarios de ScyllaDB incluyen monitoreo, migraciones, aprovisionamiento, equilibrio de fragmentos, compactación y aplicación de parches.
Entonces, ¿cómo se comparan estos resultados con sus implementaciones de ScyllaDB? ¿Está buscando una manera de automatizar estas tareas de administración que consumen mucho tiempo? Si bien actualmente admitimos MySQL, PostgreSQL, Redis™* y MongoDB® Database, siempre buscamos comentarios sobre qué base de datos agregar compatibilidad a continuación a través de nuestros planes DBaaS. Háganos saber en los comentarios o en Twitter en @scalegridio si está buscando una manera más fácil de administrar sus clústeres de ScyllaDB en la nube o en las instalaciones.