【发布时间】:2016-07-13 16:45:51
【问题描述】:
在我工作的物理实验室中,在每个实验开始时(我们每分钟运行几次),我们会执行一系列插入 MariaDB 数据库的操作。其中一个表有几百列——每列对应一个命名变量——并用作该运行期间使用的参数的日志。例如,一个变量是实验特定步骤中使用的激光功率。
随着时间的推移,实验者会添加新变量来参数化实验的新步骤。最初我的代码通过简单地向表中添加新列来处理这个问题 - 但随着表中的行数增加到超过 60000 左右,添加列所花费的时间变得非常长(超过一分钟)。
目前,我已经通过预先定义了几百个额外的列来规避这个问题,这些列可以重命名为需要新的变量。然而,以添加变量的速度,这只会持续我们的实验室(或使用该软件的其他实验室)几年,然后才需要进行表维护。我想知道是否有人可以推荐一种不同的架构或不同的平台来为这个“列数”问题提供自然的解决方案。
【问题讨论】:
-
现在你会让数据库设计者在研讨会上假设物理理论吗?不!那你为什么要让一个非常优秀的物理学家(我假设)设计一个数据库。找一个了解手头任务的人并获得适当的帮助。数据库设计并非易事
-
我想知道是否有人可以推荐不同的架构除非你知道不仅仅是关于如何使用它,它的用途是什么,以及如何再次需要它的信息。老实说,获得一些专业帮助
-
虽然我很欣赏这些建议,但我需要强调的是,我们研究风格的性质(即我们的预算和我们的快速研究步伐)几乎所有东西都是 DIY。我们不假装自己是数据库设计师,就像我们假装是电气工程师一样,但无论如何,在这种情况下,我们都需要一个小规模的内部解决方案。
标签: mysql