Firebase Summit에서 발표된 모든 내용을 살펴보고 Firebase로 앱을 빠르게 개발하고 안심하고 앱을 실행하는 방법을 알아보세요. 자세히 알아보기

사용 및 제한

컬렉션을 사용해 정리하기 내 환경설정을 기준으로 콘텐츠를 저장하고 분류하세요.

이 가이드를 사용하여 Cloud Firestore 한도를 이해하고 Cloud Firestore 가격 책정 에서 주의 사항을 포함하여 Cloud Firestore 비용에 대한 자세한 설명을 참조하세요.

사용량 모니터링

Cloud Firestore 사용량을 모니터링하려면 Firebase 콘솔에서 Cloud Firestore 사용량 을 엽니다. 대시보드를 사용하여 다양한 기간의 사용량을 측정합니다.

Google Cloud Console의 자세한 사용법

Firebase 프로젝트를 만들 때 Google Cloud 프로젝트도 만듭니다. Google Cloud Console의 Cloud Firestore API 할당량App Engine 할당량 페이지는 Cloud Firestore 사용량 및 할당량 정보를 추적합니다.

무료 할당량

Cloud Firestore는 무료로 시작할 수 있는 무료 할당량을 제공합니다. 무료 할당량 금액은 다음과 같습니다. 더 많은 할당량이 필요한 경우 Cloud Platform 프로젝트에 대해 결제를 사용 설정 해야 합니다.

할당량은 매일 적용되며 태평양 표준시로 자정에 재설정됩니다.

프리 티어
저장된 데이터 1GiB
문서 읽기 하루 50,000
문서 쓰기 하루 20,000
문서 삭제 하루 20,000
네트워크 이그레스 월 10GiB

표준 한계

다음 표는 Cloud Firestore에 적용되는 한도를 보여줍니다. 이는 달리 명시되지 않는 한 엄격한 제한입니다.

컬렉션, 문서 및 필드

한계 세부
컬렉션 ID에 대한 제약 조건
  • 유효한 UTF-8 문자여야 합니다.
  • 1,500바이트 이하여야 합니다.
  • 슬래시( / )를 포함할 수 없습니다.
  • 단일 마침표( . ) 또는 이중 마침표( .. )로만 구성될 수 없습니다.
  • 정규식 __.*__ 과(와) 일치할 수 없습니다.
하위 컬렉션의 최대 깊이 100
문서 ID에 대한 제약
  • 유효한 UTF-8 문자여야 합니다.
  • 1,500바이트 이하여야 합니다.
  • 슬래시( / )를 포함할 수 없습니다.
  • 단일 마침표( . ) 또는 이중 마침표( .. )로만 구성될 수 없습니다.
  • 정규식 __.*__ 과(와) 일치할 수 없습니다.
  • Datastore 항목을 Firestore 데이터베이스로 가져오면 숫자 항목 ID가 __id[0-9]+__ 로 노출됩니다.
문서 이름의 최대 크기 6KiB
문서의 최대 크기 1MiB(1,048,576바이트)
필드 이름에 대한 제약 유효한 UTF-8 문자여야 합니다.
필드 이름의 최대 크기 1,500바이트
필드 경로에 대한 제약
  • 단일 마침표( . )로 필드 이름을 구분해야 합니다.
  • 경로의 모든 필드 이름이 단순할 때 문자열로 전달될 수 있습니다. 그렇지 않으면 FieldPath 객체( 예: JavaScript FieldPath )로 전달되어야 합니다.
단순 필드 이름은 다음이 모두 참인 필드 이름입니다.
  • az , AZ , 0-9 및 밑줄( _ ) 문자만 포함합니다.
  • 0-9 로 시작하지 않음
필드 경로의 최대 크기 1,500바이트
필드 값의 최대 크기 1MiB - 89바이트(1,048,487바이트)
맵 또는 배열의 최대 필드 깊이 20

쓰기 및 트랜잭션

한계 세부
최대 API 요청 크기 10MiB
Commit 작업으로 전달되거나 트랜잭션에서 수행될 수 있는 최대 쓰기 수 500
Commit 작업 또는 트랜잭션에서 단일 문서에 대해 수행할 수 있는 최대 필드 변환 수 500
거래 시간 제한 270초, 유휴 만료 시간 60초

소프트 한계

Cloud Firestore는 아래 임계값을 초과하는 것을 막지는 않지만 성능에 영향을 미칩니다.

소프트 리미트 세부
문서가 인덱싱된 필드에 순차 값을 포함하는 컬렉션에 대한 최대 쓰기 속도 초당 500

인덱스

단일 필드 인덱스복합 인덱스 에는 다음 제한이 적용됩니다.

한계 세부
데이터베이스의 최대 복합 인덱스 수 200
데이터베이스에 대한 최대 단일 필드 구성 수

200

총 200개의 필드 수준 구성이 허용됩니다. 하나의 필드 구성에는 동일한 필드에 대한 여러 구성이 포함될 수 있습니다. 예를 들어 동일한 필드에 대한 단일 필드 인덱싱 면제 및 TTL 정책은 한도에 대한 하나의 필드 구성으로 계산됩니다.

