stringtranslate.com

Tienda Única

SingleStore (anteriormente MemSQL ) es una base de datos nativa de la nube y propietaria diseñada para aplicaciones con uso intensivo de datos . [2] Un sistema de gestión de bases de datos SQL relacional distribuido [3] (RDBMS) que cuenta con soporte ANSI SQL , es conocido por su velocidad en la ingesta de datos , el procesamiento de transacciones y el procesamiento de consultas. [4] [2]

SingleStore almacena principalmente datos relacionales, aunque también puede almacenar datos JSON , datos de gráficos y datos de series temporales . Admite cargas de trabajo combinadas, comúnmente conocidas como cargas de trabajo HTAP , así como casos de uso OLTP y OLAP más tradicionales. Para las consultas, compila el lenguaje de consulta estructurado (SQL) en código de máquina . El motor de base de datos SingleStore se puede ejecutar en varios entornos Linux , incluidas instalaciones locales , proveedores de nube pública y privada , en contenedores a través de un operador de Kubernetes o como un servicio alojado en la nube conocido como SingleStore Managed Service. [5] [6]

Historia

El 23 de abril de 2013, SingleStore lanzó su primera versión de la base de datos disponible al público como MemSQL. [7] Las primeras versiones solo admitían tablas orientadas a filas y estaban altamente optimizadas para los casos en los que todos los datos pueden caber en la memoria principal . Este diseño se basó en la idea de que el costo de la RAM continuaría disminuyendo exponencialmente con el tiempo, en una tendencia similar a la ley de Moore . Esto eventualmente permitiría que la mayoría de los casos de uso de los sistemas de bases de datos almacenen sus datos exclusivamente en la memoria.

Poco después del lanzamiento, MemSQL agregó soporte general para un formato de almacenamiento basado en columnas en disco para trabajar junto con el almacén de filas en memoria. [8] Las disminuciones en el costo de la memoria se desaceleraron con el tiempo y el mercado de sistemas de bases de datos puramente en memoria no se materializó en gran medida, con una creciente demanda de cargas de trabajo OLAP basadas en disco. Por lo tanto, con el tiempo, el almacén de columnas de MemSQL se convirtió en un foco principal y una característica crucial para los clientes.

El 27 de octubre de 2020, MemSQL cambió su nombre a SingleStore para reflejar un cambio de enfoque que deja de centrarse exclusivamente en las cargas de trabajo en memoria. El nuevo nombre destaca el objetivo de lograr un formato de almacenamiento universal capaz de admitir casos de uso tanto transaccionales como analíticos. [9]

En su versión actual, v.7.5, SingleStore se convirtió en la primera y única base de datos que combina la separación de almacenamiento y computación más el sistema de registro en una única plataforma. Con sede en San Francisco, California , en junio de 2021 SingleStore abrió una oficina en Raleigh, Carolina del Norte . Como parte de la apertura de la oficina, SingleStore lanzó Launch Pad, un centro de innovación para incubar y crear prototipos de soluciones. Sus otras oficinas incluyen Sunnyvale, California , Seattle, Washington y Lisboa, Portugal . [10]

Fondos

En enero de 2013, SingleStore anunció que había recaudado 5 millones de dólares. Desde entonces, la empresa ha recaudado 318,1 millones de dólares de varios inversores, entre ellos Khosla Ventures , Accel, Google Ventures, Dell Capital y HPE , entre otros. [11]

Arquitectura

Formatos de tablas de filas y columnas

SingleStore puede almacenar datos en tablas orientadas a filas ("almacenes de filas") o en tablas orientadas a columnas ("almacenes de columnas"). El formato utilizado lo determina el usuario al crear la tabla.

Las tablas de almacenamiento en filas, como su nombre lo indica, almacenan información en formato de filas, que es el formato de datos tradicional utilizado por los sistemas RDBMS . Las tablas de almacenamiento en filas están optimizadas para consultas singleton o de inserción, actualización o eliminación pequeñas y se asocian más estrechamente con los casos de uso de OLTP (transaccional). Los datos de las tablas de almacenamiento en filas se almacenan completamente en la memoria, lo que permite realizar lecturas aleatorias de forma rápida, y las instantáneas y los registros de transacciones se conservan en el disco.

Los almacenes de columnas están optimizados para consultas SELECT complejas, generalmente asociadas con casos de uso de OLAP (análisis) y almacenamiento de datos. Por ejemplo, un gran conjunto de datos clínicos para análisis de datos se almacena mejor en formato de columnas, ya que las consultas que se ejecutan en él normalmente serán consultas ad hoc donde los agregados se calculan sobre una gran cantidad de elementos de datos similares. Los datos para las tablas de almacenes de columnas se almacenan en el disco, lo que permite lecturas secuenciales rápidas y una compresión que normalmente alcanza entre 5 y 10 veces.

