AWS 전문가를 위한 Google Cloud: 모바일 백엔드

업데이트: 2017년 10월 17일

Amazon Web Services(AWS)와 Google Cloud가 각각의 클라우드 환경에서 제공하는 모바일 백엔드 서비스를 비교합니다.

서비스 모델 비교

AWS Mobile Hub와 Firebase 모두 인증, 데이터 저장소, 서버리스 루틴, 콘텐츠 전송, 알림, 기기 테스트, 분석을 위한 서비스를 제공합니다. 그러나 두 플랫폼의 범위는 다릅니다.

AWS Mobile Hub는 모바일 백엔드 개발에 적합한 서비스 모음을 제공합니다. Google Cloud에서 Firebase는 백엔드 서비스 모음을 제공할 뿐만 아니라 클라이언트 애플리케이션 개발 속도 향상을 목표로 하는 프런트 엔드 기능을 포함하는 클라이언트 라이브러리도 제공합니다.

이러한 기능에는 인증을 위한 UI 흐름, 통합된 앱 성능 모니터링, 공유 기능, 원격 구성, 앱 색인 생성, 동적 링크가 포함됩니다.

기능 AWS Mobile Hub Firebase
인증 Amazon Cognito Firebase 인증(UI 흐름 포함)
데이터베이스 Amazon DynamoDB Firebase 실시간 데이터베이스
데이터 저장소/CDN Amazon S3 및 Amazon CloudFront Firebase 호스팅
서버리스 루틴 Cloud Logic 및 AWS Lambda Firebase 호스팅Firebase용 Cloud Functions
알림 Amazon SNS Firebase 클라우드 메시징
클라이언트 애플리케이션 서비스 해당 없음 성능 모니터링, 앱 색인 생성, 앱 모니터링, 오류 보고, 앱 공유, 원격 구성, 동적 링크

지원되는 플랫폼

AWS Mobile Hub와 Firebase 모두 대부분의 주요 모바일 플랫폼을 지원합니다. 또한 Firebase는 Angular와 같은 프레임워크 및 웹 애플리케이션에서 직접 통합을 위한 자바스크립트 라이브러리를 제공합니다. AWS Mobile Hub는 Xamarin 및 React Native를 포함하여 몇 가지 추가 모바일 앱 개발 플랫폼과 통합됩니다.

기능 AWS Mobile Hub Firebase
REST HTTP API
Android
iOS
Xamarin 아니요
React Native 아니요
Unity 예(개발자 미리보기)
자바스크립트

인증

AWS Mobile Hub와 Firebase 모두 인증을 위한 백엔드 및 SDK를 제공합니다. AWS는 Amazon Cognito를 제공하며 Firebase는 Firebase 인증을 제공합니다. 두 서비스 모두 Facebook, Google, Twitter, GitHub 인증을 포함하여 여러 제휴 제공업체를 통해 이메일 및 비밀번호 인증을 제공합니다. Amazon Cognito에는 Amazon 인증 지원도 포함됩니다.

두 플랫폼은 제공하는 인증 지원 유형에서 차이가 있습니다. Amazon Cognito는 인증을 수행하기 위한 서버 측 엔드포인트 및 데이터베이스를 포함한 백엔드 서비스를 제공합니다. 다른 AWS 서비스 액세스는 사용자 또는 사용자 그룹에 연결되는 AWS ID 및 액세스 관리(IAM)를 사용하여 프로비저닝됩니다.

인증을 수행하기 위한 백엔드 서비스와 서버 측 엔드포인트 외에 Firebase 인증은 인증을 위해 백엔드 서비스와 접속하기 위한 사전 빌드된 UI 흐름 및 UI 지향 SDK를 제공합니다.

언어 및 플랫폼

AWS Cognito 및 Firebase 인증 모두 Android, iOS, Node.js, REST를 지원합니다. 또한 Amazon Cognito는 React, .NET, Python, PHP, Ruby를 지원합니다.

다음 표에는 Amazon Cognito와 Firebase 인증을 전반적으로 비교한 내용이 나와 있습니다.

