Entrevistas

Karthik Ranganathan, Co-Fundador e Co-CEO da Yugabyte – Série de Entrevistas

mm
Adicione Unite.AI às suas fontes preferidas no Google

Karthik Ranganathan é co-fundador e co-CEO da Yugabyte, a empresa por trás da YugabyteDB, o banco de dados distribuído de alto desempenho e código aberto PostgreSQL. Karthik é um especialista em dados experiente e ex-engenheiro do Facebook (META ) que co-fundou a Yugabyte ao lado de dois de seus ex-colegas do Facebook para revolucionar os bancos de dados distribuídos.

O que o inspirou a co-fundar a Yugabyte, e quais lacunas no mercado você viu que o levaram a criar a YugabyteDB?

Meus co-fundadores, Kannan Muthukkaruppan, Mikhail Bautin e eu, fundamos a Yugabyte em 2016. Como ex-engenheiros da Meta (então chamada Facebook), ajudamos a construir bancos de dados populares, incluindo Apache Cassandra, HBase e RocksDB – bem como executar alguns desses bancos de dados como serviços gerenciados para cargas de trabalho internas.

Criamos a YugabyteDB porque vimos uma lacuna no mercado para bancos de dados transacionais nativos da nuvem para aplicações críticas para os negócios. Construímos a YugabyteDB para atender às necessidades das organizações que estão migrando de ambientes locais para operações nativas da nuvem e combinamos as forças dos bancos de dados não relacionais com a escalabilidade e a resiliência das arquiteturas nativas da nuvem. Enquanto construíamos o Cassandra e o HBase no Facebook (o que foi fundamental para atender às necessidades de escalabilidade significativas do Facebook), vimos o surgimento de microsserviços, contêinerização, alta disponibilidade, distribuição geográfica e Interfaces de Programação de Aplicativos (API). Também reconhecemos o impacto que as tecnologias de código aberto têm no avanço da indústria.

As pessoas muitas vezes pensam no mercado de bancos de dados transacionais como congestionado. Embora isso tenha sido tradicionalmente verdadeiro, hoje o Postgres se tornou a API padrão para bancos de dados transacionais nativos da nuvem. Cada vez mais, os bancos de dados nativos da nuvem estão escolhendo dar suporte ao protocolo Postgres, que foi incorporado à estrutura da YugabyteDB, tornando-a o banco de dados mais compatível com o Postgres no mercado. A YugabyteDB retém o poder e a familiaridade do PostgreSQL, evoluindo para um banco de dados distribuído de nível empresarial adequado para aplicações nativas da nuvem modernas. A YugabyteDB permite que as empresas construam e escalonem sistemas usando modelos SQL familiares.

Como suas experiências no Facebook influenciaram sua visão para a empresa?

Em 2007, eu estava considerando se deveria me juntar a uma empresa pequena, mas em crescimento – o Facebook. Na época, o site tinha cerca de 30 a 40 milhões de usuários. Eu pensei que poderia dobrar de tamanho, mas não poderia estar mais errado! Durante meus mais de cinco anos no Facebook, a base de usuários cresceu para 2 bilhões. O que me atraiu para a empresa foi sua cultura de inovação e ousadia, encorajando as pessoas a “falhar rápido” para catalisar a inovação.

O Facebook cresceu tanto que os desafios técnicos e intelectuais que eu procurava já não estavam mais presentes. Por muitos anos, eu havia aspirado a criar minha própria empresa e lidar com problemas que afetam o usuário comum – isso me levou a co-criar a Yugabyte.

Nossa missão é simplificar as aplicações nativas da nuvem, focando em três recursos essenciais cruciais para o desenvolvimento moderno:

  • Primeiro, as aplicações devem estar continuamente disponíveis, garantindo o tempo de atividade independentemente de backups ou falhas, especialmente ao serem executadas em hardware de commodity na nuvem.
  • Segundo, a capacidade de escalar sob demanda é crucial, permitindo que os desenvolvedores construam e lancem rapidamente sem a demora de pedir hardware.
  • Terceiro, com muitos centros de dados agora facilmente acessíveis, replicar dados entre regiões se torna vital para confiabilidade e desempenho.