Indexación

En lugar del índice B-tree tradicional, los almacenes de filas SingleStore utilizan listas de omisión optimizadas para un procesamiento rápido y sin bloqueos en la memoria. Los almacenes de columnas almacenan datos indexados en segmentos ordenados, con el fin de maximizar la compresión en disco y lograr escaneos rápidos y ordenados. SingleStore también admite el uso de índices hash como índices secundarios para acelerar ciertas consultas.

Arquitectura distribuida

Una base de datos SingleStore se distribuye entre muchas máquinas de productos básicos. Los datos se almacenan en particiones en nodos de hoja y los usuarios se conectan a los nodos agregadores. [ cita requerida ] Se instala una única pieza de software para el agregador SingleStore y los nodos de hoja; los administradores designan el rol de cada máquina en el clúster durante la configuración. Un nodo agregador es responsable de recibir consultas SQL, dividirlas en nodos de hoja y agregar los resultados de vuelta al cliente. Un nodo de hoja almacena datos SingleStore y procesa consultas de los agregadores. Toda la comunicación entre los agregadores y los nodos de hoja se realiza a través de la red utilizando SQL. SingleStore utiliza particionamiento hash para distribuir los datos de manera uniforme entre la cantidad de nodos de hoja. [14]

Ingesta de datos de transmisión en tiempo real

SingleStore Pipelines es una tecnología de integración incorporada que proporciona la ingesta de datos en streaming en paralelo desde fuentes de datos distribuidas. [5] Proporciona desduplicación en vivo a medida que se ingieren los datos, semántica exactamente una vez de los intermediarios de mensajes y simplifica las arquitecturas al reducir o eliminar la necesidad de middleware ETL. La transformación y la integración de ML se pueden realizar a través de SingleStore Pipeline Transforms mediante la incorporación de un binario. SingleStore Pipelines se conecta a fuentes de datos como Apache Kafka , Apache Spark , buckets de Amazon S3 , Microsoft Azure Blob Storage, Google Cloud Storage, HDFS o archivos en disco y admite formatos como JSON, Parquet, Avro y CSV. Debido a las listas de omisión sin bloqueo, las consultas pueden recuperar los datos tan pronto como llegan, pero no se les impide continuar mientras se ingieren los datos. [1] [15]

Almacenamiento sin fondo

El almacenamiento sin fondo separa el almacenamiento y el procesamiento para SingleStore. [16] Los archivos de datos persisten en S3 o en un almacenamiento de blobs comparable y NFS, de forma asincrónica. Los "blobs" son las estructuras de datos comprimidas y codificadas que respaldan el almacén de columnas. Se mantiene una alta disponibilidad en el clúster SingleStore para los datos más recientes, pero el almacenamiento a largo plazo se traslada al almacenamiento de blobs . Los blobs que no se consultan se eliminan automáticamente del disco local del nodo SingleStore, lo que permite que el clúster contenga más datos que el disco disponible, lo que hace que el almacenamiento del clúster sea "sin fondo". Las nuevas réplicas no necesitan descargar todos los archivos blob para estar en línea, creando y moviendo particiones. Bottomless actúa como una " copia de seguridad continua " que obvia la necesidad de los procedimientos tradicionales de recuperación ante desastres y operación de copia de seguridad en la nube. También admite conjuntos de datos de tamaño petabyte más grande para análisis históricos. [5]

Durabilidad

La durabilidad del almacén de filas en memoria se implementa con un registro de escritura anticipada y capturas de pantalla, similares a los puntos de control. Con la configuración predeterminada, tan pronto como se reconoce una transacción en la memoria, la base de datos escribe de manera asincrónica la transacción en el disco tan rápido como lo permita el disco. [17]

El almacén de columnas en disco está en realidad encabezado por una estructura similar a un almacén de filas en memoria, indexada mediante una lista de omisión. Esta estructura tiene las mismas garantías de durabilidad que el almacén de filas SingleStore. Aparte de eso, el almacén de columnas es duradero, ya que sus datos se almacenan en el disco.

Replicación

Un clúster SingleStore se puede configurar en modo de "alta disponibilidad" (HA), donde cada partición de datos se crea automáticamente con versiones maestra y esclava en dos nodos leaf separados. En el modo HA, los agregadores envían transacciones a las particiones maestras, que luego envían registros a las particiones esclavas. En caso de una falla maestra inesperada, las particiones esclavas toman el control como particiones maestras, en una operación completamente en línea sin tiempo de inactividad. [5]

