2017-04-07 20 views
0

에서 '사용자 호응 "노드가 나는 사용자의 목록을 가져 오는 경우가 구조화 내 중포 기지 데이터베이스에서 중포 기지

user-followers 
    -F2iRZkwfuTcKUvd7uYD0jwWeJ7T2 
    -KgkkWy5xesvcFcL9GMh: true 
    -KgkoZpD0GP687J_5Zh5: true 
    -KglKYB8Fcfbc-uwsqwX: true 

에 따라 모든 사용자 ID가 함께 사용자 ID를 보유하고 user-followers 노드가 추종자, 나는 또한이 데이터 구조는 현재?이 작업을 수행하는 가장 좋은 솔루션이 될 것입니다 무엇이

users 
    -KgkkWy5xesvcFcL9GMh 
    -image_url: "http://someurl.png" 
    -username: "coold00d55' 
    //etc... 

보이는 등 사용자 이름, 프로필 그림의 URL, 같은 추종자 정보의 일부를 인출해야합니다 나는 단지 생각할 수있다

이 날에 forEach()

통해 개별적으로 사용자 정보의 조회를 수행 팔로어

2)의 배열을 가져 오는 451,515,

1) 차선 보인다. 더 좋은 방법이 있습니까? 아마도 user-followers 아래에 사용자 이름과 image_url을 저장하는 편이 좋을까요?

모든 의견을 환영합니다.

답변

1

둘 모두 유효한 옵션입니다. 두 번째 아이디어 (사용자 이름과 이미지 _ 저장)를 저장할 제안은 다른 노드 아래에 있어야만 사용자 추종자가 해당 데이터를 원하지 않는 경우에 대비할 수 있습니다. 데이터 액세스 빈도에 따라 높은 처리량이 필요한 경우 두 번째 아이디어가 더 나을 수 있습니다. 추가 된 유일한 작업은 다른 목록이 항상 업데이트되도록 코드를 작성해야한다는 것입니다 (아마도 firebase에 사용할 수있는 새 기능을 사용할 수 있습니다).

+0

두 번째 옵션은 좋은 접근 방법이지만 사용자가 프로필 (프로필 사진 또는 사용자 이름)을 업데이트하면 사용자 추종자 데이터가 즉시 부실/오래된 상태가됩니다. 이게 싸울 수 있니? –

+0

그 사실만으로도 더 많은 데이터를 가져올지라도 첫 번째 옵션이 최고라고 생각합니다. 내가 검색 한 사용자의 양을 항상 지정할 수는 있지만. 사방에 나는 22 번을 잡아라. –

+0

나는 그 대답의 두 번째 부분에서 그 점을 언급했다. "유일한 추가 작업은 다른 목록이 항상 업데이트되도록 코드를 작성해야한다는 것입니다." –