前提是假设了这个字典的 key 和 vlaue,包括嵌套内再 N 层嵌套的,都是 String 类型。。。
根据字典 k,v,sqlalchemy 做自动建临时表,效率开销会非常大,而且嵌套再嵌套 N 层的,建表存储很麻烦。。。
整个字典转成 String 存进 TEXT ? 取出来再转成 dict,量多的话,干起来会不会不利索?
想存进去就是一个字段内容,
取出来轻轻松松,不用太啰嗦处理,就是一个 dict 这样子?
是否有轻轻松松很好的方式?
1
rogwan 2020-07-05 23:46:05 +08:00 via iPhone
为什么不直接存 json ?新版 MySQL 已经支持了。
|
2
ClericPy 2020-07-05 23:51:02 +08:00
虽说 mysql 是已经支持了 JSON... 但是都这样了何必还纠结关系型不放呢... 关系型数据库的核心在关系啊.....
|
3
qazwsxkevin OP 哈哈,环境只有 mysql 能用,情况也是不需要纠结里面的关系,谁要谁取出来拿去用这样而已...
|
4
alcarl 2020-07-06 00:20:37 +08:00 via Android
mysql 8.0 好像支持 cte 了,嵌套用 cte 递归 sql 可以解决,就是不知道效率如何。我都是用 sqlserver 的,逃。。。。
|
5
lithbitren 2020-07-06 00:26:17 +08:00
用递归和循环可以实现嵌套关系查询,相当于所有变量和值的关系存进堆空间的感觉,即便是不能直接循环的 sqlite,也可以用 with 来解数独,传统 sql 表达能力还是很强的。
|
6
Vegetable 2020-07-06 00:45:17 +08:00
这么做主要是难以根据内容检索,没有太多别的问题。
同时 JSON 序列化算是一个重活,性能敏感的话尽量避免。MYSQL 高版本支持 JSON,只是 ORM 几乎都不支持。 |
7
vipppppp 2020-07-06 09:28:45 +08:00
关键字段单独存,不重要字段可以直接存 json string,取出来反序列化就好,前提是字段不要有搜索的需求
|
8
tikazyq 2020-07-06 13:30:09 +08:00
既然都 json 了,为啥不 mongodb ?
|
9
sujin190 2020-07-07 22:35:09 +08:00
虽然读写起来是少了很多事,但是对于大多数业务来说,这也代表着逻辑不清,定义不明,结构不合理,缺少足够思考和理解,这不但脑懒还手懒,从维护来看真的是作死,如果经过了细致思考梳理设计,那么就应该每个字段每个数据定义逻辑都应该清清楚楚明明白白,既然如此那又犯这懒何必,借助良好的 ORM,使用上还更简单,关于性能不性能的,纯属想太多
|
10
azzwacb9001 2020-07-08 12:08:14 +08:00
感觉不如直接上 mongodb
|