YugabytedB

Content

História

A Yugabyte foi fundada pelos ex-engenheiros do Facebook Kannan Muthukkaruppan, Karthik Ranganathan e Mikhail Bautin. No Facebook, eles faziam parte da equipe que construiu e operava Cassandra e HBase. A equipe dimensionou a plataforma de dados para cargas de trabalho em tempo real, como o Facebook Messenger e a loja de dados operacionais do Facebook de milhões para bilhões de usuários em apenas alguns anos.

Os fundadores se reuniram em fevereiro de 2016 para construir o YugabytedB, acreditando que as tendências que eles experimentaram no Facebook-microsserviços, contêinerização, alta disponibilidade, distribuição geográfica, APIs e código aberto-eram relevantes para todos os negócios, especialmente à medida que se mudam de On- premissa para operações nativas da nuvem.

O YugabytedB estava inicialmente disponível em duas edições: Comunidade e Enterprise. Em julho de 2019, a Yugabyte Open Open Aberte Commercial Caracters e lançou o YugabytedB como código aberto sob a licença Apache 2.0.

A rápida evolução do produto levou a ser nomeado como um fornecedor legal do Gartner 2020 no gerenciamento de dados.

A Yugabyte lançou a Yugabyte Cloud, uma oferta de banco de dados totalmente gerenciada como serviço do YugabytedB, em setembro de 2021. A Yugabyte Cloud combina o poder do SQL distribuído com a facilidade de uso de um sistema de gerenciamento de banco de dados em nuvem.

Financiamento

Apenas 6 anos após o início da empresa, a Yugabyte fechou uma rodada de financiamento da série C de US $ 188 milhões para se tornar uma start-up de unicórnio com uma avaliação de US $ 1,3 bilhão

Funding RoundsSeriesDate AnnouncedAmountInvestorsA10 Feb 2016$8MLightspeed Venture Partners, Jeff Rothschild A12 Jun 2018$16MLightspeed Venture Partners, Dell Technology Capital B09 Jun 2020$30MWipro Ventures, Lightspeed Venture Partners. Dell Technology Capital. 8VC B03 Mar 2021$48MWipro Ventures. Lightspeed Venture Partners. Greenspring Associates, Dell Technology Capital, 8VC C28 Oct 2021$188MWells Fargo Strategic Capital, Sapphire Ventures, Meritech Capital Partners, Lightspeed Venture Partners, Dell Technology Capital, 8VC

Arquitetura

O YugabytedB é um banco de dados SQL distribuído que é fortemente consistente transacional nas zonas de falha (isto é, conformidade com ácido], como demonstrado pelo teste Jepsen. Em termos de Cap Termos, o YugabytedB é um banco de dados consistente/tolerante a partição (CP).

O YugabytedB possui duas camadas, um motor de armazenamento conhecido como DOCDB e a camada de consulta Yugabyte.

Arquitetura YugabytedB

Docdb

O mecanismo de armazenamento consiste em um rocksdb personalizado combinado com algoritmos de sharding e balanceamento de carga para os dados. Além disso, o algoritmo de consenso da jangada controla a replicação dos dados entre os nós. Há também um gerente de transação distribuído e controle de concorrência multiverso (MVCC) para suportar transações distribuídas.

O motor também explora um relógio lógico híbrido que combina relógios físicos síncronizados com relógios de lamport para rastrear relacionamentos causais.

A camada DOCDB não é diretamente acessível pelos usuários.

Camada de consulta YugabytedB

A Yugabyte possui uma camada de consulta feminina que abstrava a camada de consulta da camada de armazenamento abaixo. Atualmente, existem duas APIs que podem acessar o banco de dados:

O YSQL é uma API compatível com código PostGresql com base em v11.2. O YSQL é acessado através de drivers PostgreSQL padrão usando protocolos nativos. Ele explora o código PostGresql nativo para a camada de consulta e substitui o mecanismo de armazenamento por chamadas para a camada de consulta Mlascable. Essa reutilização significa que a Yugabyte suporta muitos recursos, incluindo:

Triggers & Stored ProceduresPostgreSQL extensions that operate in the query layerNative JSONB support

O YCQL é uma API do tipo Cassandra baseada em v3.10 e reescrita em C ++. O YCQL é acessado através de motoristas padrão de Cassandra usando a porta do protocolo nativo de 9042. Além dos componentes Cassandra 'Vanilla', o YCQL é aumentado com os seguintes recursos:

Transactional consistency - unlike Cassandra, Yugabyte YCQL is transactional.JSON data types supported nativelyTables can have secondary indexes

Atualmente, os dados gravados em qualquer uma API não são acessíveis por meio da outra API, no entanto, o MySQL pode acessar o MySQL usando o recurso PostgreSql Foreign Data Wrapper.

O modelo de segurança para acessar o sistema é herdado da API; portanto, os controles de acesso para YSQL parecem postGresql e o YCQL se parece com os controles de acesso ao Cassandra.

Funcionalidade adicional

Além da funcionalidade principal do banco de dados, existem alguns recursos adicionais de nota

Replicação de cluster a cluster

O YugabytedB tem a capacidade de replicar entre instâncias de banco de dados. A replicação pode ser unidirecional ou bidirecional e é assíncrona. A replicação de um ponte é usada para criar uma cópia somente leitura para carga de trabalho ou em um modo de leitura e gravação para criar um espera ativo-passivo. A replicação bidirecional é geralmente usada em configurações de leitura e gravação e é usada para configurações ativas ativas, aplicativos geográficos, etc.

Veja também

Free and open-source software portal
Cloud databaseDistributed SQLComparison of relational database management systemsComparison of object–relational database management systemsCloud native computingDatabase management systemList of databases using MVCCList of relational database management systemsCockroachDBTiDB