Formatos de distribución

Oficina de SingleStore en San Francisco en 2020

SingleStore se puede descargar de forma gratuita y ejecutar en Linux para sistemas de hasta 4 nodos leaf de 32 gigas de RAM cada uno; se requiere una licencia Enterprise para implementaciones más grandes y para el soporte oficial de SingleStore. Los clústeres de SingleStore se pueden administrar en contenedores mediante SingleStore Kubernetes Operator. SingleStore también está disponible como un servicio administrado llamado SingleStore Managed Service, disponible en varias regiones en Google Cloud y Amazon Web Services, con una implementación de Microsoft Azure prometida para el futuro cercano. El motor subyacente y el rendimiento potencial del sistema son idénticos en todos los formatos de distribución. [1]

SingleStore se entrega con un conjunto de herramientas de instalación, administración y monitoreo llamadas SingleStore Tools. Al instalar SingleStore, se pueden usar las herramientas para configurar la base de datos SingleStore distribuida en las distintas máquinas. SingleStore también ofrece una interfaz de usuario de consulta y administración basada en navegador llamada SingleStore Studio, que permite procesar consultas y monitorear la base de datos, y muestra detalles de estado e información sobre el clúster en ejecución. [1]

Véase también

Referencias

  1. ^ abcd "¿Por qué la gestión de datos mejorada es la nueva obsesión de Silicon Valley?". Inno & Tech Today . Consultado el 26 de abril de 2022 .
  2. ^ ab "Tecnología empresarial: la venganza de los nerds más nerds". Business Week. Archivado desde el original el 1 de julio de 2012. Consultado el 26 de abril de 2022 .
  3. ^ ab "IBM invierte en SingleStore para obtener inteligencia artificial y análisis más rápidos sobre datos distribuidos" . Consultado el 29 de septiembre de 2017 .
  4. ^ ab Lunden, Ingrid. "La plataforma de base de datos en tiempo real SingleStore recauda 80 millones de dólares más, ahora con una valoración de 940 millones de dólares". TechCrunch . Consultado el 8 de septiembre de 2021 .
  5. ^ abcdef "ALMACENAMIENTO SIN FONDO Y TUBERÍA: LA BÚSQUEDA DE UN NUEVO PARADIGMA DE BASE DE DATOS". Dataconomy . Consultado el 26 de abril de 2022 .
  6. ^ "La empresa de bases de datos SingleStore obtiene 80 millones de dólares en financiación de serie F". Datanami . Consultado el 26 de abril de 2022 .
  7. ^ Hainzinger, Brittany (2020). "MemSQL es ahora SingleStore" (publicado el 2 de noviembre de 2020) . Consultado el 23 de abril de 2022 .
  8. ^ "SingleStore recauda 80 millones de dólares para una base de datos SQL distribuida". TechTarget . Consultado el 26 de abril de 2022 .
  9. ^ "MemSQL cambia su nombre a SingleStore". Software Development Times . Consultado el 26 de abril de 2022 .
  10. ^ "SingleStore podría duplicar el número de empleados en Raleigh". News Observer . Consultado el 26 de abril de 2022 .
  11. ^ "La startup de bases de datos SingleStore recauda 75 millones de dólares". VentureBeat . Consultado el 26 de abril de 2022 .
  12. ^ "SingleStore, anteriormente MemSQL, recauda 80 millones de dólares para integrar y aprovechar los distintos silos de datos de las empresas". TechCrunch . Consultado el 27 de abril de 2022 .
  13. ^ "SingleStore ayuda a las empresas a gestionar mejor los crecientes volúmenes de datos". VentureBeat . Consultado el 26 de julio de 2022 .
  14. ^ "Introducción a MemSQL | DBMS 2: Servicios del sistema de gestión de bases de datos". DBMS . Consultado el 26 de abril de 2022 .
  15. ^ "Qué ha cambiado: Cuadrante mágico de Gartner de 2021 para sistemas de gestión de bases de datos en la nube". Solutions Review . Consultado el 26 de abril de 2022 .
  16. ^ "Por qué necesitamos gestión y escalabilidad para aprovechar el poder de los datos". Forbes . Consultado el 26 de abril de 2022 .
  17. ^ "Una base de datos increíblemente rápida en un mundo impulsado por los datos". IBM . Consultado el 19 de enero de 2018 .

Enlaces externos