我问了另一个关于在 GAE 中进行大型查询的问题,答案几乎是不可能的。
我想要做的是:从 iOS 设备,我得到所有用户的联系人电话号码。所以现在我有一个包含 250 个电话号码的列表。我想将这些电话号码发送回服务器并检查这些电话号码中的哪些属于用户帐户。
所以我需要做一个查询:query = User.query(User.phone.IN(phones_list))
然而,对于 GAE,这是一个相当昂贵的查询。仅此一个查询将花费 250 次读取,我希望经常执行此类查询。
所以我想出了一个疯狂的想法。为什么我不将电话号码托管在另一个主机上,另一个数据库上,这种类型的查询更便宜。然后我可以让 GAE 向我的其他服务器发送 HTTP 请求以获取所需的信息。
所以我有两个问题:
- 有没有更精简的数据库来处理这些类型的查询,并且这样做会更便宜?还是和GAE一样?
- 这是矫枉过正吗?这是个好主意吗?我应该把它吸起来并支付费用吗?