2017-12-04 4 views
2

경우 FireStore 어레이와 같은 데이터 구조를 인덱싱 이에 제한 경우 FireStore 설명서

인덱싱 한도 이하 설명있다 - 하나의 문서 인덱스 내장 클라우드 경우 FireStore를 사용 위해 단지 20,000 특성을 가질 수있다. 배열 형식의 데이터 구조가 수만 명의 회원으로 성장하면이 한계가 발생할 수 있습니다.

https://cloud.google.com/firestore/docs/solutions/arrays

은 내가 설명을 해석 할 수있는 방법을 알고 싶어요. 두 가지 패턴 중 어느 패턴이 한계를 충족합니까?

<pattern 1: categories in one document above 20,000> 
    doc1 
    - id:111 
    - categories: {aaaa:true, aaab:false, aaac:true, aaad: false, aaae:true, aaaf:true, aaag:true, aaah:true, aaai:true, aaaj:true, ,,,,,,,,,,, } 

다른 패턴

<pattern 2: categories in one document is a few but as a collection of document number of categories above 20,000> 
    doc_1 
    - id:111 
    categories{aaaa:true, aaab:false, aaac:true, only several element} 
    doc_2 
    - id:111 
    categories{aaad:true, aaae:false, aaaf:true, only several element} 
    doc_3 
    - id:111 
    categories{aaag:true, aaah:false, aaai:true, only several element} 

그 패턴 1은 한계에 도달 생각하지만, 패턴이 한계에 도달한다?

답변

0

한계는 입니다. 총계는입니다. 따라서 두 패턴 모두 20,000 한계에 도달 할 수 있습니다.

을이 문서는 두 가지 속성이 있습니다 : 여기

도움이 될 수 있습니다 카운트 특성의 몇 가지 예입니다 ab.c

{ 
    a: "foo", 
    b: { 
    c: "bar" 
    } 
} 

이 문서는 네 가지 속성이 있습니다 a, b, b.cd

{ 
    a: "foo", 
    b: { 
    c: "bar", 
    }, 
    d: ["quz", "qaz"] 
} 

그리고이 d ocument뿐만 아니라 네 가지가 있습니다

{ 
    a: "foo", 
    b: { 
    c: "bar", 
    }, 
    d: ["quz", "qaz", "apple", "banana"] 
} 

이 문서는 다섯 가지가 있습니다

{ 
    a: "foo", 
    b: { 
    c: "bar", 
    }, 
    d: ["quz", "qaz"], 
    e: ["apple", "banana"] 
} 

따라서는 단일 배열의 길이 또는 얼마나 깊이 중첩 된 일이 있습니다에 대한 아니에요을, 그것은 쿼리 가능한 값의 총 개수에 관하여 .


편집 03/05/18 : 내가 말한 때 배열 구성원이 인덱스에 대해 별도로 계산하기 전에 내가 잘못했다. 그들은 파이어 스토어 (Firestore)가 공개 된 적이 없었던 알파에 있었을 때 우리가 가지고 있었던 무언가였습니다.

+0

설명해 주셔서 감사합니다. 그런 다음 리프 노드의 수에 제한이 적용됩니다. 문서가 콜렉션으로 존재하는 경우 number는 콜렉션과 관련이 없으며 각 문서에만 적용됩니다. –

+0

@YuutaMoriyama 맞습니다. 각 문서 만 –

관련 문제