Esses três elementos capacitam os desenvolvedores, fornecendo a agilidade e a liberdade de que precisam para inovar, sem serem limitados pelas limitações da infraestrutura.

Poderia compartilhar a jornada da Yugabyte desde sua criação em 2016 até seu status atual como líder em bancos de dados SQL distribuídos? Quais foram alguns marcos importantes?

No Facebook, eu frequentemente conversava com desenvolvedores que precisavam de recursos específicos, como índices secundários em bancos de dados SQL ou transações multi-nós ocasionais. Infelizmente, a resposta era geralmente “não”, porque os sistemas existentes não foram projetados para atender a essas necessidades.

Hoje, estamos experimentando uma mudança em direção a aplicações transacionais nativas da nuvem que precisam lidar com escalabilidade e disponibilidade. Os bancos de dados tradicionais simplesmente não podem atender a essas necessidades. As empresas modernas exigem bancos de dados relacionais que operem na nuvem e ofereçam os três recursos essenciais: alta disponibilidade, escalabilidade e distribuição geográfica, enquanto ainda suportam capacidades SQL. Esses são os pilares sobre os quais construímos a YugabyteDB e os desafios de banco de dados que estamos focados em resolver.

Em fevereiro de 2016, os fundadores começaram a desenvolver a YugabyteDB, um banco de dados SQL distribuído de escala global projetado para aplicações transacionais nativas da nuvem. Em julho de 2019, fizemos um anúncio sem precedentes e lançamos nossos recursos comerciais anteriores como código aberto. Isso reafirmou nosso compromisso com os princípios de código aberto e lançou oficialmente a YugabyteDB como um sistema de gerenciamento de banco de dados relacional (RDBMS) totalmente de código aberto sob uma licença Apache 2.0.

A última versão da YugabyteDB (lançada em setembro) apresenta compatibilidade aprimorada com o Postgres. Inclui um Adaptive Cost-Based Optimizer (CBO) que otimiza planos de consulta para aplicações de grande escala e multi-região, e Smart Data Distribution que determina automaticamente se armazenar tabelas juntas para menor latência ou particionar e distribuir dados para maior escalabilidade. Esses aprimoramentos permitem que os desenvolvedores executem suas aplicações PostgreSQL na YugabyteDB de forma eficiente e escalonem sem a necessidade de compromissos ou migrações complexas.

A YugabyteDB é conhecida por sua compatibilidade com o PostgreSQL e sua API inspirada no Cassandra. Como essa abordagem multi-API beneficia os desenvolvedores e as empresas?

A abordagem multi-API da YugabyteDB beneficia os desenvolvedores e as empresas combinando as forças de um banco de dados SQL de alto desempenho com a flexibilidade necessária para aplicações de escala de internet.

Elle suporta RDBMS de escala e cargas de trabalho de Processamento de Transações Online (OLTP) de alto volume, mantendo baixa latência de consulta e resiliência excepcional. A compatibilidade com o PostgreSQL permite a modernização sem esforço de aplicações PostgreSQL existentes, exigindo alterações mínimas.

Na última versão da plataforma de banco de dados distribuído, lançada em setembro de 2024, recursos como o Adaptive CBO e a Smart Data Distribution aprimoram o desempenho, otimizando planos de consulta e gerenciando automaticamente a colocação de dados. Isso permite que os desenvolvedores atinjam baixa latência e alta escalabilidade sem compromissos, tornando a YugabyteDB ideal para aplicações nativas da nuvem em rápido crescimento que exigem gerenciamento de dados confiável.

A Inteligência Artificial está sendo cada vez mais integrada a sistemas de banco de dados. Como a Yugabyte está utilizando a IA para melhorar o desempenho, a escalabilidade e a segurança de seus sistemas SQL?

Estamos utilizando a IA para melhorar nosso banco de dados SQL distribuído, abordando desafios de desempenho e migração. Nosso Performance Copilot, uma melhoria no nosso Performance Advisor, simplificará a solução de problemas analisando padrões de consulta, detectando anomalias e fornecendo recomendações em tempo real para solucionar problemas de desempenho do banco de dados.

Também estamos integrando a IA à YugabyteDB Voyager, nossa ferramenta de migração de banco de dados que simplifica as migrações do PostgreSQL, MySQL, Oracle (ORCL ) e outros bancos de dados de nuvem para a YugabyteDB. Visamos simplificar as transições de sistemas legados, automatizando a conversão de esquemas, a tradução SQL e a transformação de dados, com verificações de compatibilidade proativas. Essas inovações se concentram em tornar a YugabyteDB mais inteligente, eficiente e fácil de usar para aplicações distribuídas modernas.

Quais são as principais vantagens de usar um sistema SQL de código aberto como a YugabyteDB em aplicações nativas da nuvem em comparação com bancos de dados proprietários tradicionais?

Transparência, flexibilidade e suporte robusto da comunidade são as principais vantagens ao usar um sistema SQL de código aberto como a YugabyteDB em aplicações nativas da nuvem. Quando lançamos a YugabyteDB, reconhecemos o ceticismo em torno dos modelos de código aberto. Engajamo-nos com os usuários, que expressaram uma forte preferência por um banco de dados totalmente aberto para confiar com seus dados críticos.

Inicialmente, executamos um modelo de código aberto parcial, mas rapidamente percebemos que precisava ser uma solução completamente aberta. Os desenvolvedores estão cada vez mais se voltando para o PostgreSQL como uma alternativa lógica ao Oracle, mas o PostgreSQL não foi projetado para plataformas de nuvem dinâmicas. A YugabyteDB preenche essa lacuna, suportando a profundidade de recursos do PostgreSQL para infraestruturas de nuvem modernas. Ao ser 100% de código aberto, removemos barreiras para a adoção.

Isso nos torna muito atraentes para os desenvolvedores que constroem aplicações críticas para os negócios e para os engenheiros de operações que as executam em plataformas nativas da nuvem. Nosso foco é criar um banco de dados que não apenas é de código aberto, mas também é fácil de usar e compatível com o PostgreSQL, que permanece uma escolha madura devido ao seu conjunto de recursos maduro e poderosas extensões.

A demanda por soluções SQL escaláveis e adaptáveis está crescendo. Quais tendências você está observando no mercado de bancos de dados empresariais, e como a Yugabyte está posicionada para atender a essas demandas?

Uma maior escala em bancos de dados empresariais frequentemente leva a taxas de falha aumentadas, especialmente à medida que as organizações lidam com footprints expandidos e volumes de dados mais altos. As principais tendências que moldam o cenário de banco de dados incluem a adoção de DBaaS e uma mudança de volta das nuvens públicas para ambientes de nuvem privada. Além disso, a integração de IA gerativa traz oportunidades e desafios, exigindo automação e otimização de desempenho para gerenciar a carga de dados crescente.

As organizações estão cada vez mais se voltando para o DBaaS para simplificar as operações, apesar de preocupações iniciais sobre controle e segurança. Essa abordagem melhora a eficiência em várias infraestruturas, enquanto o foco em soluções de nuvem privada ajuda as empresas a reduzir custos e melhorar a escalabilidade para suas cargas de trabalho.

A YugabyteDB atende a essas demandas em evolução, combinando as forças dos bancos de dados relacionais com a escalabilidade das arquiteturas nativas da nuvem. Recursos como a Smart Data Distribution e o Adaptive CBO aprimoram o desempenho e suportam um grande número de objetos de banco de dados. Isso a torna uma escolha competitiva para executar uma ampla gama de aplicações.

Além disso, a YugabyteDB permite que as empresas migrem suas aplicações PostgreSQL enquanto mantêm níveis de desempenho semelhantes, o que é crucial para as cargas de trabalho modernas. Nosso compromisso com o desenvolvimento de código aberto encoraja a participação da comunidade e fornece flexibilidade para os clientes que desejam evitar o bloqueio de fornecedores.