각 문서의 최대 색인 항목 수

40,000

색인 항목 수는 문서에 대한 다음 항목의 합계입니다.

  • 단일 필드 인덱스 항목의 수
  • 복합 색인 항목 수

Cloud Firestore가 문서 및 색인 세트를 색인 항목으로 바꾸는 방법을 보려면 이 색인 항목 개수 예시 를 참조하세요.

복합 인덱스의 최대 필드 수 100
인덱스 항목의 최대 크기

7.5KiB

Cloud Firestore가 색인 항목 크기를 계산하는 방법을 보려면 색인 항목 크기를 참조하세요.

문서의 인덱스 항목 크기의 최대 합계

8MiB

전체 크기는 문서에 대한 다음 항목의 합계입니다.

  • 문서의 단일 필드 인덱스 항목 크기 합계
  • 문서의 복합 색인 항목 크기 합계
  • 인덱싱된 필드 값의 최대 크기

    1500바이트

    1500바이트를 초과하는 필드 값은 잘립니다. 잘린 필드 값과 관련된 쿼리는 일관성 없는 결과를 반환할 수 있습니다.

    TTL(수명)

    한계 세부
    데이터베이스에 대한 최대 단일 필드 구성 수

    200

    총 200개의 필드 수준 구성이 허용됩니다. 하나의 필드 구성에는 동일한 필드에 대한 여러 구성이 포함될 수 있습니다. 예를 들어 동일한 필드에 대한 단일 필드 인덱싱 면제 및 TTL 정책은 한도에 대한 하나의 필드 구성으로 계산됩니다.

    수출 수입

    관리되는 가져오기 및 내보내기 작업 에는 다음 제한이 적용됩니다.

    한계 세부
    분당 허용되는 프로젝트에 대한 내보내기 및 가져오기 요청의 최대 총 수 20
    최대 동시 내보내기 및 가져오기 수 50
    내보내기 및 가져오기 요청에 대한 최대 컬렉션 ID 필터 수 100

    보안 규칙

    한계 세부
    요청당 최대 exist( exists() , get()getAfter() 호출 수
    • 단일 문서 요청 및 쿼리 요청의 경우 10입니다.
    • 다중 문서 읽기, 트랜잭션 및 일괄 쓰기의 경우 20입니다. 이전 제한인 10도 각 작업에 적용됩니다.

      예를 들어, 쓰기 작업 3개로 일괄 쓰기 요청을 생성하고 보안 규칙이 문서 액세스 호출 2개를 사용하여 각 쓰기의 유효성을 검사한다고 가정합니다. 이 경우 각 쓰기는 10개의 액세스 호출 중 2개를 사용하고 일괄 쓰기 요청은 20개의 액세스 호출 중 6개를 사용합니다.

    두 제한 중 하나를 초과하면 권한 거부 오류가 발생합니다.

    일부 문서 액세스 호출은 캐시될 수 있으며 캐시된 호출은 제한에 포함되지 않습니다.

    최대 중첩 match 문 깊이 10
    중첩된 match 문 집합 내에서 허용되는 경로 세그먼트의 최대 경로 길이 100
    중첩된 match 문 집합 내에서 허용되는 최대 경로 캡처 변수 수 20
    최대 함수 호출 깊이 20
    최대 함수 인수 수 7
    함수당 let 변수 바인딩의 최대 수 10
    재귀 또는 순환 함수 호출의 최대 수 0(허용되지 않음)
    요청당 평가되는 최대 표현식 수 1,000
    규칙 세트의 최대 크기 규칙 세트는 두 가지 크기 제한을 준수해야 합니다.
    • Firebase 콘솔 또는 firebase deploy 를 사용하는 CLI에서 게시된 규칙 세트 텍스트 소스의 크기에 대한 256KB 제한입니다.
    • Firebase가 소스를 처리하고 백엔드에서 활성화할 때 발생하는 컴파일된 규칙 세트의 크기에 대한 250KB 제한입니다.

    지출 관리

    청구서에 예기치 않은 요금이 청구되지 않도록 하려면 월예산 및 알림을 설정하십시오.

    월예산 설정

    Cloud Firestore 비용을 추적하려면 Google Cloud Console에서 월별 예산을 만드세요. 예산은 사용량을 제한하지 않지만 해당 월의 계획된 비용에 근접하거나 초과할 때 알려주도록 알림을 설정할 수 있습니다.

    예산을 설정하려면 Google Cloud Console의 결제 섹션으로 이동하여 Cloud Billing 계정에 대한 예산을 만드세요. 기본 알림 설정을 사용하거나 알림을 수정하여 월예산의 다른 비율로 알림을 보낼 수 있습니다.

    예산 및 예산 알림 설정 에 대해 자세히 알아보세요.

    일일 지출 한도 설정

    Cloud Firestore 사용량을 제한하려면 App Engine을 통해 일일 지출 한도를 설정하세요. App Engine을 사용하면 Cloud Firestore를 포함하여 App Engine 관련 리소스에 대한 일일 지출 한도 를 설정할 수 있습니다. App Engine 한도는 다른 Firebase 제품에는 적용되지 않습니다.