我目前正在为一家大公司开发使用 PHP/MySQL 的电子商务软件。我有两种选择来获取一些特定的数据:
- DB(用于获取海量数据,例如 PRODUCTS、CATEGORIES、ORDERS 等)
- TXT(使用 YAML - 获取分析数据和一些选项)
例如,当用户转到产品详细信息页面时,我需要获取这些 TXT 文件:
- 产品摘要文件(product_hit、quantity_sold 等)- 大约最大。 90KB
- 语言和设置文件(例如公司名称、模板的翻译)-大约最多。 300KB
- 可能还有一个文件(我不知道对不对)-假设是 100KB。
我想使用这种方式,因为数据很容易被人类阅读并且可以在编程语言之间移植。此外,如果我使用 DB,我需要连接几个表。但是这些文件将它们组合在一起。
我的 txt 文件看起来像 (YAML):
product_id: 1281
quantity_sold: 12 #item(s)
hit: 1105
hit_avarage: 92 #quantity_sold/hit
vote: 2
...
但是,我仍然不确定速度和性能。使用 TXT 文件是个好主意吗?我真的应该使用这种方式而不是 DB 吗?
最佳答案
由于您不能部分包含和解析 YAML 文件,您必须将文件作为一个整体来解析,这意味着您将获得令人难以置信的性能提升。您可以将此比作从数据库中选择所有行,然后遍历它们以找到您要查找的行,而不仅仅是键入 WHERE 条件。所以是的,数据库可以更快地完成您的要求。
不过请务必查看基于文档的数据库,您不一定要使用关系数据库。事实上,在查看 YAML 文件示例时,我认为使用“no SQL”数据库是更好的选择。
干杯。
关于php - TXT 文件中的产品分析数据(使用 YAML),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4888205/