gpt4 book ai didi

python - Bigtable 还是 Datastore 更适合在线应用程序存储和使用财务数据?

转载 作者:太空宇宙 更新时间:2023-11-03 13:58:34 25 4
gpt4 key购买 nike

我正在创建一个股票分析网络应用程序。我想存储多只股票的财务数据。然后我想对它们使用股票筛选器。该筛选器涉及从后端检索多只股票并对它们执行技术指标测试。通过指标测试的股票将返还给用户。假设我想为 exampleStock 存储一个 pandas.dataframe:

          open    high      low   close    volume
date
2017-08-01 247.46 247.50 246.716 247.32 55050401
2017-08-02 247.47 247.60 246.370 247.44 47211216
2017-08-03 247.31 247.34 246.640 246.96 40855997
2017-08-04 247.52 247.79 246.970 247.41 60191838
2017-08-07 247.49 247.87 247.370 247.87 31995021
....

我一直在使用 DataStore。我为每只股票创建实体,将键设置为股票代码。我使用这样的模型:

from google.appengine.ext import ndb

class Stocks(ndb.Model):
dates = ndb.StringProperty(repeated=True)
open = ndb.FloatProperty(repeated=True)
high = ndb.FloatProperty(repeated=True)
low = ndb.FloatProperty(repeated=True)
close = ndb.FloatProperty(repeated=True)
volume = ndb.FloatProperty(repeated=True)

然后我检索多个实体以使用技术指标检查进行循环:

import numpy

listOfStocks = ndb.get_multi(list_of_keys)
for stock in listOfStocks:
doIndicatorCheck(numpy.array(stock.close))

我想查询股票,进行指标检查,然后尽快将结果返回给用户。我应该为此使用 Bigtable 还是 Datastore 可以?如果 Datastore 没问题,这是实现它的理想方式吗?

提前致谢。

最佳答案

披露:我是 Cloud Bigtable 的产品经理。

如果您计划拥有大量财务数据,覆盖整个股票市场,Cloud Bigtable 是一个不错的选择:它可以扩展到 TB 和 PB 级,并且您可以获得对您的请求的低延迟响应,它已经是在金融、风险和反欺诈应用程序中使用,并通过其三维本身支持时间序列。参见 this blog postvideo关于 FIS 如何使用 Cloud Bigtable 竞标 SEC CAT 项目。

也就是说,Cloud Bigtable 在单个集群中是强一致的,但如果您使用复制,则最终是一致的,因此您必须牢记这一点。如果您的用户期望强一致性,您的选择是:

  • 使用单个集群实例(仅在单个区域内复制)
  • 如果您使用跨区域复制,请通过application profiles 将请求路由到单个集群
  • 考虑使用提供高度一致性的不同系统

Firestore 将为您的应用程序提供具有强一致性的无服务器文档数据库,因此如果这对您的用例很重要,您应该考虑使用 Firestore。

如果您希望能够对您的数据运行 SQL 查询,请考虑:

希望这对您有所帮助!

关于python - Bigtable 还是 Datastore 更适合在线应用程序存储和使用财务数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52217149/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com