Com o surgimento do edge computing e do IoT, como a YugabyteDB aborda os desafios impostos por essas tecnologias, particularmente em relação à distribuição de dados e à latência?

A arquitetura SQL distribuída da YugabyteDB é projetada para atender aos desafios impostos pelo surgimento do edge computing e do IoT, fornecendo uma camada de dados escalável e resiliente que pode operar sem esforço em contextos de nuvem e de edge. Sua capacidade de particionar e replicar automaticamente os dados garante uma distribuição eficiente, permitindo um acesso rápido e processamento em tempo real. Isso minimiza a latência, permitindo que as aplicações respondam rapidamente às interações do usuário e às alterações de dados.

Ao oferecer a flexibilidade para adaptar as configurações com base em requisitos específicos de aplicativos, a YugabyteDB garante que as empresas possam gerenciar eficazmente suas necessidades de dados à medida que evoluem em um cenário cada vez mais descentralizado.

Como Co-CEO, como você equilibra os papéis duplos de liderar a inovação tecnológica e gerenciar o crescimento da empresa?

Nossa empresa visa simplificar as aplicações nativas da nuvem, o que me obriga a estar por dentro das tendências tecnológicas, como a IA gerativa e as trocas de contexto. Seguir a inovação exige curiosidade, um desejo de fazer um impacto e um compromisso com o aprendizado contínuo.

Equilibrar a inovação tecnológica e o crescimento da empresa é fundamentalmente sobre escalabilidade – seja escalando sistemas ou escalando impacto. Em bancos de dados distribuídos, nos concentramos em construir tecnologias que escalonem o desempenho, lidem com cargas de trabalho massivas e garantam alta disponibilidade em uma infraestrutura global. Da mesma forma, escalar a Yugabyte significa crescer nossa base de clientes, melhorar o engajamento da comunidade e expandir nosso ecossistema – mantendo a excelência operacional.

Tudo isso exige uma abordagem disciplinada para o desempenho e a eficiência.

Tecnicamente, otimizamos a execução de consultas, reduzimos a latência e melhoramos a taxa de transferência do sistema; organizacionalmente, simplificamos processos, escalamos equipes e melhoramos a colaboração interfuncional. Em ambos os casos, o sucesso vem de capacitar as equipes com as ferramentas, insights e processos certos para tomar decisões inteligentes e baseadas em dados.

Como você vê o papel dos bancos de dados SQL distribuídos evoluindo nos próximos 5-10 anos, particularmente no contexto da IA e do aprendizado de máquina?

Nos próximos anos, os bancos de dados SQL distribuídos evoluirão para lidar com análises de dados complexas, permitindo que os usuários façam previsões e detectem anomalias com expertise técnica mínima. Há uma quantidade imensa de especialização de banco de dados no contexto da IA e do aprendizado de máquina, mas isso não é sustentável. Os bancos de dados precisarão evoluir para atender às demandas da IA. É por isso que estamos iterando e aprimorando as capacidades em cima do pgvector, garantindo que os desenvolvedores possam usar a Yugabyte para suas necessidades de banco de dados de IA.

Além disso, podemos esperar um compromisso contínuo com o código aberto no desenvolvimento da IA. Cinco anos atrás, tornamos a YugabyteDB totalmente de código aberto sob a licença Apache 2.0, reafirmando nosso compromisso com o framework de código aberto e construindo proativamente nossa comunidade de código aberto.

Obrigado por todas as suas respostas detalhadas; leitores que desejam aprender mais devem visitar YugabyteDB.

Antoine é um líder visionário e sócio-fundador da Unite.AI, impulsionado por uma paixão inabalável por moldar e promover o futuro da IA e da robótica. Um empreendedor serial, ele acredita que a IA será tão disruptiva para a sociedade quanto a eletricidade, e é frequentemente pego falando sobre o potencial das tecnologias disruptivas e da AGI.

Como um futurista, ele está dedicado a explorar como essas inovações moldarão nosso mundo. Além disso, ele é o fundador da Securities.io, uma plataforma focada em investir em tecnologias de ponta que estão redefinindo o futuro e remodelando setores inteiros.