2012-04-15 4 views
0
  1. 높은 복제 데이터 저장소의 경우 Usage Notes에서 엔티티 그룹은 초당 1 개의 쓰기로 제한됩니다. 나는 약간 혼란스러워. 이 다른 기사의 Understanding Write Costs 섹션에서는 새로운 엔티티를 저장하는 데 14 건의 비용이 소요될 수 있음을 보여줍니다. 첫 번째 기사에서 언급 한 초당 1 회 쓰기는 두 번째 기사에서 나온 것과 동일한 측정법입니까? 그렇다면 기본 엔티티를 저장하는 데 10 초가 걸릴 것입니까? 그게 맞을 수 없다고 확신합니까?Google App Engine 엔티티 그룹 쓰기 제한

  2. Google은 루트 엔티티로 상위 항목없이 저장된 엔티티가 최종 일관성을 유지한다고 말합니다. 이것은 한 사용자가 조상이없는 데이터 저장소에 새 엔터티를 추가하는 경우 즉시 쿼리를 수행하면 사용할 수 있음을 보장하지 않는다는 뜻입니까? 그렇다면, 어쨌든 "궁극적 인"기간은 얼마입니까? 몇 시간 일 수 있습니까, 아니면 그냥 초 얘기입니까?

답변

2
  1. 기입 한계는 초당 데이터 스토어 1 개 엔티티에 기록된다. 쓰기 비용은 엔티티마다 업데이트해야 할 수도있는 인덱스의 수입니다. 이들은 엔티티마다 다를 수 있으며 "1 초당 쓰기"쓰기와 별도의 측정입니다.

  2. 맞습니다. 그러나 결과가 크게 일치하는 몇 가지 구체적인 경우가 있습니다. 하나의 엔티티를 가져 오는 키에 의한 GET 쿼리는 매우 일관성이 있습니다. 조상 쿼리는 데이터 스토어가 매우 일관된 다른 경우입니다. "최종"이란 의미가 없다는 것을 의미합니다. 일반적으로 초이지만 BigTable 태블릿이 가득 차서 분리해야하거나 특별한 태블릿이 내려 가고 교체해야하는 특수한 경우에는 결국 더 오래 걸릴 수 있습니다. 몇 시간 동안 오래된 결과를 반환하는 쿼리에 대한 메일 링리스트에 대한 몇 가지 불만을 보았습니다. 그러나 이것은 일반적이지 않았습니다.

+0

"1 엔티티는 초당 데이터 저장소에 쓰기".. 엔티티 그룹 당 초당 엔티티 쓰기 권한이 1 건 있습니까? 그래서 두 번째 데이터 저장소에 20 개의 새로운 엔티티를 추가 할 수 있습니다. 정확히 같은 엔티티 그룹이 아닌 것은 맞습니까? – Snowman

+0

네, 맞습니다. – dragonx

1
  1. 나는 (닉 존슨의 무게까지 기다릴 것) 이것에 대해 완전히 확실하지 않다 그러나 나는 초당/쓰기 커밋들이 한 거래를 참조하고 있다고 생각합니다. 데이터 저장소의 트랜잭션 잠금은 엔티티 그룹 수준에서 작동하므로 동일한 시간에 작업 할 수있는 (분산 된) 트랜잭션의 수에 제한이있을 것으로 추측합니다.

  2. 귀하의 이해가 맞다고 생각합니다. 이는 HR 데이터 스토어가 몇 가지 데이터 스토어에 데이터를 기록하고 결국 다른 모든 데이터 스토어에 데이터를 복제한다는 사실에서 비롯된 것입니다. 두 번째 쿼리가 업데이트를 아직받지 못한 데이터 저장소로 전송 될 수 있습니다. 내가 본 것에서, '궁극적으로'는 몇 초 만에, 때로는 덜 중요합니다. 분산 아키텍처의 요점은 당신이 그 시간 차이에 의존하지 않는다는 것입니다.