Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/postgresql/10.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
关于拆分1000+的Django模型的建议;领域_Django_Postgresql_Django Rest Framework - Fatal编程技术网

关于拆分1000+的Django模型的建议;领域

关于拆分1000+的Django模型的建议;领域,django,postgresql,django-rest-framework,Django,Postgresql,Django Rest Framework,我正在寻找关于如何处理包含1000列或更多列的数据库表的建议,我正在将其转换为一个或多个Django模型。数据还需要通过URL中的API调用进行过滤。每个字段都需要能够过滤其余的数据 我提出了一些解决方案,并希望获得与之相关的投入或资源: 只要有一个有1000多个字段的模型——这看起来像是一场噩梦,需要进行大量的暴力编码,但如果有选择地返回数据,可能工作得很好 使用JSON字段存储所有访问频率较低的数据——这里的问题是使用Django过滤器过滤数据会有困难 将数据拆分为通过一对一关系连接的相关模

我正在寻找关于如何处理包含1000列或更多列的数据库表的建议,我正在将其转换为一个或多个Django模型。数据还需要通过URL中的API调用进行过滤。每个字段都需要能够过滤其余的数据

我提出了一些解决方案,并希望获得与之相关的投入或资源:

  • 只要有一个有1000多个字段的模型——这看起来像是一场噩梦,需要进行大量的暴力编码,但如果有选择地返回数据,可能工作得很好
  • 使用JSON字段存储所有访问频率较低的数据——这里的问题是使用Django过滤器过滤数据会有困难
  • 将数据拆分为通过一对一关系连接的相关模型,据我所知,这样可以减少连接操作。-这似乎比第一个选项需要更多的编码,但更易于维护

  • 是否有人拥有处理这种大小的数据库表的任何信息或资源?

    您绝对应该将模型拆分为多个链接模型


    由于Django模型在数据库中的数据方式不同,您的模型和表之间通常应具有1:1的关系,并且您的表应至少规范化为第三种标准形式。

    如果您想让我们推荐或查找书籍、工具、软件库、教程或其他非现场资源,则堆栈溢出问题不在讨论之列。此外,您的问题高度基于意见,并且取决于您的数据库读/写比率。这与Django无关,但与数据库建模有关,在一般情况下,ERD规范化至少要有3NF。