programing

Cloud Firestore와 Firebase 실시간 데이터베이스의 차이점은 무엇입니까?

firstcheck 2023. 6. 22. 23:43
반응형

Cloud Firestore와 Firebase 실시간 데이터베이스의 차이점은 무엇입니까?

Google은 앱을 위한 새로운 문서 데이터베이스인 Cloud Firestore를 출시했습니다.

설명서를 읽어보았지만 Firestore와 Firebase DB 간에 큰 차이가 없습니다.

핵심은 JSON 기반의 전통적인 noSQL 데이터베이스인 Firebase와 비교하여 Firestore가 쉽게 쿼리를 사용할 수 있는 문서 및 컬렉션을 사용한다는 것입니다.

차이점이나 용도, Firestore가 Firebase DB를 대체하기 위해 온 것인지 여부에 대해 좀 더 알고 싶습니다.

저는 이 질문에 대한 전체 블로그 게시물을 작성했으며, 더 완전한 답변을 위해 (또는 공식 문서를) 확인하는 것을 추천합니다.

그러나 빠른(-ish) 요약을 원한다면 다음과 같습니다.

나은 쿼리 체계적인 데이터 -- Realtime Database는 거대한 JSON 트리에 불과하지만 Cloud Firestore는 조금 더 체계적입니다.모든 데이터는 문서(기본적으로 키 값 저장소)와 문서 모음(문서 모음)으로 구성됩니다.또한 문서는 종종 다른 문서를 포함하는 하위 집합을 가리키며, 하위 집합 자체는 다른 문서를 포함할 수 있습니다.

이 구조화된 데이터는 두 가지 방법으로 도움이 됩니다.첫째, 모든 쿼리는 얕기 때문에 모든 데이터를 가져오지 않고 문서를 요청할 수 있습니다.따라서 데이터베이스를 얕게 유지할 필요 없이 데이터를 계층적으로 저장할 수 있습니다.둘째, 더 강력한 쿼리가 있습니다.예를 들어, 이제 데이터베이스의 다른 부분에서 데이터를 결합(및 정규화 해제)하는 "콤보" 필드를 작성하지 않고도 여러 필드에 걸쳐 쿼리할 수 있습니다.Cloud Firestore가 이러한 쿼리를 직접 실행하는 경우도 있고, 자동으로 인덱스를 생성하고 유지 관리하는 경우도 있습니다.

확장할 수 있도록 설계 - Cloud Firestore는 실시간 데이터베이스보다 더 잘 확장할 수 있습니다.쿼리는 데이터 집합이 아닌 결과 집합의 크기로 확장됩니다.따라서 데이터 세트의 크기에 관계없이 검색 속도가 빨라집니다.

더 쉬운 수동 데이터 가져오기 - 실시간 데이터베이스와 마찬가지로 Cloud Firestore에서 실시간으로 변경사항을 스트리밍하도록 수신기를 설정할 수 있습니다.그러나 이러한 동작을 원하지 않고 "내 데이터 가져오기" 통화만 원하는 경우 Cloud Firestore에도 이러한 기능이 있으며 기본 사용 사례로 내장되어 있습니다.(그들은 그들보다 훨씬 낫습니다.once실시간 데이터베이스 랜드의 통화)

다중 영역 지원 -- 이는 기본적으로 데이터가 여러 데이터 센터에서 동시에 공유되므로 안정성이 향상된다는 것을 의미합니다.그러나 일관성이 뛰어나기 때문에 언제든지 쿼리를 수행할 수 있으며 최신 버전의 데이터를 얻을 수 있습니다.

다른 가격 모델 -- Realtime Database는 주로 스토리지 또는 네트워크 대역폭을 기준으로 과금하는 반면, Cloud Firestore는 주로 수행하는 작업 수를 기준으로 과금합니다.이게 더 좋을까요, 더 나쁠까요?당신의 앱에 따라 다릅니다.

뉴스 앱, 턴 기반 멀티플레이어 게임 또는 자체 버전의 Stack Overflow와 유사한 기능을 제공하는 경우 클라우드 Firestore는 가격 면에서 상당히 유리하게 보일 것입니다.여러 업데이트를 여러 사람에게 초당 전송하는 실시간 그룹 그리기 앱과 같은 경우에는 아마도 실시간 데이터베이스보다 더 비쌀 것입니다.

