将 JQuery 用于 Datastore 表? (定价问题)
Use JQuery with Datastore tables? (pricing question)
我正在使用 GAE + Google Datastore / flask / python / bootstrap 开发一个应用程序,需要一些帮助来弄清楚(从定价的角度)如何查询并在此应用程序中过滤数据。
我需要为应用程序提供在 Google 数据存储区 table 中搜索数据的能力。例如,仅显示提及“xyz”的产品或订单;这些 table 每个可以增长到 10K 个实体。文本“xyz”可以在任何 table 列中。用户可能还想对任何列的 table 进行排序。
文档和教程中充满了“为了节省成本”限制为 10 个实体的数据存储区查询。
所以,当显示例如订单 table,默认情况下我只能显示最近的 10 个订单。只有用户需要查看更多的订单,我才可以去查询。而且我也只能显示按产品 ID 订购的前 10 个产品,并在需要时查询更多。这将保持低成本,但会使编码变得复杂,因为要搜索所有提到“xyz”的订单或产品,我需要每次迭代 10 个(可能更多)实体的查询,并对它们的所有属性应用过滤器。一个一个地执行所有这些查询可能会降低响应速度。
另一方面,我可以一次加载整个订单table,并用bootstrap + jquery显示。通过最少的编码工作,我会提供一个 table,用户可以在其中搜索所有字段,会有选项卡,可以轻松地对其进行排序等。
从审美、用户体验和编码的角度来看,我宁愿每次都检索整个 table 并用 bootstrap + jquery 呈现,但害怕安装成本:如果说,10K 个订单 table 每天打开 100 次,我将每天检索 100 万个实体。那将是每月大约 150 美元,我需要向我的潜在客户收取这笔费用。
那么,这方面的最佳做法是什么?
提前致谢!
您有 2 个问题需要处理:(1) 定价和 (2) 用户体验(从数据存储中检索 10,000 个实体需要花费大量时间)。
最佳做法是只获取需要在屏幕上显示的内容(例如,一次显示 10-100 个实体)。当用户做某事时,然后根据用户想要的进行另一个查询。例如,如果用户点击“下一步”按钮,那么您将获得下一组实体,或者如果用户按列排序,那么您将获得按该值排序的实体。
这样,您的成本会更低,用户应该会在 1 秒内看到结果,而不是 30 秒(这是一个非常粗略的估计)。
我正在使用 GAE + Google Datastore / flask / python / bootstrap 开发一个应用程序,需要一些帮助来弄清楚(从定价的角度)如何查询并在此应用程序中过滤数据。
我需要为应用程序提供在 Google 数据存储区 table 中搜索数据的能力。例如,仅显示提及“xyz”的产品或订单;这些 table 每个可以增长到 10K 个实体。文本“xyz”可以在任何 table 列中。用户可能还想对任何列的 table 进行排序。
文档和教程中充满了“为了节省成本”限制为 10 个实体的数据存储区查询。 所以,当显示例如订单 table,默认情况下我只能显示最近的 10 个订单。只有用户需要查看更多的订单,我才可以去查询。而且我也只能显示按产品 ID 订购的前 10 个产品,并在需要时查询更多。这将保持低成本,但会使编码变得复杂,因为要搜索所有提到“xyz”的订单或产品,我需要每次迭代 10 个(可能更多)实体的查询,并对它们的所有属性应用过滤器。一个一个地执行所有这些查询可能会降低响应速度。
另一方面,我可以一次加载整个订单table,并用bootstrap + jquery显示。通过最少的编码工作,我会提供一个 table,用户可以在其中搜索所有字段,会有选项卡,可以轻松地对其进行排序等。
从审美、用户体验和编码的角度来看,我宁愿每次都检索整个 table 并用 bootstrap + jquery 呈现,但害怕安装成本:如果说,10K 个订单 table 每天打开 100 次,我将每天检索 100 万个实体。那将是每月大约 150 美元,我需要向我的潜在客户收取这笔费用。
那么,这方面的最佳做法是什么?
提前致谢!
您有 2 个问题需要处理:(1) 定价和 (2) 用户体验(从数据存储中检索 10,000 个实体需要花费大量时间)。
最佳做法是只获取需要在屏幕上显示的内容(例如,一次显示 10-100 个实体)。当用户做某事时,然后根据用户想要的进行另一个查询。例如,如果用户点击“下一步”按钮,那么您将获得下一组实体,或者如果用户按列排序,那么您将获得按该值排序的实体。
这样,您的成本会更低,用户应该会在 1 秒内看到结果,而不是 30 秒(这是一个非常粗略的估计)。