BT

Disseminando conhecimento e inovação em desenvolvimento de software corporativo.

Contribuir

Tópicos

Escolha a região

Início Notícias dbKoda 1.0: experiência de usuário e laboratório de desempenho para MongoDB

dbKoda 1.0: experiência de usuário e laboratório de desempenho para MongoDB

Favoritos

Menos de um ano após o lançamento, a Southbank Software recentemente disponibilizou a versão 1.0 emblemática de seus produtos, o dbKoda, ferramenta de open source para desenvolvimento de bases de dados para MongoDB. O dbKoda é um editor de textos, construtor de agregações gráficas, e dashboard de desempenho.

Baseado na devolutiva dos usuários, a Southbank Software re-estruturou a interface de usuários para a versão 1.0. Os desenvolvedores podem encontrar:

  • Barra de acesso rápido;
  • Opções de clique esquerdo que apenas estavam em opções de clique direito;
  • Sub-painéis da aplicação que agora podem ser escondidos para maximizar o estado real da tela;
  • Resultado de consultas disponibilizadas em formato tabular (ao invés do formato usual JSON) por padrão;
  • Um formato interativo melhorado de conexão que inclui suporte a clusters do MongoDB.

O dashboard de tempo real, apresentado na versão 0.10.0, foi atualizado e tornou-se parte integral do novo Laboratório de Desempenho que inclui a visão das Principais Conexões, uma utilidade para identificar as conexões de bases de dados mais ativas, e uma visão de Profile Explorador, uma utilidade para capturar e explorar operações capturadas pelo profile. Ambas utilidades geram códigos correspondentes de MongoDB para várias operações nesta bases de dados.

O dbKoda agora suporta conexões ao MongoDB ao invés de imagens Docker e não necessita que haja uma instalação local do MongoDB disponível. Isto é possível apenas por configurar o Docker no arquivo config.yml do dbKoda:

    
dockerEnabled: true
docker:
  mongoCmd: docker run -it --rm mongo mongo
  mongoVersionCmd: docker run --rm mongo mongo --version
    

Por padrão, a propriedade dockerEnabled no config.yml é configurado para false e outras propriedades são, na maior parte, definidas como vazias. Como mostrado a seguir, há outros ajustes no MongoDB que pode ser configurados.

    
dockerEnabled: false
docker:
  createNew: true
  imageName: ''
  containerID: ''
  hostPath: ''
  containerPath: ''
  mongoCmd: ''
  mongorestoreCmd: ''
  mongodumpCmd: ''
  mongoexportCmd: ''
  mongoimportCmd: ''
  mongoVersionCmd: ''
    

Guy Harrison, CTO na Southbank Software, conversou com o InfoQ sobre este lançamento.

InfoQ: Em relação aos lançamentos recentes do MongoDB 4.0 apresentadas no evento MongoDB World 2018, como é que estas atualizações do MongoDB afetam os desenvolvimentos de dbKoda ou a experiência de seus usuários?

Guy Harrison: Testamos com a versão beta do MongoDB 4.0 por alguns meses até agora, e estamos confiantes que dbKoda está 100% pronto para estar na versão MongoDB 4.0.

O MongoDB 4.0 é uma versão que não trará dores. Apenas se implementar as novas funcionalidades de transações, o que precisam de alterações de códigos, será percebido os novos comportamentos. As transações na realidade são grandes desafios ao MongoDB, embora seja engraçado lembrar que neste aspecto eles estão implementando uma funcionalidade que foi visto pela primeira vez em bancos de dados comerciais em meados da década de 1980.

Os desenvolvedores provavelmente acharão as transações simples o suficiente quando usarem em seus códigos, a sintaxe é muito similar a qualquer um que já tenha usado uma base de dados SQL, mas o impacto de desempenho será bem mais difícil de gerenciar. Estamos tentando introduzir algum suporte para refinamentos de transações numa versão futura do dbKoda.

InfoQ: O que faz do dbKoda único dentre outras ferramentas de gerenciamento do MongoDB como Compass ou Robo 3T?
 

Harrison: Há definitivamente uma sobreposição entre as várias ferramentas do MongoDB e IDEs e prefiro não fazer afirmações sobre outros produtos. Diria que, entretanto, avançamos bem em duas principais áreas: gerenciamento de desempenho e codificação. Enquanto provemos métodos GUI para gerenciamento de tarefas, construção de agregações, consultas, administração de performance, etc, sempre geramos o código que é usado para fazer alguma tarefa e colocamos o código nas mãos dos usuários - a filosofia é que todas as ações devem ser representadas com código.

No gerenciamento de desempenho, providenciamos um laboratório de desempenho que acreditamos que permitirá de longe uma rica e poderosa plataforma visual de gerenciamento em tempo real do MongoDB que já tenha sido disponibilizada em algum outro lugar.

Gostaria de também apontar que, diferente de outras ferramentas que foram mencionadas, dbKoda é open source (licença AGPL).

InfoQ: O MongoDB ainda é a única base de dados suportada? Em caso positivo, quais são os planos de adicionar um suporte para outras bases de dados?

Harrison: Por agora, dbKoda suporta apenas o MongoDB, não esperamos trabalhar com outro sistema de banco de dados em um futuro próximo.

InfoQ: O que mais nossos leitores deveriam saber sobre o dbKoda?

Harrison: Na Realidade, gostaríamos que os usuários dissessem o que eles gostam do produto. É gratuito e open source, então não há razões para deixar de fora uma tentativa inicial. Até hoje, implementamos todas as funcionalidades solicitadas pelos nossos usuários finais, então se querem uma ferramenta que faça alguma função específica em alguma tarefa do MongoDB, nos diga!

InfoQ: Agora que alcançaram esta grande marca, o que esperam a seguir para o dbKoda?

Harrison: Temos algo grande ainda em desenvolvimento que irá trabalhar em conjunto com dbKoda, terei que fazer mistério sobre isso por mais um pouquinho de tempo! Achamos que o dbKoda por si próprio possui um rico conjunto de funcionalidades, então trabalharemos duro para melhorar, facilitar o uso e aumentar a estabilidade para as próximas versões que forem disponibilizadas.

Avalie esse artigo

Relevância
Estilo/Redação

Conteúdo educacional

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

BT