php - TXT 文件中的产品分析数据(使用 YAML)

标签 php mysql database text-database

我目前正在为一家大公司开发使用 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/

相关文章:

database - 只读数据库访问的事务?

SQL Server 按日期获取最新值

php - 嵌套foreach循环不输出数据

php - 如何在 Symfony 2 的类中获取 Request 对象?

php - 如何在记录中显示其他数据 while 子句 where is null?

mysql - 查询失败 您的 SQL 语法有错误;第 1 行 'DESC' 附近

php - 如何将用户从 URL 重定向到页面 404

javascript - x 轴上最后一个带有日期时间格式的标签未出现在 Highcharts 中

php - 解析数据org.json.JSONException时出错

python - 将数据从 Python 文件上传到 Django 数据库