多租户低代码平台数据库选择问题

2022-04-30 18:33:39 +08:00
 Chad0000

按我的理解低代码产生的数据应该使用 Json 保存,所以要么使用 NoSql 要么使用支持 Json 的数据库。目前考虑有:

MySql

主要是它比较成熟,尤其是国内云平台比如阿里玩儿得很遛了。性能也可以,每个租户使用一张表,还可以根据需要将大表及时抽出独立出来(可能没必要?),私有部署则每个表单使用一张表格,大幅提升性能。

MongoDB

天生文档型数据库,主要是我没怎么用过,怕吃不了兜着走。

PostgreSQL

据说对 Json 支持得很好,同上面一样我不熟悉。

4820 次点击
所在节点    数据库
70 条回复
twing37
2022-05-02 14:43:36 +08:00
https://www.infoq.cn/article/rwstpgujoxxuw9tlm88t 元数据驱动下的多租户架构 saleforce.

rds
Chad0000
2022-05-02 15:14:29 +08:00
@twing37 #61
之前也有说过元数据,这个是讲得比较多的。简单讲就是在数据库上实现了一个数据库,在现在可能更适合使用 Json 这么搞。整 1000 个表每个表存 Json ,然后根据用户对表单的定义将 Json 放入不同的表。数据库也能做到只更新 Json 某个字段。但这么整心智比较累,做这么多也只是做了一个数据库的功能还不一定比现有数据库好用。至于直接使用数据库,也是可以做到运行两个版本,新版上线逐个升级租户,不允许直接删除字段即可。也不会有太大篓子。
documentzhangx66
2022-05-02 18:06:42 +08:00
@bthulu

1.没有内存表。

2.大写是个坑。

3.易用性不如 MYSQL 。

4.没有 SHOW CREATE TABLE / SHOW TABLES / SHOW DATABASE / SHOW VARIABLES 等方法,对开发、运维与 DBA 很不友好。

5.PG 没有真正的 聚集索引 / 聚束索引 / CLUSTERED INDEX 。

6.资源少,解决方案少,连监控方案都很费劲。

7.事务遇到客户端冲突时会有丢数据的 Bug 。
debuggerx
2022-05-02 23:47:45 +08:00
《 SaaS 行业需要什么样的数据库-阿里云数据库专家德哥》:
https://www.bilibili.com/video/BV1zv41157vd
从 15 分钟开始看完就差不多了。
MoYi123
2022-05-03 10:57:39 +08:00
@debuggerx 没看视频, 但我猜德哥肯定狂吹 pg
PopRain
2022-05-03 11:34:43 +08:00
@documentzhangx66 postgresql 是小写吧,oracle 、firebird 等大部分才是大写
Chad0000
2022-05-03 12:11:47 +08:00
@MoYi123 #65
我看了那个,他的场景是固定行业 SaaS ,不是低代码 SaaS ,只是有一定参考价值

@debuggerx #64
感谢分享,如果是纯低代码或无代码 SaaS 就更好了。
documentzhangx66
2022-05-03 15:37:19 +08:00
@PopRain

意思是 PostgreSQL 的大写有坑。百度:PostgreSQL 大写
ychost
2022-05-04 00:06:18 +08:00
MySQL + 一票,能不用 MongoDB 就不用(坑一抹多,用来存用户评论 /日志等不重要的数据比较合适)核心数据还是建议用关系型数据库,当然如果有条件优先考虑 Oracle/SQL Server
PopRain
2022-05-04 11:24:44 +08:00
@documentzhangx66 据我所知只有 SQL Server ,My Sql 才可以表、字段命名用大小写(驼峰命名)且大小写不敏感,其它数据库要么自动转为大写(SQL 标准,oracle)要么自动转为小写(postgresql) ,如果要保留大小写则用引号引起来,这样后果就是大小写敏感了,拼写必须写对。(所以这些数据库一般用蛇形命名)

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/850237

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX