Header Ads

Como funciona o Firebase Realtime Database do Google?

O Firebase é um pacote de back-end como serviço do Google, projetado para simplificar os back-ends de dispositivos móveis. Embora ofereça muitos recursos, no centro está o Firebase Realtime Database, um banco de dados sem servidor que pode escalar para milhões de usuários.

O que é Firebase?

O Firebase é um pacote completo de produtos que oferece muitos recursos, como autenticação simplificada, hospedagem na nuvem, aprendizado de máquina, análise e monitoramento de falhas. No entanto, o serviço que deu início a tudo é o Firebase Realtime Database, um banco de dados NoSQL que os clientes podem assinar por meio de WebSockets.

Dados em tempo real significam que todas as atualizações feitas no banco de dados serão enviadas para aplicativos clientes inscritos nesse fluxo de dados. Um bom exemplo é um aplicativo de bate-papo — novas mensagens enviadas pelo usuário A atualizarão o banco de dados, e os usuários B e C receberão essas atualizações, onde seus aplicativos clientes as exibirão como uma nova mensagem.

Claro, isso é possível sem o Firebase — o MongoDB pode obter o mesmo efeito, e o RethinkDB foi desenvolvido em torno do conceito. Mas é certamente um recurso muito bom de se ter e, combinado com todos os outros serviços que oferece, torna o Firebase uma alternativa real para construir seu próprio back-end móvel.

Quanto aos dados reais, o Firebase é um banco de dados de armazenamento de documentos, muito semelhante a outros bancos de dados NoSQL que usam este modelo, como o MongoDB. Ambos não têm esquemas, permitindo que você armazene dados em qualquer formato que atenda às suas preferências.

Os dados no Firebase são armazenados em uma grande árvore JSON. Cada ramo da árvore pode ser modificado à vontade, e mudanças em ramos específicos (como / users / anthony /) podem ser inscritos, permitindo que o cliente ouça as atualizações.

Por exemplo, em JS, você pode obter uma referência a um local de banco de dados específico, como a contagem de curtidas em uma postagem específica. Em seguida, você pode chamar ref. on () e passar uma função de retorno de chamada para ser executado sempre que o cliente Firebase receber uma atualização

 var LikesRef = firebase. database (). ref ('posts /' + postId + '/ likes'); LikesRef. on ('value', function (snapshot) {updateLikes (postElement, snapshot. val ());});[/PRÉ]

Obviamente, você também pode buscar dados apenas uma vez, se não precisar de uma assinatura em tempo real.

O Firebase em geral não terá o desempenho de seu próprio banco de dados dedicado em execução em seu próprio servidor, mas deve ser mais do que adequado para a maioria dos aplicativos. Se você está procurando desempenho, mas ainda deseja usar a plataforma Firebase, pode querer dar uma olhada no Firestore — uma solução de banco de dados alternativa no pacote Firebase. Embora ambos ainda sejam bancos de dados de documentos, o Firestore é um pouco mais estruturado. Em vez de ser uma árvore JSON gigante, o Firestore armazena documentos separados, que podem ter sua própria estrutura. Ele ainda é capaz de atualizações em tempo real, mas é mais adequado para aplicativos que precisam realizar consultas avançadas.

O Firestore é mais comparável a um banco de dados como serviço tradicional, como o RDS da AWS, embora você ainda não precise se preocupar com os servidores. Se desejar saber mais sobre isso, você pode ler a visão geral do Google sobre as diferenças entre as duas ofertas.

Quanto custa?

O Firebase tem uma camada gratuita bastante generosa para desenvolvimento e pequenos aplicativos. Se você tiver menos de 100 usuários simultâneos e menos de 50.000 / 20.000 operações diárias de leitura / gravação, poderá usar o Firebase gratuitamente.

Depois de ultrapassar isso, o preço é pago conforme o uso. Você pode usar a calculadora para determinar quanto estará pagando, dependendo do uso. O preço é baseado em GB armazenados e transferidos por mês para Firebase, bem como por operação de leitura / gravação para Firestore.

Se você estiver usando outros recursos do Firebase, também poderá ser cobrado por eles. Por exemplo, Hosting, Cloud Functions e Phone auth têm seus próprios encargos associados.

Nenhum comentário