我需要根据上传的CSV文件的结构,确定在运行时确定Django应用程序模型的最佳方法,一旦在Django中创建模型,该文件便将保持不变。
我遇到了几个与在运行时动态创建/更改Django模型有关的问题。人们一致认为这是一种不好的做法,应该事先知道哪些领域。
我正在创建一个站点,用户可以在该站点上载基于时间序列的csv文件,其中的许多列代表传感器通道。然后,用户必须能够选择一个字段以绘制该字段的相应数据。数据将约为10亿行。
从本质上讲,我正在尝试按照以下步骤进行编码,但是信息匮乏,而且我之前从未做过这样的工作:
我正在考虑的另一个选项是创建具有10个字段的模型,因为我知道永远不会超过10个通道。然后,当用户加载文件时,将我的CSV读到表中,而将这些字段留空。
有人有过类似应用程序的经验吗?
答案 0 :(得分:0)
那是记录的分配,从来没有那么多记录。为了提高性能,固定领域的想法听起来最好。如果使用PostgreSQL,则可以查看JSON字段,但不知道对这么多行的影响。
对于灵活的模型,您可以使用EAV模式,但这仅适用于我的经验中的小数据集。