Google Cloud Client 라이브러리에는 많은 내장 기능이 있지만 해당 ID를 기반으로 엔티티 존재 여부를 쿼리 할 때 사용할 수있는 항목이 없습니다. . 내가 아는 바로는 엔터티 쿼리보다 키 쿼리를 만드는 것이 훨씬 더 효율적입니다. 더 나은 될 것 get(Key key)
기능을 사용하여 가능하면 자바 응용 프로그램 내에서GQL 쿼리 존재 여부 : 쿼리 대 엔티티 쿼리 비교
SELECT __key__ FROM User WHERE __key__ = Key(User, 1)
. 난 그냥 부모 ID와 조상의 존재를 쿼리 할 때 세 가지를보다 효율적으로 될 내 법인뿐만 아니라 조상을 가지고 인스턴스가있는 경우
Datastore datastore = DatastoreOptions.getDefaultInstance().getService();
KeyFactory keyFactory = datastore.newKeyFactory().setKind(User);
Key key = keyFactory.newKey(1);
Entity entity = datastore.get(key);
? 엔티티 쿼리 (SELECT * From Parent WHERE __key__ = Key(Parent, 1)
)가 항상 키 쿼리보다 느릴 것이라고 생각하지만 get?
조상 경로가 더 길게 연결된 경우는 어떻습니까?
SELECT __key__ FROM Grandchild WHERE __key__ = Key(Parent, 1, Child, 1, Grandchild, 1)
종류와 식별자가 별도로 있으면 어떻게됩니까? get() 메서드를 사용하는 것이 더 좋습니까? 아니면 키 리터럴/인수 바인딩을 구성하는 것이 더 낫습니까? – Kookz