如何为大型并发迭代设计和准备

时间:2016-03-16 05:43:25

标签: mysql database-design mysql-workbench

我可以使用您的帮助来设置我的数据库结构最佳方式(未来证明)。 这有助于根据特定客户资料从预订网站中删除数据。在此之后,我想建立带有枢轴等的仪表板,主要通过php获得洞察力。

情况:

- 10k customer profiles per month 
- through 5 sites 
- with about 125 results 
- with 20 attributes (pricing etc) per result

这是第一次迭代的最小125mio数据......

以下迭代可能会偏离> #site和新的/部分重叠的客户档案(我猜20k)。

限制: - one MySQL database so far

我考虑过列,行和表的限制,这些是我能想到的选项。也许/希望你有更好的建议或指向下面的一个:

  
      
  1. 包含所有配置文件的1个表,而不是每个配置文件创建表并保存每一行中的数据(#sites,#results,#attributes)

  2.   
  3. 与1.相同但是为了保存每个配置文件表的行数,每个站点数据的一个blob(#results和#properties)。但是因为我已经   从来没有与特定的blob一起工作,我不知道有多容易/困难   这将是从那里获取数据进行分析。

  4.   

1 个答案:

答案 0 :(得分:0)

你的第二个解决方案比第一个解决方案有更多的并发限制。如果两个进程想要写入相同的blob,那么锁定的考虑因素比一切都被分解的要多得多。

首先规范化您的数据。然后随着你的成长,只能在你需要的地方进行非规范化。规范化是一种全局优化,而非规范化既有成本又有好处。