psaux_grep_node 发表于 2016-07-05 23:24

大量excel数据文件需解析入库,分表OR分库?探讨设计方案

是这样的一个应用场景:系统前台不定时会有很多的excel文件上传,系统后台会解析上传文件并分析入库,然后将生成的数据库信息返回供前台查询。

1.举单个excel文件为例(如contact.xls),这个文件里面有2个sheet,分别是programer和hrer。当上传至系统后台解析到某一个db里面,随即生成这样两张表,contact.programer、contact.hrer。接着前台可根据后台的生成信息,查询该文件(contact)对应的相关数据。

但这里就会出现了一个问题,随着业务量的增加,会有很多的excel的文件导入,并且有的excel文件里面会有更多的sheet,>10的情况也是常事。如果按上述的解决方案,某个db里面很有很多的表,上千张表是妥妥的。这样的查询会影响效率吧?

2.于是引出另一个解决方案,将1个excel文件当作1个db,文件里面的sheet为该db下的表。这样的解决方案就是可能每个db下的表少了,但是相应的1个mysql服务下的db数量就巨多了,成百上千个,而且不同文件的切换查看,相当于随时都要切换数据库,效率是不是也会有影响?

最后1个方案就是综合上述两者,即以先按时间月来分库,然后再用第1种的方式将excel文件解析入库。

这个应用场景之前没遇到过,求教谁有更好的设计方案呀?万分感谢。:D
页: [1]
查看完整版本: 大量excel数据文件需解析入库,分表OR分库?探讨设计方案