Firebase Realtime Database
Armazene e sincronize dados com nosso banco de dados na nuvem NoSQL. Eles são sincronizados em todos os clientes, em tempo real, e permanecem disponíveis quando o app está off-line.
Principais recursos
Em tempo real | Em vez de solicitações HTTP típicas, o Firebase Realtime Database usa a sincronização de dados. Sempre que os dados são alterados, todos os dispositivos conectados recebem essa atualização em milissegundos. Crie experiências colaborativas e imersivas sem se preocupar com códigos de rede. |
Off-line | Os apps do Firebase permanecem responsivos mesmo off-line, pois o SDK do Firebase Realtime Database mantém seus dados em disco. Quando a conectividade é restabelecida, o dispositivo cliente recebe as alterações perdidas e faz a sincronização com o estado atual do servidor. |
Acessível em dispositivos clientes | O Firebase Realtime Database pode ser acessado diretamente de um dispositivo móvel ou navegador da Web, sem um servidor de aplicativos. A segurança e a validação de dados estão disponíveis por meio de regras de segurança baseadas em expressão do Firebase Realtime Database, executadas quando os dados são lidos ou gravados. |
Escalonar entre vários bancos de dados | Com o Firebase Realtime Database no plano de preços do Blaze, você pode oferecer suporte em grande escala às necessidades de dados do seu app. Para isso, você pode dividir seus dados entre várias instâncias de banco de dados no mesmo projeto do Firebase. Simplifique a autenticação no seu projeto com o Firebase Authentication e autentique usuários nas suas instâncias de banco de dados. Controle o acesso às informações em cada banco de dados com regras de segurança do Firebase Realtime Database personalizadas para cada instância do banco de dados. |
Como funciona?
No Firebase Realtime Database é possível criar aplicativos avançados e colaborativos, ao conceder acesso seguro ao banco de dados diretamente do código do cliente. Os dados são mantidos localmente e, mesmo off-line, os eventos em tempo real continuam sendo acionados, proporcionando uma experiência responsiva ao usuário final. Quando o dispositivo recupera a conexão, o Realtime Database sincroniza as alterações feitas nos dados locais com as atualizações remotas que ocorreram enquanto o cliente estava off-line, mesclando qualquer conflito automaticamente.
O Realtime Database fornece uma linguagem de regras flexíveis baseadas em expressão, denominadas regras de segurança, para definir como os dados são estruturados e quando podem ser lidos e gravados. Por meio da integração com o Firebase Authentication, os desenvolvedores podem definir quem tem acesso, a quais dados e como esses dados podem ser acessados.
O Realtime Database é um banco de dados NoSQL e, por isso, tem otimizações e funcionalidades diferentes de um banco de dados relacional. A API do Realtime Database foi desenvolvida para autorizar apenas operações que possam ser executadas com rapidez. Isso possibilita uma ótima experiência em tempo real que atende a milhões de usuários sem comprometer a capacidade de resposta. Por isso, é importante analisar como os usuários precisam acessar os dados e estruturá-los adequadamente.
Caminho de implementação
Integre os SDKs do Firebase Realtime Database. | Inclua clientes rapidamente por meio do Gradle, do CocoaPods ou da inclusão de um script. | |
Crie referências do Realtime Database. | Faça referência aos seus dados JSON, como "users/user:1234/phone_number", para definir dados ou se inscrever para receber alterações. | |
Defina dados e detecte alterações. | Use essas referências para gravar dados ou se inscrever para receber alterações. | |
Ative a persistência off-line. | Grave dados no disco local do dispositivo para disponibilizá-los off-line. | |
Proteja seus dados. | Use as regras de segurança do Firebase Realtime Database para proteger seus dados. |
Quer armazenar outros tipos de dados?
- O Cloud Firestore é um banco de dados flexível e escalonável para desenvolvimento focado em dispositivos móveis, Web e servidores pelo Firebase e o Google Cloud Platform. Para saber mais sobre as diferenças entre as opções de banco de dados, consulte Escolher um banco de dados: Cloud Firestore ou Realtime Database.
- A Configuração remota do Firebase armazena pares de chave/valor especificados pelo desenvolvedor para alterar o comportamento e a aparência do app sem que os usuários precisem fazer o download da atualização desse aplicativo.
- O Firebase Hosting hospeda os arquivos HTML, CSS e JavaScript do seu site, além de outros recursos disponibilizados pelo desenvolvedor, como gráficos, fontes e ícones.
- O Cloud Storage armazena arquivos como imagens, vídeos e áudio, além de outros conteúdos gerados pelo usuário.
Próximas etapas:
- Definir dados e detectar alterações usando os SDKs para plataformas Apple, Android, Web, Admin ou a API REST
- Adicionar o Firebase Realtime Database ao seu app Apple, Android ou Web.
- Aprender a proteger seus arquivos usando as regras de segurança do Firebase Realtime Database.