MongoDB보다 Firebase를 사용하면 어떤 양적 장점이 있습니까? (의견이 아님)
Firebase는 자체 API가있는 클라우드 기반 서비스라는 것을 알고 있지만 Mongo가 장기적으로 더 큰 통제력을 부여 할 수 있다고 생각합니다.
MongoDB보다 Firebase를 사용하면 어떤 양적 장점이 있습니까? (의견이 아님)
Firebase는 자체 API가있는 클라우드 기반 서비스라는 것을 알고 있지만 Mongo가 장기적으로 더 큰 통제력을 부여 할 수 있다고 생각합니다.
답변:
편집 : 다음은 앱의 Firebase를 Node.js + MongoDb로 바꾸는 좋은 기사 입니다. 직접 수행해야하는 작업량과 IMHO, 시작 (소형 앱)이 Firebase (클라이언트에 실시간 업데이트가 필요한 경우)로 시작하고 MongoDb (어쨌든 자체)로 진행해야하는 이유를 설명합니다. 작성 솔루션) 프로젝트가 계속 발전하는 경우
편집 2 : Google Firebase 가 인수 한 후에 는 기본 기능 외에도 다양한 기능을 제공하여 직접 빌드하기가 어렵습니다.
Firebase는 실시간 업데이트를 위해 설계되었습니다. 각도와 쉽게 통합됩니다. 둘 다 NoSQL 데이터베이스입니다. MongoDB는 또한 Angular를 통해 Socket.io 통합을 통해이를 수행 할 수 있습니다. Meteor.js는 또한 실시간 업데이트를 위해 개방 소켓 연결로 MongoDB를 사용합니다.
MongoDB는 로컬로 실행하거나 다양한 클라우드 기반 공급자에서 호스팅 할 수 있습니다. 내 생각에 Firebase는 작은 응용 프로그램에 적합하며 시작 및 실행이 매우 빠릅니다. MongoDB는보다 강력한 대형 앱에 이상적이며 실시간 통합이 가능하지만 조금 더 많은 작업이 필요합니다.
Firebase를 사용한 후 상당한 금액을 찾았습니다.
큰 실시간 앱에 사용하려는 경우 최선의 선택이 아닙니다. 잘못된 오류 처리 시스템 및 제한 사항을 포함하여 자체적으로 광범위한 문제가 있습니다. Firebase를 이해하는 데 상당한 시간이 걸리며 꼬임이 발생합니다. 또한 프로젝트가 통제 불능의 단일체가되는 것은 매우 쉽습니다. 큰 응용 프로그램의 백엔드가있는 한 MongoDB가 훨씬 더 나은 선택입니다.
그러나 작은 앱을 만들거나 빠르게 프로토 타입을 만들어야하는 경우 Firebase를 사용하는 것이 좋습니다. 지면을 칠 수있는 매우 쉬운 방법입니다.
Firebase의 Angular 라이브러리 인 AngularFire의 관점에서이 질문에 대답하겠습니다.
TL; dr : 초능력. :-)
AngularFire의 3 방향 데이터 바인딩. Angular는 뷰와 $ scope, 즉 뷰에서 사용자가 수행하는 작업이 로컬 변수에서 자동으로 업데이트되고 JavaScript가 로컬 변수를 업데이트하면 뷰가 자동으로 업데이트됩니다. Firebase를 사용하면 클라우드 데이터베이스도 자동으로 업데이트됩니다. $ http.get 또는 $ http.put 요청을 작성할 필요가 없으며 데이터가 업데이트됩니다.
5 방향 데이터 바인딩, 7 방향, 9 방향 등 AngularFire를 사용하여 틱택 토 게임을 만들었습니다. 두 명의 플레이어가 함께 플레이 할 수 있으며, 두 개의 뷰는 두 개의 $ scope 및 클라우드 데이터베이스를 업데이트합니다. 하나 이상의 Firebase 데이터베이스를 공유하는 3 명 이상의 플레이어와 게임을 할 수 있습니다.
AngularFire의 OAuth2 라이브러리는 Facebook, GitHub, Google, Twitter, 토큰 및 비밀번호를 사용하여 쉽게 인증 할 수 있습니다.
이중 보안. 승인이 필요하도록 Angular 경로를 설정하고 Firebase에서 데이터를 읽고 쓸 수있는 사람에 대한 규칙을 설정할 수 있습니다.
백엔드가 없습니다. Node와 Express를 사용하여 서버를 만들 필요는 없습니다. 자신의 서버를 운영하는 것은 많은 작업이 될 수 있고, 보안에 대한 지식이 필요하고, 서버가 다운되면 누군가가 무언가를해야하는 등의 일이 될 수 있습니다.
빠른. 서버가 샌프란시스코에 있고 클라이언트가 산호세에 있다면 괜찮습니다. 그러나 방갈로르의 클라이언트는 서버 연결 속도가 느려집니다. Firebase는 전 세계에 배포되어 어디서나 빠르게 연결할 수 있습니다.
Firebase는 일련의 기능입니다.
Firebase 실시간 데이터베이스와 Mongo DB를 비교하려고한다고 생각합니다. Firebase 실시간 데이터베이스는 데이터를 JSON 형식으로 저장하고 모든 데이터 업데이트를 데이터를 수신하는 모든 클라이언트에 동기화합니다. 데이터베이스를 설정하고 확장하는 데 필요한 모든 복잡성을 제거합니다. 데이터 집계가 필요한 복잡한 시나리오가 많은 경우 firebase를 권장하지 않습니다 (SUM / AVERAGE 종류의 쿼리가 필요한 쿼리). 최근에는 Firebase 기능을 사용하여이를 달성 할 수 있습니다. Firebase의 데이터 모델링은 까다 롭습니다. 그러나 바로 시작할 수있는 가장 좋은 방법입니다. MongoDB는 데이터베이스입니다. 이것은 많은 강력한 기능을 제공합니다. 그러나 모든 플랫폼에 MongoDB를 설치하면 직접 관리해야합니다.
Firebase 또는 MongoDB (또는 모든 DB) 중에서 선택하려고 할 때. 나는 다음에 대답하려고 노력한다.