paint-brush
Como criar bancos de dados líderes mundiaispor@jackboreham
1,226 leituras
1,226 leituras

Como criar bancos de dados líderes mundiais

por Jack Boreham2022/10/13
Read on Terminal Reader
Read this story w/o Javascript

Muito longo; Para ler

Jaxon Repp é vice-presidente sênior da HarperDB, uma plataforma de desenvolvimento e banco de dados líder mundial que lidera o mercado em termos de desempenho, flexibilidade e facilidade de uso. HarperDB é construído para escalar horizontalmente, então não há limite para a taxa de transferência que você pode alcançar com um cluster. Ele combina um armazenamento de dados sem SQL de alto desempenho com semântica SQL e um servidor de API integrado desenvolvido pela Fastify. A função de Repp na HarperDB e a carreira até o momento (que inclui 8 startups), que é um nível totalmente diferente de tração.

People Mentioned

Mention Thumbnail
Mention Thumbnail

Companies Mentioned

Mention Thumbnail
Mention Thumbnail
featured image - Como criar bancos de dados líderes mundiais
Jack Boreham HackerNoon profile picture

Jason Repp é vice-presidente sênior da HarperDB, uma plataforma de desenvolvimento e banco de dados líder mundial que lidera o mercado em termos de desempenho, flexibilidade e facilidade de uso. Tivemos o prazer de apresentar Jaxon em um de nossos Slogging AMAs.

Este tópico de Slogging de Jack Boreham, Mónica Freitas, Jaxon Repp, Margo McCabe, Terry Jones, Jason Green, John T., Mark Finnigan, Cris Silva, Jack swift e Limarc Ambalina ocorreu no canal oficial #amas do slogging e foi editado para legibilidade.

Jack Boreham 21 de setembro de 2022, 14h35

Olá @channel, é um prazer dar as boas-vindas ao vice-presidente sênior de produtos da HarperDB.

O HarperDB é um banco de dados distribuído SQL e NoSQL e uma plataforma de desenvolvimento que cria uma magnitude absoluta mais rapidamente do que as alternativas.

Com o HarperDB, você obtém flexibilidade, desempenho e facilidade de uso que superam as expectativas para todos os cenários de implantação, incluindo casos de uso em nuvem, borda, local, ponto a ponto e multiimplantação.

Você pode perguntar a ele qualquer coisa sobre:

  • Como o HarperDB é diferente de outros bancos de dados?
  • Como a computação de borda/distribuída pode melhorar a latência e reduzir custos e complexidade?
  • Sua função na HarperDB e carreira até o momento (que inclui 8 startups)? A próxima versão 4.0 do HarperDB?
  • Perguntas sobre startups, bancos de dados, desenvolvimento de aplicativos/produtos, UX, SaaS e quaisquer outras questões urgentes
Mónica Freitas 21 de setembro de 2022, 14h38

Oi! Prazer em conhecê-lo! Quero começar com isso: 8 STARTUPS?! Uau! Você pode nos contar um pouco sobre isso?

Jack Boreham 21 de setembro de 2022, 14h42

Oi prazer em tê-lo conosco. Você pode nos dar uma breve visão geral do seu histórico?

Jaxon Repp 21 de setembro de 2022, 14h46

Olá Jack Boreham & Mónica Freitas!

Comecei como desenvolvedor em uma agência digital, mas queria encontrar um produto que pudesse amar e nutrir além do escopo do envolvimento de um cliente. Ser capaz de usar muitos chapéus, inventar uma experiência e trabalhar com uma equipe pequena é onde eu prospero.

Das 8 startups, tive duas “saídas”, 5 “oportunidades de aprendizado” e agora HarperDB, que é um nível totalmente diferente de tração.

Às vezes ainda escrevo código, o que me mantém são.

Margo McCabe 21 de setembro de 2022, 15h

Conte-nos mais sobre o Harperdb!

Jaxon Repp 21 de setembro de 2022, 15h23