기능 Amazon Cognito Firebase 인증
기본 이메일/비밀번호 인증
제휴 제공업체 Amazon, Facebook, GitHub, Google, Twitter, OpenID 제공업체 Facebook, GitHub, Google, Twitter
커스텀 제공업체
익명 인증
사용자 데이터 스토리지 Amazon Cognito Sync 사용자 기반 보안
지원되는 플랫폼 Android, iOS Android, iOS
지원되는 언어 및 프레임워크 .NET. Node.js, PHP, Python, Ruby Node.js
배포 지역 다중 지역 전체
가격 모델 등급에 따라 월별 활성 사용자 기준으로 청구 모든 등급에 무료로 포함

데이터베이스

AWS Mobile Hub의 주 데이터 저장소 제공업체는 관리형 문서/키-값 저장소인 Amazon DynamoDB입니다. Firebase의 이름은 문서 기반이며 모든 연결된 클라이언트와의 실시간 동기화를 포함하는 실시간 데이터베이스에 따라 지정되었습니다. Firebase 데이터베이스는 오프라인 데이터 액세스 및 수정, 클라이언트 디스크에 데이터 지속, 연결 복원 후 클라이언트와 서버 상태 동기화도 지원합니다.

두 데이터베이스 모두 직접 클라이언트 액세스를 지원합니다. Firebase 보안 규칙은 Firebase 내의 데이터 액세스를 관리하지만 AWS IAM은 DynamoDB에 대한 클라이언트 액세스 보호를 관리합니다.

기능
AWS Mobile Hub NoSQL 데이터베이스(DynamoDB) Firebase
클라이언트에서 직접 액세스
보안 AWS IAM Firebase 보안 규칙
트랜잭션 아니요
실시간 업데이트 아니요
오프라인 및 다시 동기화 아니요 *참고: 일부 오프라인 및 다시 동기화는 Amazon Cognito Sync를 통해 사용 가능
배포 지역 사용 가능한 리전: 미국 동부(오하이오), 미국 동부(북 버지니아),
미국 서부(북부 캘리포니아), 미국 서부(오리건),
캐나다(중부), 아시아 태평양(뭄바이),
아시아 태평양(서울), 아시아 태평양(싱가포르), 아시아 태평양(시드니),
아시아 태평양(도쿄), EU(프랑크푸르트),
EU(아일랜드), EU(런던), 남미(상파울루)
구성할 수 없음
가격 모델 지역, 처리량, 데이터 스토리지, 데이터 전송 기준 동시 연결, 데이터 스토리지, 데이터 전송 기준

서버리스 함수

두 플랫폼 모두 서버리스 루틴과 클라이언트에서의 액세스를 지원합니다. AWS Mobile Hub는 Cloud Logic을 사용하여 모바일 애플리케이션에 사용할 AWS Lambda 루틴을 선택하고 AWS API 게이트웨이를 통해 이러한 루틴에 대한 액세스를 제공합니다. Firebase는 Firebase 호스팅 및 Cloud Functions를 제공하여 클라우드에서 실행되는 서버리스 루틴에 대한 클라이언트 액세스를 지원합니다.

기능 AWS Mobile Hub Firebase
서버리스 루틴 AWS Lambda Firebase용 Cloud Functions
서버리스 루틴으로의 라우팅 Cloud Logic Firebase 호스팅
배포 지역 사용 가능한 리전: 미국 동부(오하이오), 미국 동부(북 버지니아),
미국 서부(북부 캘리포니아), 미국 서부(오리건),
캐나다(중부), 아시아 태평양(뭄바이),
아시아 태평양(서울), 아시아 태평양(싱가포르), 아시아 태평양(시드니),
아시아 태평양(도쿄), EU(프랑크푸르트),
EU(아일랜드), EU(런던), 남미(상파울루)
선택할 수 없음
가격 모델 수백 만 회의 API 호출 및 데이터 전송 기준 호출, 메모리 사용, CPU 초, 발신 네트워킹, 데이터 전송 기준

콘텐츠 전송

