【发布时间】:2018-09-07 22:35:43
【问题描述】:
我有一个网站有很多交易记录,在 MySQL 上大约有 200 万行 我经常需要擦除数据,因为它在获取数据时会变慢
数据库:MYSQL 朗:PHP 5.4 操作系统:Ubuntu 16.04
第一个用户会做一些订单,然后将它保存在数据库中,然后用户将被重定向到“查看”页面以查看交易详情,然后几分钟(不长,大约 1 ~ 5 分钟)它将被更新,之后用户可能想再次查看交易,因为它仅用于 1 次使用
所以我考虑过缓存它而不是“全部删除”,但我从不这样做,所以我不知道它是否会起作用
我打算在 MYSQL 中保存一段时间的数据,直到数据更新,然后我将把它保存到一个平面文件,比如 JSON 文件,或者在 PHP 数组中,从MYSQL,并提供给用户以防用户将来再次需要它
那么我要做的事情有什么好处和坏处? Ubuntu中可以存储多少文件有限制吗? 哪个更好,使用 PHP 数组或 JSON 文件存储?
【问题讨论】:
-
JSON 会在大型数组上中断,
transactions recordsIE 是什么,这些数据有多大价值。如果是订单支付交易,我会建立一个系统来根据日期轮换它们,比如 3 个月后有一个后台工作,将旧交易归档到一个表格中,日期作为名称的一部分。数据库可以很大,但表应该很小。 2m 大小适中,我在 mysql 中达到了 125M ...lol -
文件的问题是访问数据要困难得多,json_encode 会在几十 MB 后中断,具体取决于 RAM 和数据结构。将其平铺存储是可以的,但您必须迭代整个文件并处理每一行以读取任何内容。
标签: php mysql json caching bigdata