O HarperDB é uma plataforma de aplicativos distribuídos com persistência integrada. Ele combina um armazenamento de dados noSQL de alto desempenho com semântica SQL e um servidor de API integrado alimentado por Fastify.

💜 1
Jack Boreham 21 de setembro de 2022, 15h24

Obrigado, então por que seu banco de dados é o mais rápido?

Jaxon Repp 21 de setembro de 2022, 16h23

O Jack Boreham HarperDB é construído sobre o LMDB, um armazenamento de valor-chave mapeado em memória extremamente rápido. Podemos lidar com 20.000 gravações/segundo e 120.000 leituras/segundo… para seus usuários, você elimina a latência associada a um armazenamento de dados monolítico localizado em us-west-2.

Terry Jones 21 de setembro de 2022, 15h30

Como é construir uma startup?

Jaxon Repp 21 de setembro de 2022, 16h35

É um passeio selvagem. Desde a visão inicial até a adequação do produto ao mercado, ser capaz de inventar uma nova maneira de fazer algo, testá-la no mundo real, aprender com suas suposições e descobrir todas as partes de um negócio além do produto em si... coisa mais divertida e desafiadora que já fiz.

A certa altura, arranjei um emprego em uma empresa da Fortune 50 porque minha esposa estava grávida e eu precisava de seguro saúde ... os 2 anos mais longos da minha vida. Nunca mais.

Mónica Freitas 21 de setembro de 2022, 17h28

como você descreveria sua função na HarperDB?

Jaxon Repp 21 de setembro de 2022, 18h18

Mónica Freitas, sou chefe de produto, marketing e entrega, por isso uso muitos chapéus. Em última análise, tudo se resume a permanecermos fiéis à nossa missão como desenvolvedores - facilitar a criação e a implantação de software escalável. Os dados distribuídos são um problema desafiador, mas as recompensas quando você faz isso direito são mais economia para nossos clientes e uma melhor experiência para seus usuários. Portanto, enquanto nossa equipe de engenharia resolve a mecânica realmente difícil de reconciliar dados em uma rede global, eu uso o feedback do cliente e a experiência pessoal para descobrir como o produto em si alcançará toda a mágica sem adicionar complexidade para os desenvolvedores.

🔥 1
John T. 21 de setembro de 2022, 17h30

Olá! Qual é o maior desafio ao desenvolver uma startup?

Jaxon Repp 21 de setembro de 2022, 18h25

John T. Os dois maiores desafios são formar a equipe e encontrar o produto adequado ao mercado.

Tenho a sorte de trabalhar com algumas das pessoas mais inteligentes que conheço para resolver esse problema - é uma sensação incrível quando você sabe que sua equipe é totalmente capaz de entregar tudo o que o produto precisa com um mínimo de supervisão. Afinal, não somos muitos.

Encontrar o ajuste do mercado do produto é o outro. Por melhor que seja em sua mente ou como um protótipo, você deve ser resiliente quando o feedback do mundo real começar a dizer que alguns de seus palpites estavam errados. As startups não são ótimas para pessoas que não aceitam feedback do mercado e giram... tivemos muitas oportunidades de aprender nos últimos 5 anos, e isso só tornou o produto melhor... mas também pode ser uma fonte de frustração se seu novo recurso favorito acaba sendo descartado.

Mark Finnigan 21 de setembro de 2022, 17h34

Prazer em conhecê-la. Como você explica o HarperDB em termos leigos?

Jaxon Repp 21 de setembro de 2022, 18h28

Mark Finnigan, somos um banco de dados com um servidor de API configurável pelo usuário embutido e a capacidade de conectar quantos nós você precisar para fornecer dados aos usuários finais o mais rápido possível, não importa onde eles estejam no mundo.

Cris Silva 21 de setembro de 2022, 17h38

Olá, qual é o seu público-alvo principal?

Jaxon Repp 21 de setembro de 2022, 18h36

Cris Silva, atualmente, estamos visando dois tipos principais de clientes: grandes provedores de rede (Verizon, Akamai, Google, etc.) que podem se beneficiar da movimentação de dados para a borda para melhorar o desempenho dos aplicativos de seus clientes. Mover dados para o edge reduz a latência, então é uma vitória imediata e uma venda fácil.

