Firebase Realtime Database
NoSQL 클라우드 데이터베이스로 데이터를 저장하고 동기화하세요. 모든 클라이언트에서 실시간으로 데이터가 동기화되고 앱이 오프라인일 때도 데이터를 사용할 수 있습니다.
Realtime Database
Cloud Firestore
권장Firebase Realtime Database는 클라우드 호스팅 데이터베이스입니다. 데이터는 JSON으로 저장되며 연결된 모든 클라이언트에 실시간으로 동기화됩니다. Apple 플랫폼, Android, JavaScript SDK로 크로스 플랫폼 앱을 개발하면 모든 클라이언트가 하나의 Realtime Database 인스턴스를 공유하고 자동 업데이트로 최신 데이터를 수신합니다.
또는 더 풍부한 데이터 모델, 쿼리 가능성, 확장성, 가용성이 필요한 최신 애플리케이션에는 Cloud Firestore를 사용해 보세요.
시작할 준비가 되셨나요? 플랫폼을 선택하세요.
주요 기능
실시간 | Firebase Realtime Database는 일반적인 HTTP 요청이 아닌 데이터 동기화를 사용하므로 데이터가 변경될 때마다 연결된 모든 기기가 수 밀리초 내에 업데이트를 수신합니다. 따라서 네트워크 코드를 고려하지 않아도 몰입 가능한 협업 환경을 조성할 수 있습니다. |
오프라인 | Firebase Realtime Database SDK는 데이터를 디스크에 유지하므로 Firebase 앱이 오프라인일 때도 원활하게 작동합니다. 네트워크에 다시 연결되면 클라이언트 기기가 놓쳤던 변경사항이 모두 수신되어 현재 서버 상태와 동기화됩니다. |
클라이언트 기기에서 액세스 가능 | Firebase Realtime Database를 휴대기기 또는 웹브라우저에서 직접 액세스할 수 있으므로 애플리케이션 서버가 불필요합니다. 데이터를 읽거나 쓸 때 실행되는 표현식 기반 규칙인 Firebase Realtime Database 보안 규칙을 통해 보안 및 데이터 검증이 제공됩니다. |
여러 데이터베이스에서 규모 조정 | Firebase Realtime Database에 Blaze 요금제를 적용하면 한 Firebase 프로젝트에서 여러 데이터베이스 인스턴스로 데이터를 분할하여 규모에 따라 유연하게 앱의 데이터 수요를 감당할 수 있습니다. 프로젝트에서 Firebase Authentication으로 인증 작업을 간소화하고 데이터베이스 인스턴스 전체에서 사용자를 인증하세요. 각 데이터베이스 인스턴스에 대한 커스텀 Firebase Realtime Database Security Rules을 사용하여 각 데이터베이스의 데이터 액세스를 제어하세요. |
기본 원리
Firebase Realtime Database로 클라이언트 측 코드에서 데이터베이스에 직접 안전하게 액세스하여 다기능 협업 애플리케이션을 개발할 수 있습니다. 데이터가 로컬에 유지되고 오프라인일 때도 실시간 이벤트가 계속 발생하므로 최종 사용자에게 원활한 환경이 제공됩니다. 기기가 다시 연결되면 Realtime Database가 클라이언트가 오프라인 상태일 때 발생한 원격 업데이트와 로컬 데이터 변경사항을 동기화하여 모든 충돌 사항을 자동으로 병합합니다.
Realtime Database가 제공하는 유연한 표현식 기반 규칙 언어인 Firebase Realtime Database 보안 규칙을 통해 데이터의 구조 및 데이터를 읽거나 쓸 수 있는 조건을 정의할 수 있습니다. 개발자는 Firebase Authentication과 통합하여 사용자의 데이터 액세스 권한 및 액세스 방법을 정의할 수 있습니다.
Realtime Database는 NoSQL 데이터베이스로서 최적화 방식과 기능성이 관계형 데이터베이스와 다릅니다. Realtime Database API는 오로지 작업 실행 속도를 위주로 설계되었으므로 수백만 사용자가 실시간으로 쾌적하고 원활하게 이용할 수 있는 탁월한 실시간 환경을 구축할 수 있습니다. 따라서 사용자의 데이터 액세스 방법을 미리 계획하고 적절히 구조화하는 것이 중요합니다.
구현 경로
Firebase Realtime Database SDK 통합 | Gradle, CocoaPods 또는 스크립트 포함을 사용하여 클라이언트를 빠르게 통합합니다. | |
Realtime Database 참조 만들기 | 데이터를 설정하거나 변경을 구독할 'users/user:1234/phone_number'와 같은 JSON 데이터를 참조합니다. | |
데이터 설정 및 변경 수신 대기 | 이러한 참조를 사용하여 데이터를 쓰거나 변경을 구독합니다. | |
오프라인 지속성 사용 설정 | 데이터를 오프라인으로 사용할 수 있도록 기기의 로컬 디스크에 기록합니다. | |
데이터 보안 | Firebase Realtime Database 보안 규칙을 사용하여 데이터를 보호합니다. |
다른 유형의 데이터 저장
- Cloud Firestore는 Firebase 및 Google Cloud의 모바일, 웹, 서버 개발에 사용되는 유연하고 확장 가능한 데이터베이스입니다. 데이터베이스 옵션 간 차이점을 자세히 알아보려면 데이터베이스 선택: Cloud Firestore 또는 Realtime Database를 참조하세요.
- Firebase Remote Config은 개발자가 지정한 키-값 쌍을 저장하여 사용자가 업데이트를 다운로드할 필요 없이 앱의 동작과 모양을 변경합니다.
- Firebase Hosting은 웹사이트의 HTML, CSS, JavaScript 및 개발자가 제공하는 그래픽, 글꼴, 아이콘 등의 기타 애셋을 호스팅합니다.
- Cloud Storage는 이미지, 동영상, 오디오 파일 등의 사용자 제작 콘텐츠를 저장합니다.