Conversa real: Por que o Datadog é tão caro?
24 de janeiro de 2024As 5 principais tendências em testes de software nativo da nuvem em 2023
24 de janeiro de 2024Denis Lussier e Phillip Merrick, que trabalharam juntos na criação do EnterpriseDB a partir de 2005, estão lançando um novo projeto chamado pgEdge para abordar alguns dos mais difíceis desafios de banco de dados que as organizações enfrentam, como latência de dados, disponibilidade ultra-alta e restrições de residência de dados.
Com o EnterpriseDB, que eles chamam de Door No. 1, eles procuraram adicionar uma camada de compatibilidade Oracle sobre o PostgreSQL de código aberto. Eles chamam seu último empreendimento de Door No. 2, aproximando um banco de dados Postgres distribuído da borda.
Qual é a vantagem?
Empresas como Cloudflare, Akamai e Fastly têm lidado com a computação mais perto da borda, mas Glauber Costa, fundador e CEO da ChiselStrike, em um post chamado “What the Heck is Edge?” ressalta que levar a computação ao limite só resolve metade do problema se você estiver fazendo chamadas para um banco de dados centralizado em algum lugar distante.
Embora existam muitas facetas na borda, incluindo dispositivos IoT, 5G e dispositivos inteligentes, plataformas de desenvolvimento de ponta como CloudFlare Workers, Fastly, Netlify ou Vercel estão focadas em tornar aplicativos web mais tradicionais e aplicativos corporativos mais rápidos, colocando mais componentes de aplicativos mais próximos até a borda. Portanto, o pgEdge também está aproximando o banco de dados.
“Para o desenvolvedor de aplicativos da web que está tentando reduzir em milissegundos o desempenho do frontend de seu aplicativo, se você tiver uma viagem de ida e volta ao banco de dados, que provavelmente é algum lugar como Amazon us-east-1, isso levará 100 milissegundos cada vez que você precisar acessar o banco de dados, qualquer trabalho que você esteja fazendo no frontend para otimizar as coisas será sobrecarregado por esse problema de latência de dados”, explicou Merrick.
O engenheiro de software sênior do Cockroach Labs (e contribuidor do TNS), Paul Scanlon, tem rastreado a distância que os dados devem percorrer em cenários extremos da vida real.
A solução da pgEdge é reduzir essa distância com um banco de dados Postgres distribuído.
“Você não vai colocar 400 nós de banco de dados Postgres na rede. Isso seria um pouco excessivo e também desnecessário. Em vez disso, você colocará estrategicamente alguns nós pgEdge em torno da rede, e cada um desses nós poderá receber tráfego de leitura ou gravação. E se você for usá-los em conjunto com plataformas de ponta, como Cloudflare Workers ou Fastly, que é para isso que projetamos isso, você será capaz de obter ótimos tempos de resposta do banco de dados camada”, disse Merrick.
Kinetica é a plataforma de banco de dados em tempo real que aproveita IA generativa e processamento vetorizado para permitir que você pergunte qualquer coisa sobre seus sensores e dados de máquina. Kinetica oferece análises vetorizadas nativas em IA generativa, espacial, de série temporal e gráfico.
Saber mais
As últimas novidades da Kinetica
$(document).ready(function() { $.ajax({ método: ‘POST’, url: ‘/no-cache/sponsors-rss-block/’, headers: { ‘Cache-Control’: ‘no- cache, no-store, must-revalidate’, ‘Pragma’: ‘no-cache’, ‘Expires’: ‘0’ }, dados: { patrocinadorSlug: ‘kinetica’, numItems: 3 }, sucesso: função (dados) { if (data.startsWith(‘ERROR’)) { console.log(data); $(‘.sponsor-note-rss’).hide(); } else { $(‘.sponsor-note-rss-items -kinética’).html(dados); } } }); });
Pure Postgres e sua extensão padrão
Tendo aprendido com a experiência com o EnterpriseDB, eles queriam começar com uma camada de base sólida. Com mais de 35 anos, o Postgres vem ressurgindo recentemente.
“Não reescrevemos o mecanismo de banco de dados abaixo. É o Postgres. Não é compatível com Postgres. Isto é Postgres, e essa é uma distinção importante”, disse Merrick.
Ele também usa o mecanismo de extensão padrão do Postgres. Sua extensão se chama Spock, uma referência ao personagem lógico de Star Trek. É um derivado do pgLogical que fornece replicação lógica multiativa bidirecional (também conhecida como multimestre).
Os nós em um cluster pgEdge podem abranger várias regiões de nuvem e data centers para obter resiliência, disponibilidade e desempenho de alto nível.
O que isso significa para os desenvolvedores, especialmente aqueles que usam a arquitetura JAMStack, de acordo com Merrick:
“Sim, você pode medir o tempo de carregamento da página, mas também é um caminho mais barato e mais fácil para obter aplicativos de banco de dados altamente disponíveis. Porque se você tiver vários nós de leitura/gravação na rede, poderá perder alguns deles, dependendo de quantos você tiver, e tudo continuará funcionando de forma independente. O tráfego pode fazer failover para os nós sobreviventes. Portanto, é um banco de dados distribuído de baixa latência e disponibilidade ultra-alta.”
Você pode ver uma demonstração aqui.
Cada nó executa PostgreSQL padrão (v15) e é mantido atualizado por meio de replicação lógica assíncrona com resolução e prevenção de conflitos configuráveis. Ele oferece prevenção de conflitos delta para manter a consistência dos campos de dados que mantêm somas acumuladas, como saldos financeiros ou contagens de estoque.
Ele também oferece fragmentação geográfica para ajudar os usuários a cumprir regulamentações como o GDPR, que exigem que determinados dados permaneçam dentro de limites geográficos específicos. Ele divide as tabelas em um campo de localização para que alguns dados possam ser mantidos localmente e enquanto o restante seja compartilhado globalmente.
Aplicativos Postgres existentes, poucas ou nenhumas alterações
A empresa saiu do sigilo no início deste mês e anunciou uma rodada de financiamento inicial de US$ 9 milhões. A tecnologia ainda está em beta, com alguns clientes em fase de produção. A empresa está olhando para o terceiro trimestre para disponibilidade geral.
“Para empresas líderes de comércio eletrônico como a nossa, o pgEdge é uma virada de jogo e nos proporcionará carregamentos rápidos de páginas e uma experiência tranquila para o cliente, independentemente de onde nosso cliente esteja localizado”, disse David Ting, CTO da Zenni Optical, acrescentando que o pgEdge também pode “dar aos nossos engenheiros uma base sólida para construir uma nova geração de aplicativos de comércio eletrônico, permitindo que os desenvolvedores desenvolvam em Postgres nativo e ainda tenham as vantagens de um armazenamento de dados distribuído moderno.”
Os usuários do Postgres devem poder usar seus aplicativos Postgres existentes com poucas ou nenhuma alteração, disse Merrick.
“…você pode usar todas as ferramentas que funcionam com o Postgres e muitas das extensões que funcionam com o Postgres. Portanto, (os desenvolvedores podem) usá-lo exatamente da mesma maneira que usam o Postgres hoje, independentemente da forma como seus aplicativos o acessam, das ferramentas que gostam de usar, para gerenciar esquemas e coisas assim. Isso funcionará porque é o Postgres padrão.”
Bill Mitchell, CTO da PublicRelay, uma empresa de análise de mídia SaaS, disse: “Já usamos o pgEdge há alguns meses e estou muito impressionado com seu desempenho e estabilidade. Ter seu recurso de replicação multimestre me permitiu gerenciar e dimensionar facilmente meus bancos de dados PostgreSQL sem problemas. O produto é fácil de gerenciar e isso me economizou muito tempo e esforço.”
Tudo de código aberto
Outros também estão tentando mover o banco de dados para mais perto da borda. A empresa de Costa, ChiselStrike, por exemplo, está atacando o problema de latência com o Turso, banco de dados incorporado compatível com SQLite. EnterpriseDB também possui um produto semelhante ao pgEdge chamado EDB Postgres Distributed (PGD).
Rivais como Cockroach, Yugabyte e outros, ao abordar o problema da borda distribuída, tomaram a decisão de design de usar um banco de dados diferente e, em seguida, colocaram uma camada de compatibilidade no topo, de acordo com Merrick.
“E sabemos, pelo nosso trabalho com a compatibilidade do Oracle, que isso só levará você a 90% do caminho, e os últimos 10% são um pouco matadores”, disse ele.
Um segundo diferencial é que o código-fonte do pgEdge é todo de código aberto e está disponível no GitHub.
A empresa fez toda a sua distribuição do PostgreSQL, uma versão auto-hospedada e autogerenciada chamada pgEdgePlatform, que é gratuita e está disponível para download. Ele também oferece um banco de dados gerenciado como um serviço chamado pgEdge Cloud na AWS e Azure. Você pode participar do beta privado aqui.
A postagem Startup pgEdge aborda a borda distribuída com Postgres apareceu pela primeira vez em The New Stack.