O outro grupo é SMB/pequenas empresas que estão enfrentando problemas de dimensionamento, especificamente os custos exponenciais associados ao dimensionamento vertical de um armazenamento de dados monolítico e/ou implementações de API/sem servidor. Nosso modelo foi criado para fornecer uma relação custo-capacidade linear por meio de escala horizontal - se um nó pode lidar com 10.000 usuários por US$ 100/mês, então 2 nós podem lidar com 20.000 usuários por US$ 200/mês.

O HarperDB foi projetado para ser a primeira e a última plataforma de aplicativos de que você precisará, em vez de trocar seu banco de dados v1 por algo mais capaz assim que você ganhar força.

Jack Boreham 22 de setembro de 2022, 8h13

Quais são esses tipos de palpites que você mencionou quando percebeu que precisava mudar de rumo?

Jaxon Repp 22 de setembro de 2022, 17:00

Jack Boreham Sabíamos que queríamos resolver o throughput usando uma arquitetura distribuída, mas como os usuários interagiriam com nosso produto para provisioná-lo, configurá-lo e implantá-lo foi baseado em nossa experiência. Quando você leva isso para o mercado, você se depara com políticas organizacionais e relacionamentos estratégicos que exigem maior flexibilidade.

Um ótimo exemplo é o backup e a restauração. Nossa solução é do tipo instantâneo, mas muitas empresas estão usando ferramentas de nível de infraestrutura que requerem operações diferentes para se alinhar com a forma como esses sistemas criaram e restauraram backups.

Outro é nosso recurso Custom Functions, que é nosso servidor Fastify autônomo que permite que você crie seus próprios lambdas. Isso nem estava no produto original, mas procuramos um grande cliente que precisava do banco de dados distribuído para viver perto de sua enorme pegada sem servidor... pensamos: "Bem, não pode ficar mais perto do que construí-lo, vamos fazer isso."

Mónica Freitas 22 de setembro de 2022, 13h09

Quais são os maiores marcos do HarperDB? Ou aqueles de quem você mais se orgulha?

Jaxon Repp 22 de setembro de 2022, 17h04

Mónica Freitas, eu diria a nossa função Custom Functions. Parece óbvio agora, mas as complexidades da computação distribuída são mais do que suficientes para confundir os clientes que não estão familiarizados com o conceito, então qualquer coisa que possamos fazer para simplificar a infraestrutura em torno dela traz enormes recompensas. Acho que isso reflete todas as maneiras como nos concentramos na experiência do desenvolvedor.

Deve funcionar.

Então é nisso que nos concentramos todos os dias.

🔥 2
John T. 22 de setembro de 2022, 13h12

Esses são aspectos muito importantes, mas não são fáceis de combinar. Como você constrói a equipe perfeita? A quais fatores você presta muita atenção ao escolher as pessoas que irão ajudá-lo a crescer e desenvolver sua ideia? Presumo que este seja um aspecto crucial para o sucesso de qualquer startup

Jaxon Repp 22 de setembro de 2022, 17h10

John T. Você está certo. Ironicamente, esta organização não tinha uma política muito clara sobre quem contratar, exceto pessoas que sabíamos que poderiam fazer o trabalho para o qual estávamos sendo contratados. Mas ao longo do caminho, aprendemos que para cada desenvolvedor 10x, você geralmente precisa de alguém com personalidade para gerenciá-lo para o sucesso.

Estamos todos trabalhando juntos e todos temos conjuntos de habilidades diferentes. Todos na HarperDB fizeram o teste de personalidade Meyers Briggs, e as equipes de melhor desempenho foram aquelas em que cada pessoa cujo tipo de personalidade terminava em J era emparelhada com alguém cujo tipo de personalidade terminava em P. Este exemplo funcionou para nós e pode não funcionar para todos, mas é extremamente útil quando você olha para o nosso pequeno universo e como obtemos sucesso com tão poucas pessoas tentando realizar algo tão grande.

