-1

对于有关数据存储的功能性问题,我需要您的帮助。

我在一个项目中,用户可以在服务器上保存一种 excel 表。桌子的大小不是固定的。

存储表格的最佳解决方案是什么?作为存储为我的 MySql 数据库中的文本的数组?使用 MongoDB 或其他 NoSQL 解决方案?

有关信息,不会在表格上实施搜索功能。

十分感谢!

编辑:我添加了两个数据表示例:

示例 1:每个销售员每季度的销售额

            Sven    Kenneth
2013.Q1     1200    4500
2013.Q2     1350    900
2013.Q3     2487    784
2013.Q4     4570    4512
2014.Q1     4785    3451

示例 2:一对夫妇和他们的孩子每月的体重

       Him    Her    Children
Jan    70.5   52.1   45.1
Feb    71.8   52.7   46.1
Mar    70.8   52.7   46.0
Apr    70.1   51.9   46.1

这两个示例的行数和列数不一样,并且会随时间变化:下个季度,公司可以聘请新的业务员。

如何存储这些数据?请注意,用户永远不会在这些表格上进行搜索。

我希望这更清楚。

4

2 回答 2

2

为了解决

这两个示例的行数和列数不一样,并且会随时间变化:下个季度,公司可以聘请新的业务员。

回到我们使用关系表的过去,我们会将其分解为两个表

period | salesman | sales
2013.Q1  Sven       1200    
2013.Q2  Sven       1350    
2013.Q3  Sven       2487    
2013.Q4  Sven       4570    
2014.Q1  Sven       4785   
2013.Q1  Kenneth    4500
2013.Q2  Kenneth    900
2013.Q3  Kenneth    784
2013.Q4  Kenneth    4512
2014.Q1  Kenneth    3451

salesman   | id
Sven L       Sven
Kenneth W    Kenneth

这没有标准化到第 5 范式,但可以。

你可以使用 Cassandra 或 Mongo,Cassandra 你可以使用超级列族,它允许你动态创建列,而 MongoDb 它不是一个刚性结构,你只保存 json 对象,你可以只保存像这样的季度:

{
"quarter" : "2013.Q1", 
"salespeople" : [
    {"salesman": "Sven", "sales" : 1200},
    {"salesman": "Kenneth", "sales" : 4500}
 ]
}

明年

{
"quarter" : "2014.Q1", 
"salespeople" : [
    {"salesman": "Sven", "sales" : 1200},
    {"salesman": "Kenneth", "sales" : 4500},
    {"salesman": "Somebodyelse", "sales" : 100000}
 ]
}

你可以两种方式都做,但关系方式要容易得多

于 2014-04-30T13:39:11.597 回答
0

我没有找到明确的答案,但我会解释我会做什么。

我将简单地将结果存储为二维数组。

于 2014-04-29T19:08:23.263 回答