stringtranslate.com

Tienda única

SingleStore (anteriormente MemSQL ) es una base de datos patentada nativa de la nube diseñada para aplicaciones con uso intensivo de datos . [ 3] Un sistema de administración de bases de datos SQL distribuido y relacional [4] (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. [5] [3]

SingleStore almacena principalmente datos relacionales, aunque también puede almacenar datos JSON , datos de gráficos y datos de series de tiempo . Admite cargas de trabajo combinadas, comúnmente denominadas cargas de trabajo HTAP , así como casos de uso más tradicionales de OLTP y OLAP . Para 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. [6] [7]

Historia

El 23 de abril de 2013, SingleStore lanzó al público su primera versión de la base de datos disponible de forma generalizada como MemSQL. [8] Las primeras versiones solo admitían tablas orientadas a filas y estaban altamente optimizadas para los casos en los que todos los datos caben en la memoria principal . Este diseño se basó en la idea de que el coste de la RAM seguirí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 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 que funcione junto con el almacén de filas en memoria. [9] 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 logró materializarse, 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 importante 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 se alejaba de las cargas de trabajo exclusivamente 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. [10]

En su versión actual del producto, v.7.5, SingleStore se convirtió en la primera y única base de datos que combina la separación del almacenamiento y la computación más el sistema de registro en una sola 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 . [11]

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, incluidos Khosla Ventures , Accel, Google Ventures, Dell Capital y HPE , entre otros. [12]

Arquitectura

Formatos de tablas de filas y columnas

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

Las tablas de almacén de 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 . Los almacenes de filas están optimizados para consultas de inserción, actualización o eliminación únicas o pequeñas y están más estrechamente asociados con casos de uso OLTP (transaccional). Los datos de las tablas de almacén de filas se almacenan completamente en la memoria, lo que agiliza las lecturas aleatorias 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 en las que los agregados se calculan sobre una gran cantidad de elementos de datos similares. Los datos de las tablas de almacén de columnas se almacenan en el disco, lo que admite lecturas secuenciales rápidas y compresión que normalmente alcanza entre 5 y 10 veces.

Indexación

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

Arquitectura distribuida

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

Ingestión de datos de transmisión en tiempo real

SingleStore Pipelines es una tecnología de integración integrada que proporciona ingesta de datos en streaming en paralelo desde fuentes de datos distribuidas. [6] Proporciona deduplicación en vivo a medida que se ingieren los datos, exactamente una vez la semántica 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 incorporando un binario. SingleStore Pipelines se conecta a fuentes de datos como Apache Kafka , Apache Spark , depósitos de Amazon S3 , Microsoft Azure Blob Storage, Google Cloud Storage, HDFS o archivos en disco y admite formatos como JSON, Parquet, Avro y CSV. Gracias 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. [2] [16]

Almacenamiento sin fondo

El almacenamiento sin fondo separa el almacenamiento y la computación para SingleStore. [17] Los archivos de datos persisten en S3 o almacenamiento de blobs comparable y NFS, de forma asincrónica. Los "blobs" son las estructuras de datos codificadas y comprimidas que respaldan el almacén de columnas. Se mantiene la 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 conectarse, crear y mover particiones. Bottomless actúa como una " copia de seguridad continua " que elimina la necesidad de procedimientos tradicionales de recuperación ante desastres y operaciones de copia de seguridad en la nube. También admite conjuntos de datos más grandes del tamaño de petabytes para análisis históricos. [6]

Durabilidad

La durabilidad del almacén de filas en memoria se implementa con un registro de escritura anticipada e instantáneas, 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 escribirá la transacción de forma asincrónica en el disco tan rápido como el disco lo permita. [18]

El almacén de columnas en el disco en realidad está 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 en hilera 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 "Alta disponibilidad" (HA), donde cada partición de datos se crea automáticamente con versiones maestra y esclava en dos nodos hoja 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 asumen el control como particiones maestras, en una operación completamente en línea sin tiempo de inactividad. [6]

Formatos de distribución

Oficina de SingleStore San Francisco en 2020

SingleStore se puede descargar de forma gratuita y ejecutar en Linux para sistemas de hasta 4 nodos hoja de 32 gigas de RAM cada uno; Se requiere una licencia Enterprise para implementaciones más grandes y para soporte oficial de SingleStore. Los clústeres de SingleStore se pueden administrar en contenedores mediante el operador SingleStore Kubernetes. 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. [2]

SingleStore se entrega con un conjunto de herramientas de instalación, administración y monitoreo llamado SingleStore Tools. Al instalar SingleStore, se pueden utilizar herramientas para configurar la base de datos distribuida de SingleStore en todas las máquinas. SingleStore también proporciona una interfaz de usuario de administración y consultas basada en navegador llamada SingleStore Studio, que proporciona procesamiento de consultas y monitoreo de bases de datos, y muestra detalles informativos y de estado sobre el clúster en ejecución. [2]

Reconocimiento

En diciembre de 2021, SingleStore fue reconocida por primera vez en el Cuadrante Mágico de Sistemas de Gestión de Bases de Datos en la Nube publicado por Gartner . [16] SingleStore también se incluyó en los premios Technology Fast 500 North America de Deloitte, San Francisco Business Times Fast 100, Dresner Industry Excellence and Inc 5000 en 2020. [6] La compañía es parte de Cloud Native Computing Foundation y Bytecode Alliance. [7]

Ver también

Referencias

  1. ^ abc martes (14 de agosto de 2012). "Arquitectura MemSQL: rápida (MVCC, InMem, LockFree, CodeGen) y familiar (SQL)". Alta escalabilidad . Consultado el 13 de agosto de 2019 .
  2. ^ abcd "¿Por qué una mejor gestión de datos es la nueva obsesión de Silicon Valley?". Inno y tecnología hoy . Consultado el 26 de abril de 2022 .
  3. ^ ab "Tecnología empresarial: la venganza de los nerds más nerds". Semana Empresarial. Archivado desde el original el 1 de julio de 2012 . Consultado el 26 de abril de 2022 .
  4. ^ ab "IBM invierte en SingleStore para obtener análisis e inteligencia artificial más rápidos sobre datos distribuidos" . Consultado el 29 de septiembre de 2017 .
  5. ^ 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 .
  6. ^ abcdefg "ALMACENAMIENTO Y TUBERÍA SIN FONDO: LA BÚSQUEDA DE UN NUEVO PARADIGMA DE BASE DE DATOS". Economía de datos . Consultado el 26 de abril de 2022 .
  7. ^ ab "La empresa de bases de datos SingleStore obtiene 80 millones de dólares en financiación de la Serie F". Datanami . Consultado el 26 de abril de 2022 .
  8. ^ Hainzinger, Bretaña (2020). "MemSQL ahora es SingleStore" (publicado el 2 de noviembre de 2020) . Consultado el 23 de abril de 2022 .
  9. ^ "SingleStore recauda 80 millones de dólares para una base de datos SQL distribuida". Objetivo tecnológico . Consultado el 26 de abril de 2022 .
  10. ^ "MemSQL cambia su nombre a SingleStore". Tiempos de desarrollo de software . Consultado el 26 de abril de 2022 .
  11. ^ "SingleStore podría duplicar el número de empleados en Raleigh". Observador de noticias . Consultado el 26 de abril de 2022 .
  12. ^ "SingleStore de inicio de base de datos recauda 75 millones de dólares". VentureBeat . Consultado el 26 de abril de 2022 .
  13. ^ "SingleStore, anteriormente MemSQL, recauda 80 millones de dólares para integrar y aprovechar los silos de datos dispares de las empresas". TechCrunch . Consultado el 27 de abril de 2022 .
  14. ^ "SingleStore ayuda a las empresas a gestionar mejor los crecientes volúmenes de datos". VentureBeat . Consultado el 26 de julio de 2022 .
  15. ^ "Introducción a MemSQL | DBMS 2: Servicios del sistema de gestión de bases de datos". SGBD . Consultado el 26 de abril de 2022 .
  16. ^ ab "Qué ha cambiado: Cuadrante mágico de Gartner 2021 para sistemas de gestión de bases de datos en la nube". Revisión de soluciones . Consultado el 26 de abril de 2022 .
  17. ^ "Por qué necesitamos gestión y escalabilidad para beneficiarnos del poder de los datos". Forbes . Consultado el 26 de abril de 2022 .
  18. ^ "Una base de datos increíblemente rápida en un mundo basado en datos". IBM . Consultado el 19 de enero de 2018 .

enlaces externos