【问题标题】:Biggest reports with PHP and MySQLPHP 和 MySQL 的最大报告
【发布时间】:2014-11-02 16:53:59
【问题描述】:

下午好。

我认为您的问题已经很老了,但仍然没有明确的答案。在拥有数百万(甚至数十亿)的软件中,您需要制作报告,但如果不查找所有数据并在 PHP 中使用它们,就不可能这样做。

问题:

1 - 由于数据大小以 GB 为单位,因此这些记录自然会花费很多时间才能到达 PHP。 2 - 将所有数据放入一个PHP数组中处理它们会导致内存不足。

你们中有人遇到过这种困境吗?因为在具有数千个数据的表中已经遇到了缓慢的问题,问题不在于查询,因为它对我来说是 atimizada(我承认这不是数据库的伟大鉴赏家)和大多数专家,问题确实出在 PHP 中。 ITERATE 听说过,但也许你知道一个更长示例的解决方案。

我相信这个问题可以为许多已经或仍在经历它的用户提供服务。

谢谢你。

【问题讨论】:

  • 你应该使用你的 dbms 而不是 PHP 来操作你的数据,如果你的机器足够强大的话,MySQL 应该能够处理这么多数据。
  • “下午好,先生们。” - 有一些相当不错的“女士编码员”,所以不要忽略它们;)
  • @obiNullPoiиteяkenobi 哈哈哈!我有点喜欢第 17 条规则,如果你知道我的意思!

标签: php mysql memory


【解决方案1】:

通常当您有这么多数据时,您应该每次只在内存中加载一部分。
对每个块执行操作并计算最终报告。

如果您的操作足够简单,您可以让 MySQL 为您完成,前提是您有大量 RAM(但购买起来很便宜)。

另外请注意,如果您的数据多于内存量,那么使用 PHP 或任何其他语言都没有关系。您使用的算法是主要问题。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-12-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多