실시간 데이터베이스를 사용해야 하는 이유는 다음과 같습니다.

  1. 제가 이전에 언급한 "자주 업데이트하는 앱의 경우 아마도 더 저렴할 것입니다."

  2. 그것은 오랫동안 존재해 왔고 수천 개의 앱에 의해 전투 테스트를 받았습니다.

  3. 대기 시간이 향상되고 실시간 느낌을 위해 안정적으로 대기 시간이 짧은 것이 필요할 때 Realtime Database가 더 잘 작동할 수 있습니다.

대부분의 새 앱의 경우 Cloud Firestore를 확인하는 것이 좋습니다.하지만 이미 실시간 데이터베이스에 있는 앱이 있다면, 특별한 이유가 없는 한 전환을 위해서만 전환하는 것을 권장하지 않습니다.

실시간 데이터베이스 대신 클라우드 Firestore를 선택하는 이유

개선된 버전입니다.

Firebase 데이터베이스는 기본 애플리케이션에 충분했습니다.그러나 복잡한 요구사항을 처리할 수 있을 만큼 강력하지는 않았습니다.그것이 클라우드 파이어스토어가 도입된 이유입니다.몇 가지 주요 변경 사항이 있습니다.

  • 기본 파일 구조가 개선되었습니다.
  • 웹 클라이언트에 대한 오프라인 지원.
  • 고급 쿼리를 지원합니다.
  • 쓰기 및 트랜잭션 작업은 원자적입니다.
  • 신뢰성 및 성능 향상
  • 스케일링이 자동으로 실행됩니다.
  • 보안이 강화됩니다.

가격 책정

Cloud Firestore에서는 대역폭 및 스토리지와 함께 데이터베이스에서 수행되는 작업에 주로 요금을 부과함에도 불구하고 요금이 인하되었습니다.일일 지출 한도도 설정할 수 있습니다.여기 청구에 대한 전체 세부 정보가 있습니다.

구글의 미래 계획

실시간 데이터베이스의 결함을 발견했을 때, 그들은 이전 제품을 개선하는 대신 다른 제품을 만들었습니다.실시간 데이터베이스에 현재 순위를 나타내는 신뢰할 수 있는 세부 정보가 없지만, 이제는 포기될 가능성이 높다고 생각하기 시작할 때입니다.



구글에서도 링크 제안: Firebase Real-time Database vs FireStore

구글 문서에서 발췌한 소규모 요약은 다음과 같습니다.

FireBase Real Time DB는 JSON 기반 NO SQL DB로 모바일 애플리케이션, 지역별, 일반적으로 사용자/기기 간에 실시간/매우 짧은 대기 시간에 데이터를 저장하고 동기화하는 데 사용됩니다.

FireStore는 자산 추적, 실시간 분석, 소매 제품 카탈로그 구축, 소셜 사용자 프로필, 게임 리더 보드, 채팅 기반 애플리케이션 등과 같은 일반적인 사용 사례를 가진 모든 클라이언트(모바일 애플리케이션뿐만 아니라)를 위해 설계된 높은 동시성, 글로벌, 손쉬운 자동 확장 지속성을 위한 JSON 'like' NOSQL DB입니다.

enter image description here

애플리케이션 요구 사항에 따라 Firebase Realtime 데이터베이스와 Cloud Firestore를 선택하려면 여기에서 공식 설명서를 읽어보십시오.

  • 클라우드 파이어스토어는 파이어베이스의 모바일 앱 개발 데이터베이스입니다.보다 직관적인 새로운 데이터 모델을 사용하여 실시간 데이터베이스의 성공을 기반으로 합니다.또한 Cloud Firestore는 실시간 데이터베이스보다 더 풍부하고 빠른 쿼리 및 확장 기능을 제공합니다.

  • 실시간 데이터베이스는 Firebase의 원래 데이터베이스입니다.이 솔루션은 클라이언트 간에 실시간으로 동기화된 상태를 필요로 하는 모바일 앱을 위한 효율적이고 짧은 대기 시간의 솔루션입니다.

언급URL : https://stackoverflow.com/questions/46549766/whats-the-difference-between-cloud-firestore-and-the-firebase-realtime-database

반응형