Php 读取数百万个小csv文件作为数据库或几个大文件

Php 读取数百万个小csv文件作为数据库或几个大文件,php,mysql,csv,Php,Mysql,Csv,我对构建大量价格表的最佳方法存在问题 大约有50种产品具有不同的选项/属性,这些选项/属性决定了需要在php中加载的价格 例如: Product 1 Options: Quantity: 1, 50, 100, 250, ... 300.000 Color: Green, Blue, Red Size: S, M, L Material: Wood, Cotton, Stone Thickness: 10mm, 15mm, 20mm Product 2 Options: Quantity: 1

我对构建大量价格表的最佳方法存在问题

大约有50种产品具有不同的选项/属性,这些选项/属性决定了需要在php中加载的价格

例如:

Product 1
Options:
Quantity: 1, 50, 100, 250, ... 300.000
Color: Green, Blue, Red
Size: S, M, L
Material: Wood, Cotton, Stone
Thickness: 10mm, 15mm, 20mm

Product 2
Options:
Quantity: 1, 25, 50, 200 ... 350.000
Color: Green, Blue, Red
Width: 20cm, 50cm, 90cm
Height: 10cm, 30cm, 20cm
有些产品选项是不同的,有些对于每个产品都是相同的(比如数量)。一个选项最多可以有一百个不同的值可供选择

定价表在excel工作表和exportet中作为csv文件进行计算

我的方法是采用我的值的id并生成如下组合id:

Green+M+Wood+10mm = 2341+2342+4532+2346 = 2341234245322346
并将它们作为mysql表放入一个大索引中

price_tables
------------
combination_id    |  product_id   |  filename
------------------------------------
2341234245322346  |  23           |  price_23_2341234245322346.csv
2342234245322346  |  23           |  price_23_2341234245322346.csv
2342234245322347  |  24           |  price_24_2342234245322347.csv
然后让我的csv文件结构如下

price_23_2341234245322346.csv
------------------------------
quantity  |  price
-----------------------
1         |  321,22€  
50        |  512,32€  
100       |  1203,54€  
或者对于每种产品只读取一个巨大的csv文件会更好/更快吗。 像这样:

product_23.csv
--------------------------------
quantity  |  color  |  size  | ... |  price
------------------------------------------
50        |  Green  |   S    | ... |  321,22€  
50        |  Green  |   M    | ... |  512,32€  
50        |  Red    |   S    | ... |  1203,54€  
...
有人能帮我管理这么大的数据量吗

问候


TrytoFly

您不使用数据库有什么特殊原因吗?这对我来说就像一场噩梦……每次价格发生变化时,所有csv文件都需要全新生成,与将我的csv文件放入文件夹相比,重新创建和填充数千个mysql表不是一场噩梦吗?如果它在数据库中,你根本不需要csv文件。同意@CD001的观点。您需要停止使用CSV文件进行类似操作,并将所有内容移动到数据库中。如果你这样做了,你的生活会变得更加简单和简单。好吧,但为什么这里会出现这种情况呢?我从不需要更新、删除、更改单个表或行,而且这些表是通过vba在某些excelsheet中生成的,那么(例如)mysql数据库在这里的优势是什么?