AWS와 Firebase 모두 콘텐츠 전송 네트워크(CDN)를 제공합니다. Amazon은 Amazon CloudFront를, Google은 Cloud CDN을 제공합니다. 두 플랫폼의 작동 방식은 비슷하지만 콘텐츠 배포에 사용되는 네트워크는 크게 다를 수 있습니다. 두 플랫폼의 네트워킹에 대한 자세한 비교는 AWS 전문가용 Google Cloud: 네트워킹을 참조하세요.

기능 AWS Mobile Hub Firebase
콘텐츠 전송 네트워크(CDN) CloudFront Cloud CDN
원본 호스팅 Amazon S3 Firebase 호스팅
배포 지역 전체 전체
가격 모델 데이터 전송 및 스토리지 기준 데이터 전송 및 스토리지 기준

푸시 알림

푸시 알림 구성은 AWS와 Firebase에서 비슷합니다. Amazon Simple Notification Service(SNS)와 Firebase 클라우드 메시징에는 구체적인 구현과 지원되는 일부 프레임워크의 차이점만 있습니다. 지원되는 서비스 플랫폼은 아래에서 볼 수 있습니다.

기능 Amazon SNS Firebase
지원되는 알림 서비스 Google 클라우드 메시징, Apple 푸시 알림 서비스, Windows 푸시 알림 서비스, Baidu 클라우드 푸시, Unity Google 클라우드 메시징, Apple 푸시 알림 서비스, Unity, Chrome 50+, Firefox 44+, Opera Mobile 37+
지원되는 플랫폼 및 언어 REST HTTP API, 자바스크립트, 자바, Python, Node.js, Ruby, Go, C++, PHP, .NET REST HTTP API, XMPP, 자바스크립트, Node.js, C++
배포 지역 다중 지역 전체
가격 모델 수백만 개의 메시지 기준 무료

가져오기 및 내보내기

AWS Mobile Hub에서 개발자는 프로젝트를 YAML 파일로 가져오고 내보낼 수 있습니다. Firebase를 사용하면 프로젝트 데이터 및 규칙의 자동 야간 백업을 구성하고 JSON 파일로 Cloud Storage에 저장할 수 있습니다. IAM을 사용하여 프로젝트 간에 Firebase 프로젝트를 전송할 수 있습니다.

앱 테스트

Firebase와 AWS 모두 제공업체가 클라우드에 호스팅하는, 다양한 기기에서 실행되도록 자동화된 테스트를 제출하도록 지원합니다. 이러한 테스트를 사용하여 개발자는 간단한 테스트로 애플리케이션의 정상 빌드를 확인하거나 UI의 특정 단계를 클라우드 기기에서 실행되도록 전달할 수 있습니다. AWS Device Farm은 더 많은 테스트 프레임워크와 기기를 지원합니다. Firebase Device Lab은 Robo 또는 Android 도구 작동 테스트를 사용하여 Android 기기만 지원합니다.

기능 Amazon Device Farm Firebase Device Lab
iOS 테스트 유형 Appium, Calabash, XCTest, KIF, UI 자동화 해당 사항 없음
Android 테스트 유형 Appium, Calabash, Robotium, Espresso, UI Automator, 커스텀 도구 작동 테스트, 기본 제공 탐색기 Robo 및 Android 도구 작동 테스트(Espresso 포함).
배포 지역 선택할 수 없음 선택할 수 없음
가격 모델 분당 또는 고정 요금 기기 시간당(정해진 일일 무료 테스트 수 제외)

분석

Amazon Pinpoint 및 Firebase용 Google 애널리틱스 모두 분석, 잠재고객 분류, 타겟팅된 캠페인을 지원합니다. 둘 모두 데이터 웨어하우스 서비스로 이벤트 내보내기를 지원합니다. 또한 Firebase 애널리틱스는 Firebase 오류 보고, Firebase 원격 구성, Firebase 클라우드 메시징, Google 태그 관리자를 포함한 다른 GCP 서비스와 통합됩니다.

기능 AWS Mobile Hub/Pinpoint Firebase용 Google 애널리틱스
분석 및 캠페인
데이터 웨어하우스로 내보내기 Amazon Redshift로 내보내기 BigQuery로 내보내기
무제한 보고
알림 통합
원격 구성 해당 없음
태그 관리 아니요 예(Google 태그 관리자)
배포 지역 전체 전체
가격 모델 월별 대상 잠재고객 기준 무료

