【问题标题】:Postgres- Golang- Schema vs Database ?Postgres-Golang-模式与数据库?
【发布时间】:2016-06-25 04:34:20
【问题描述】:

我在我的应用程序中使用 golang 和 Postgres。在我的应用程序中,对于新用户正在为该用户创建新数据库和表。因此,对于每个新客户,正在创建新数据库。在我的应用程序中处理时,我将建立太多的连接来连接特定的用户数据库。这是目前正在做的事情。我的问题是,我是否必须为新用户而不是 postgres 中的数据库创建模式,以减少连接。在这种情况下,数据库下只创建一个数据库,会创建太多的schema。这是否是最好的方法。

【问题讨论】:

  • 我不知道 Goland 是什么,但是为每个用户创建一个数据库是我最近听到的一件疯狂的事情。只需在每个相关表中添加一个字段user_id
  • 看起来你有一个严重的设计问题。
  • 以防万一不清楚,为用户创建一个模式也是个坏主意。所以答案是否定的。
  • 是的,这就是为什么您将 user_id 字段添加到这 50 个表中的每一个而不是为每个用户创建 50 个表

标签: database postgresql go schema


【解决方案1】:

如果每个客户的架构不同,那么您应该使用基于事件的数据存储,而不是为每个字段创建列,而是创建行。

在这种情况下,每一行包含 4 个固定列: id(每个条目唯一),res_id(指向其父 id 字段,如果存在),key( ex-“user_id”),(ex-“1”)。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-03-19
    • 2019-04-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2016-05-09
    • 2015-04-20
    • 2019-04-10
    相关资源
    最近更新 更多