gpt4 book ai didi

php - 如何处理用于分析的大型数据集以及不同数量的列?

转载 作者:可可西里 更新时间:2023-11-01 07:42:54 24 4
gpt4 key购买 nike

我正在为移动应用程序构建分析系统,但在决定如何存储和处理大量数据时遇到了一些困难。

每一行将代表一个“ View ”(如网页)并存储一些固定属性,如用户代理和日期。此外,每个 View 可能有不同数量的额外属性,这些属性与执行的操作或内容标识符有关。

我看过 Amazon SimpleDb,它可以很好地处理不同数量的属性,但不支持 GROUP BY,而且在计算行数时似乎也表现不佳。生成包含 30 个数据点的月度图表需要针对每个数据集的每一天进行查询。

MySQL 可以更好地处理 COUNT 和 GROUP 修饰符,但额外的属性需要存储在链接表和 JOIN 中以检索属性与给定值匹配的 View ,这不是很快。 5.1 的分区功能可能有助于加快速度。

我从对上述系统的大量阅读和分析查询中收集到的是,最终所有数据都需要聚合并存储在表中,以便快速生成报告。

在我的研究中我是否遗漏了任何明显的东西,有没有比使用 MySQL 更好的方法来做到这一点?感觉这不是这项工作的正确任务,但我找不到任何能够同时进行 GROUP/COUNT 查询和灵活表结构的东西。

最佳答案

在这种情况下,您希望将数据存储一次并一遍又一遍地读取。此外,我认为您希望对查询进行预处理,而不是每次都需要计算。

我建议您将数据存储在 CouchDB 中,原因如下:

  • 它的表是无结构的
  • 它的查询是经过预处理的
  • 它对 map-reduce 的支持允许您的查询处理分组依据
  • 它有一个 REST 服务访问模型,让您可以从几乎所有处理 HTTP 请求的东西进行连接

考虑到 CouchDB 是多么的新,您可能会发现这个建议有点不合适。但是,我建议您阅读它,因为我个人认为运行 CouchDB 数据库既简单又轻便。比MySQL更轻量

关于php - 如何处理用于分析的大型数据集以及不同数量的列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3619722/

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