Cris Silva 22 de setembro de 2022, 13h15

Isso é ótimo! Estou particularmente interessado na parte dos pequenos negócios. Como tem sido a adoção do seu produto pelas pequenas empresas? Você notou algum desafio específico ou necessidade comum entre esses negócios?

Jaxon Repp 22 de setembro de 2022, 17h14

Cris Silva As pequenas empresas têm sido um interessante alvo de vendas. Eles geralmente vêm até nós com um produto que está passando por problemas de crescimento e estão procurando uma solução mais escalável que não estoure o orçamento. A chave, pensamos, foi fazer com que os desenvolvedores nos conhecessem e nos amassem antes que alguém da administração tentasse nos implementar de cima para baixo.

Empresas menores depositam muito mais confiança em seus desenvolvedores e, se esses desenvolvedores nunca ouviram falar de nós, isso leva a mais resistência do que nossa plataforma de autoatendimento normalmente pode superar sozinha... consultoria e serviços profissionais, o que não é nossa estratégia de longo prazo.

Jack Swift 22 de setembro de 2022, 16h30

Você pode dar exemplos de empresas que usaram o HarperDB?

Jack Boreham 23 de setembro de 2022, 8h48

Como você vê o encaixe do HarperDB no metaverso?

Jaxon Repp 26 de setembro de 2022, 17h52

Jack Boreham, acho que o metaverso parece um caso de uso ideal para um sistema distribuído… à medida que ganha popularidade, muitos metadados precisarão ser disponibilizados para uma base de usuários distribuída globalmente… e a consistência eventual para coisas como presença ou comunicação é um ajuste perfeito para a nossa plataforma. Dito isto, há muito para descobrir… é certamente um espaço interessante para assistir.

Mónica Freitas 23 de setembro de 2022, 13h30

Esse é um recurso fantástico. Quanto tempo você diria que é a curva de aprendizado até que um novo cliente possa entender totalmente sua plataforma?

Jaxon Repp 26 de setembro de 2022, 18:00

Mónica Freitas O edge computing reduz a latência ao aproximar as aplicações – e os dados, no caso do HarperDB – do utilizador. Mover as APIs para mais perto do usuário com tecnologia sem servidor, como o AWS Lambda, reduz o tempo necessário para se conectar à API, mas se essa API tiver que fazer uma viagem de ida e volta para us-west-1, a latência estará de volta na mesa para alguém em Sydney ou Saigon.

Os sistemas distribuídos reduzem o custo adicionando capacidade ao longo de uma curva de custo linear (escala horizontal), em vez de aumentar os recursos para um cluster centralizado (escala vertical), que segue uma curva de custos exponencial.

A menor complexidade é alcançada abstraindo parte da lógica de conectividade entre os nós, algo em que gastamos muito tempo. Gostamos de pensar que estamos trabalhando em uma plataforma que mudará a maneira como as pessoas pensam - ou não precisam pensar - sobre sistemas distribuídos.

Mónica Freitas 23 de setembro de 2022, 13h31

Além disso, como o Edge e a computação distribuída podem melhorar a latência e reduzir custos e complexidade?

Jaxon Repp 26 de setembro de 2022, 17h54

Mónica Freitas A curva de aprendizagem do HarperDB é extremamente rápida. O conhecimento básico de NodeJS é tudo o que é necessário para o desenvolvimento de Custom Functions, mas antes disso, imagine um armazenamento de documentos tão fácil de usar quanto o MongoDB com uma API http integrada para interagir com ele. Adicione nosso estúdio baseado na web que permite que você veja e consulte seus dados sem instalar nada, e é realmente a melhor experiência de desenvolvedor que existe.

John T. 23 de setembro de 2022, 13h42

Abordagem interessante 👏 no mínimo, é uma estratégia divertida de formação de equipe. Qual é o tamanho da sua equipe atualmente? E como você planeja expandir o HarperDB?

