为什么此综合索引为空?

时间:2018-11-01 13:10:19

标签: google-cloud-datastore

我有一个具有以下综合索引的数据存储(数据存储模式下的Firestore)数据库/实体:

- kind: spider-results
  properties:
  - name: created
    direction: desc
  - name: meta
  - name: score

这已在两天前应用,但是我的索引不包含任何实体。

screenshot 1

screenshot 2

实体比索引中包含的三个实体具有更多的属性。在使用google-cloud-datastore版本1.7.1的Python中,我试图获取实体。为了使查询尽可能快并仅返回索引中包含的字段,我设置了projection参数:

client = datastore.Client.from_service_account_json(credentials_path)
query = client.query(kind='spider-results', order=['-created'],
                     projection=['created', 'meta', 'score'])
for entity in query.fetch(eventual=True):
    print(entity.key.name)

但是,这不会产生任何结果。我的理解是,这是由于匹配索引为空引起的。

当我删除projection参数时,查询产生结果(包含一些相对较大的字段,这些字段会导致大量数据传输,从而减慢了整个查询的速度。

0 个答案:

没有答案