我正在构建一个平台,收集并解析包含5000行平均值和40列的“csv”文件;文件可以由任何注册用户上传,所以理论上应该没有限制可以上传和存储多少文件(假设我每天没有超过20次上传)。这些文件正在被一个自定义的PHP解析器解析,这个解析器效率很高,但问题来了:存储。 特别是,我想将这些数据存储在MySQL数据库中供以后使用:我应该如何组织我的数据库?我应该创建一个包含每个文件的行的表格,每个单元格包含原始文件每列的内容吗?还是应该为文件中的每一行插入一行? 第一个对我来说似乎更好一些,因为第二个解决方案构建的行数很多,但也效率较低,因为任何时候我必须提取数据库中的任何数据,我将不得不再解析整个blob,然后解压缩我需要的数据PHP/MYSQL在数据库中存储大型数据集
鉴于我不能在PHP数组中存储数据,因为如果有太多的用户同时连接,会导致内存不足,这将是这种情况下的最佳解决方案?
是否所有的CSV文件都有相同的列? –
数据库中的行数几乎没有意义。对于几乎任何可想象的解决方案,将数据存储在每行CSV中的行将比将整个CSV存储在单行中好得多。 – Fluffeh
是的,CSV具有所有相同的列 – Socket2104