Cris Silva 23 de setembro de 2022, 13h44

Então você espera ter uma plataforma totalmente independente sem os bits de consultoria?

Jaxon Repp 26 de setembro de 2022, 18h02

Cris Silva Idealmente, sim. Gosto de seguir o modelo da Zappos. O CEO deles disse a famosa frase: “Se alguém liga para o número 800 com um problema, nós falhamos e devemos fazer tudo o que pudermos para refinar nosso processo para que ninguém ligue para esse número”.

Trabalhamos muito para que qualquer pessoa possa implantar o HarperDB sem ler a documentação.

Mark Finnigan 23 de setembro de 2022, 13h44

Como você se diferencia dos concorrentes atuais no domínio dos dados?

Jaxon Repp 26 de setembro de 2022, 18h05

Mark Finnigan Achamos que temos a melhor experiência de desenvolvedor, na maioria das vezes somos um pouco mais rápidos e tomamos algumas decisões básicas de design para reduzir o custo total de propriedade, como indexar tudo por padrão, o que reduz o necessidade de um DBA para otimizar suas consultas.

Porém, existem muitos jogadores por aí, então aceitamos que cada um tem sua melhor característica… estamos apenas apostando que a simplicidade vai importar muito mais do que a maioria deles parece pensar que é.

Limarc Ambalina 25 de setembro de 2022, 14h

Ei, obrigado por se juntar a nós aqui no Slogging!

Limarc Ambalina 25 de setembro de 2022, 14h02

Espero não estar muito atrasado! Minha pergunta é sobre startups versus corporações. Você disse: "A certa altura, consegui um emprego em uma empresa da Fortune 50 porque minha esposa estava grávida e eu precisava de seguro saúde ... os 2 anos mais longos da minha vida. Nunca mais."

O que você não gostou no mundo corporativo? O que você achou mais diferente sobre como as carreiras funcionam em empresas maiores em relação aos cargos que você teve em startups?

Jaxon Repp 25 de setembro de 2022, 14h13

Olá, Limarc Ambalina… Lamento não ter respondido às últimas perguntas, mas basta dizer que é emocionante ter a chance de discutir os benefícios das arquiteturas de computação distribuída e nosso objetivo de facilitar o alcance dos desenvolvedores.

Para responder à sua pergunta, porém, gosto do imediatismo de empresas menores. HarperDB Studio (https://studio.harperdb.io) foi algo que construí a versão 1 durante um fim de semana. Nosso slogan é “Simplicidade sem sacrifício”, e enquanto nos esforçamos para abstrair a complexidade dos sistemas distribuídos, meus colegas de trabalho e eu definimos as abstrações que realizam isso todos os dias.

Em meu show corporativo, esperei 8 meses para que um único SQL Server fosse provisionado para dar suporte a um aplicativo que economizava US$ 5 milhões/ano para a empresa rodando na AWS, mas como tínhamos um produto de nuvem “competitivo”, tive que fornecê-lo in-house… depois de 8 meses, eu tinha certeza de que precisava trabalhar em algum lugar “competitivo” significava o que eu pensava.

Jack Boreham 27 de setembro de 2022, 9h29

Obrigado por reservar um tempo para conversar conosco. Quaisquer pensamentos finais que você queira dar aos nossos leitores? Como as pessoas podem encontrar vocês se quiserem aprender mais?

Jaxon Repp 27 de setembro de 2022, 13h23

Jack Boreham, obrigado também!

Meu pensamento final é o seguinte: o desempenho em escala é sempre um equilíbrio. Isso é verdade para bancos de dados e também para empresas. Tudo o que você pode fazer é encontrar os sistemas e processos que funcionam para você e sua equipe e otimizá-los continuamente à medida que você cresce. Nem sempre é fácil ou divertido, mas não precisa ser tão difícil quanto alguns de nós o fazem... a humanidade é um sistema distribuído, afinal, e quanto mais transparentes formos com as informações, melhor tendemos a ser.

Crie uma instância gratuita em https://harperdb.io e crie algo que mude o mundo.