2013-03-28 2 views
1

두 가지 질문이 있습니다.데이터 저장소의 엔티티 업데이트 비용 (속성을 추가 할 수 있습니까?)

  1. , 비용은 2 쓰기 처음 내가) (그 실체를 넣을 수 있습니다 :

    # create entity 
    
    Entity(ndb.Model): 
        blob = ndb.BlobProperty(indexed=False) 
    
    e = Entity() 
    e.blob = 'abcd' 
    e_key = e.put() 
    
    
    # update entity 
    
    e = e_key.get() 
    e.blob += 'efg' 
    e.put() 
    

    그래서 질문은 ... 이제 나는 방울 속성을 가진 개체가 있다고 가정 해 봅시다 작전; 위의 예에서와 같이 엔티티를 업데이트하는 데 필요한 작업 수는 얼마나됩니까?

  2. 속성에 'efg'를 추가하면 먼저 이전 속성을 메모리에 읽어야하고, 앱 엔진이 먼저 값을 읽지 않고 이전 값을 추가하는 방법을 제공합니까?

답변

3

부분적인 업데이트가 없습니다. 전체 엔터티를 덮어 쓸 때마다 지수의 수 또한 비용에 영향을 미칩니다. 어떤 일이 발생했는지에 대한 자세한 분석을 보려면 https://developers.google.com/appengine/articles/life_of_write을보고 싶을 수 있습니다.

+0

그래서 엔티티를 업데이트하는 것은 엔티티를 만드는 것과 정확히 동일합니다. 그리고 하나의 속성 만 변경하더라도 다른 속성은 "자체적으로"덮어 씁니까? 그건 비효율적 인 것 같습니다. – Chad

+0

그게 어떻게 작동하는지, 우리는 더 이상 토토 캔자스가 아닙니다 ;-) 당신이 글을 읽는 것에 따라 업데이트하는 것보다 업데이트하는 것이 더 비쌉니다. –

+0

"우리는 더 이상 Toto가 캔사스에 있지 않습니다."... 또 다른 코멘트가 삭제 되었습니까? Toto : P입니까? 감사. – Chad

관련 문제