추가 기능

Firebase 및 AWS Mobile Hub에는 각기 다른 서비스에 없는 고유한 서비스가 포함되어 있습니다.

추가 AWS Mobile Hub 기능

대화 봇

AWS Mobile Hub에는 대화 봇이라는 기능이 포함됩니다. 이 기능은 AWS Lambda 함수와의 텍스트 및 음성 대화를 위해 Amazon Lex를 통합합니다. 대화 봇은 Firebase의 공식 기능이 아니지만 Google Cloud에는 Dialogflow 및 API.AI가 있으며 각각을 Firebase와 결합하여 대화형 사용자 환경을 만들 수 있습니다.

추가 Firebase 기능

오류 보고

Firebase 오류 보고에는 오류를 보고하는 데 사용되는 두 가지 옵션(Firebase Crash Tool 및 Fabric Crashlytics)이 있습니다. 반면 AWS Mobile Hub는 오류 보고를 파트너 기술에 의존합니다.

기본 애플리케이션의 베타 배포

오류 보고 외에 Fabric Crashlytics는 배포를 위한 Beta by Crashlytics를 제공합니다. Beta by Crashlytics는 사용자 초대/철회와 다른 Fabric 라이브러리와의 통합을 제공하는 인기 있는 베타 배포 프레임워크입니다. Beta by Crashlytics는 자동화된 배포를 위해 iOS 및 Android용 Fastlane 빌드 도구와도 통합됩니다.

앱 색인 생성

Firebase 앱 색인 생성은 앱 콘텐츠 색인을 생성하여 기기의 Google 검색이 결과에서 앱 링크를 제공할 수 있도록 합니다.

Firebase 동적 링크는 기기에서 열릴 때 네이티브 앱에 연결되며 데스크톱 브라우저에서 웹 콘텐츠에 연결됩니다. 동적 링크를 제공하기 위해 Firebase는 Android 또는 iOS 플랫폼 내에서 범용 링크 도메인을 등록하는 데 사용 가능한 도메인을 생성합니다.

초대

Firebase 초대는 앱 사용자가 동적 링크를 사용하여 Firebase 앱을 공유할 수 있도록 하는 앱 추천 기능입니다. 동적 링크는 웹, Android, iOS 등 초대된 사용자의 플랫폼에 맞게 조정됩니다.

원격 구성

Firebase 원격 구성을 통해 개발자는 애플리케이션을 업데이트하지 않고도 애플리케이션의 동작과 모양을 변경할 수 있습니다. 원격 구성은 인앱 기본값을 사용하여 애플리케이션의 동작과 모양을 제어합니다. 그러면 개발자는 콘솔을 사용하여 모든 사용자 또는 사용자 세그먼트의 인앱 기본값을 재정의할 수 있습니다.

성능 모니터링

Firebase 성능 모니터링은 시작 시간, 포그라운드와 백그라운드 동안의 활동, HTTP/S 네트워크 요청, 포함된 API를 사용하여 생성된 커스텀 추적을 모니터링하는 베타 기능입니다.

비용

AWS Mobile Hub 가격은 사용되는 개별 서비스 구성요소를 기준으로 합니다. Firebase는 자동으로 여러 제품을 포함합니다.

  • 인증(전화번호 인증 제외)
  • 분석
  • 앱 색인 생성
  • 동적 링크
  • 초대
  • 원격 구성
  • 클라우드 메시징
  • 성능 모니터링 및 오류 보고

AWS Mobile Hub에는 무료 등급 및 중간 등급 요금제가 번들로 포함됩니다. 각 Firebase 번들 요금제에는 다음 요소가 사용 한도와 함께 포함됩니다.

  • 스토리지
  • Cloud 함수
  • 전화번호 인증
  • 호스팅/콘텐츠 전송
  • Test Lab

중간 사용 한도 이외에 Firebase에는 사용한 만큼만 지불하는 개별 서비스별 비용이 포함됩니다.

BigQuery와 같은 추가 GCP 제품 비용은 별도로 청구됩니다.

다음 단계

AWS 전문가를 위한 다른 Google Cloud 문서를 확인하세요.