谷歌数据存储区是否建议用于存储日志?

时间:2015-05-07 11:07:33

标签: google-app-engine elasticsearch google-cloud-datastore

我正在调查哪些可能是存储来自许多客户端的日志文件的最佳基础结构。

Google App引擎提供了一个很好的解决方案,不会让这个过程成为IT噩梦:负载均衡,分片,服务器,用户身份验证 - 所有这些都在一次性配置中几乎为零。

但是,我想知道数据存储模型是否适合存储日志。每个日志条目应保存为单个文档,每个客户端每天上载其文档,每天可包含100K的日志条目。

另外,有一些限制和问题可能会破坏要求:

  1. 批量事务超时60秒 - 我每秒可以插入多少个日志条目?如果100K不符合60秒框架 - 这将影响设计和需要放入服务器的工作。
  2. 每个实体每秒插入5个 - 事务是否被视为单个插入?
  3. 后期分析 - 文本搜索,搜索跨客户端的类似日志条目。 Datastore对这些查询的灵活性和高效性是什么?
  4. 实时数据获取 - 获取所有最近的日志条目。
  5. 另一个选择是在goole compute上部署elasticsearch集群,并自行编写服务器,从ES中获取数据。

    谢谢!

2 个答案:

答案 0 :(得分:0)

使用数据存储区的想法很糟糕,如果在比较性能时使用带有父/子的实体组作为注释,则会更糟糕。  这些数字不适用,但数据存储区根本不是为您所需的设计。 bigquery就是你想要的。如果你以后想要以类似sql的方式分析日志,它专门为此而设计。任何更多细节都要求您提出具体问题,因为您似乎没有阅读过任何一项服务。

答案 1 :(得分:0)

我不同意,数据存储是一个完全完全托管的无sql文档存储数据库,您可以在这种类型的存储中存储所需的日志,并且可以直接在数据存储中查询,使用它代替BigQuery的好处是无模式部分,在BigQuery中,您必须在插入日志之前定义模式,如果您使用DataStore,则不必这样做,可以将DataStore视为Google Cloud中的MongoDB日志分析用例。