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.
Realtime Database
Cloud Firestore
RecomendávelO Firebase Realtime Database é um banco de dados hospedado na nuvem. Os dados são armazenados como JSON e sincronizados em tempo real para cada cliente conectado. Quando você cria apps multiplataforma com nossos SDKs para plataformas Apple, Android e JavaScript, todos os seus clientes compartilham uma instância do Realtime Database e recebem automaticamente atualizações com os dados mais recentes.
Como alternativa, use o Cloud Firestore para apps modernos que exigem modelos de dados mais avançados, capacidade de consulta e escalonabilidade e maior disponibilidade.
Pronto para começar? Escolha sua plataforma:
Principais recursos
Em tempo real | Em vez de solicitações HTTP comuns, a sincronização de dados é usada pelo Firebase Realtime Database e, sempre que os dados são alterados, essa atualização é transmitida ao dispositivo conectado em milissegundos. Ofereça experiências colaborativas e imersivas sem pensar em códigos de rede. |
Off-line | A capacidade de resposta dos apps do Firebase é mantida mesmo off-line, porque os dados são mantidos no disco pelo SDK do Firebase Realtime Database. Quando a conectividade é restabelecida, o dispositivo cliente recebe as alterações que perdeu, sincronizando-as 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 das regras de segurança do Firebase Realtime Database, que são regras baseadas em expressões 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 Blaze, é possível oferecer suporte em grande escala às necessidades de dados do app. Para isso, você pode dividir os dados entre várias instâncias de banco de dados no mesmo projeto do Firebase. Simplifique a autenticação com o Firebase Authentication no projeto e autentique usuários nas instâncias de banco de dados. Controle o acesso aos dados em cada banco de dados com Firebase Realtime Database Security Rules personalizado para cada instância de banco de dados. |
Como funciona?
O Firebase Realtime Database permite criar apps avançados e colaborativos, autorizando o acesso seguro ao banco de dados diretamente do código do lado 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 oferece uma linguagem de regras flexível e baseada em expressões, chamada de regras de segurança do Firebase Realtime Database, 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 de qual maneira.
O Realtime Database é um banco de dados NoSQL e, por isso, tem diferentes otimizações e recursos em comparação com um banco de dados relacional. A API do Realtime Database foi projetada para permitir apenas operações que possam ser executadas com rapidez. Assim, é possível criar uma experiência incrível e em tempo real capaz de atender 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. | |
Criar 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. | |
Proteger seus dados | Use as regras de segurança do Firebase Realtime Database para proteger seus dados. |
Armazenar outros tipos de dados
- O Cloud Firestore é um banco de dados flexível e escalonável para desenvolvimentos focados em dispositivos móveis, Web e servidores pelo Firebase e o Google Cloud. Para saber mais sobre as diferenças entre as opções de bancos de dados, consulte Escolher um banco de dados: Cloud Firestore ou Realtime Database.
- O Firebase Remote Config armazena pares de chave-valor especificados pelo desenvolvedor para alterar o comportamento e a aparência do app sem exigir que os usuários façam o download de uma atualização.
- 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.
- Cloud Storage armazena arquivos como imagens, vídeos e áudios, além de outros conteúdos gerados pelo usuário.
Próximas etapas:
- Definir dados e detectar alterações usando os SDKs Admin, para plataformas Apple, para Android e para Web ou a API REST.
- Adicione o Firebase Realtime Database ao app para Apple, Android ou Web.
- Saiba como proteger arquivos usando o Firebase Realtime Database Security Rules.