正在写一个项目, 大概是存一个 tmdb bangumi 的一些数据和一些简单的数据
数据数量估计不会超过 1w(估计 2000 可能就撑死了), 是否有必要上 sqlite 呢, 我自已评估下来, 比较麻烦的是
sqlite 部份我也写好了, 请问大家会怎么取舍这两个呢
1
lscho 13 小时 39 分钟前
你都写好了还纠结啥,直接 sqlite 呗
|
2
Quarter 13 小时 37 分钟前 via Android
sqlite 本身就比较轻量级了,直接用就可以了
|
4
ipwx 13 小时 25 分钟前
sqlite
|
5
xiaomushen 13 小时 22 分钟前
既然 sqlite 写好了,那还纠结啥?
|
6
shinonome OP @xiaomushen json 可以少依赖,也更快了
|
7
deplives 12 小时 45 分钟前
你一共就 1w 数据,放磁盘和放内存的差别大吗?
|
8
chendy 12 小时 34 分钟前
sqllite ,下限比手撸文件高到不知道哪里去了
|
9
xiaomushen 12 小时 31 分钟前 @shinonome 随便吧,反正就那点儿数据
|
10
darkengine 12 小时 30 分钟前
放内存里会快很多 -- 你的 json 数据不用持久化?
|
11
Ketteiron 12 小时 29 分钟前 json 你要考虑这几个问题:
1. 数据竟态,多个进程修改同一个文件互相覆盖,极端情况下文件可能会损坏 2. 序列化/IO 开销大,改动 1 个字符也要重新全部读取->序列化->修改->反序列化->全部写入 3. 如果选择常驻内存模式不会有上述问题,但是新增了磁盘保存问题,应用意外退出会丢失数据 当你解决完所有问题,恭喜你再次发明了 sqlite |
12
Vegetable 12 小时 25 分钟前 你这 json 是数据库吗?只是一个持久化文件,本质是内存数据的快照而已。
这两个东西放一起比根本就不是 json 当数据库有什么问题,而是你究竟需不需要数据库。 |
13
adgfr32 12 小时 23 分钟前 via Android
写内存里,全量备份成文件问题都不大。
|
14
Ipsum 12 小时 17 分钟前 via Android
我想起了之前有个神人,用 es 当关系数据库用,里面用户表全是 json 。
|
15
fkdtz 12 小时 3 分钟前
|
16
julyclyde 11 小时 57 分钟前
json 本身没有索引吧,完整加载到内存之后才有,会导致内存占用大
当然你如果数据量少那就无所谓了。我自己也是用 json 的 但是你已经 sqlite 了还犹豫啥,坚持 sqlite 吧! json 谈不上减少依赖啊。json 和 sqlite 都是 python 自带的标准库里的东西 |
17
sunny352787 11 小时 45 分钟前
你做的啥东西啊?都到内存里了为啥还是 json ?没有自己的结构吗?你搞几个 map 存也行啊,游戏里很多都是这么干的
|
18
OneLiteCore 11 小时 38 分钟前 看你及时性要求的吧,如果需要实时反馈的比如订单之类的,那还是老老实实上数据库吧。
但如果是那种用户行为统计数据的话及时性要求就不高了,可以考虑把用户统计的数据直接保存为 JSON ,然后可以使用 DuckDB 直接对文件夹下的所有 JSON 进行 SQL 语法检索。唯一的要求就是最好存 SSD 里面,毕竟这种场景下的都是大量细碎的小文件。 |
20
xdeng 11 小时 24 分钟前
json 的解析基本就是字符串的解析 慢 大,sqlite 可是有格式的二进制 快 小。
|
21
liKeYunKeji 11 小时 23 分钟前
再少的数据我都是直接 mysql ,习惯了
|
22
strobber16 11 小时 15 分钟前
推一手 chaiSQL
|
23
skallz 11 小时 12 分钟前
json 问题不大,之前写 node 也用过轻量级数据库 lowdb ,它实际上也是用的 json 的
|
24
WarlockMan 10 小时 44 分钟前
持久化的可靠性,json 方案相当于内存数据库,没解决持久化可靠性问题。如果进程崩了,数据丢失了。
sqlite 把这部分常见的问题都托管了。 |
25
Rickkkkkkk 9 小时 40 分钟前
直接本地一个 map 就装好了。
|
26
daxin945 8 小时 5 分钟前
看看 duckdb 呢
|
27
uds9u32br 8 小时 0 分钟前
go 的话接受 kv 可以用 bolt
|
28
lovelylain 7 小时 48 分钟前
json 的优势是可以直接用文本编辑器修改,如果用不到这点,相比 sqlite 实在没理由选 json
|
29
mogita 7 小时 2 分钟前
多大 payload ?希望快就全搂到内存里呗,比任何 IO 都快。。
|
30
godall 6 小时 15 分钟前 via Android
好搞笑,1w 数据就是手搓一个数据库也绰绰有余,至于 JSON 什么的,你结构化数据出来组装成 JSON 也毫无问题,反而 json 检索太麻烦,〔全文检索除外〕,反正数据库低于 1000w 条记录随便什么数据库都没有问题,哪个方便用哪个就行
|
31
Div1ne 6 小时 3 分钟前
用 sqlite 。
如果你不想持久化,想追求极致的快,sqlite 也有 memory 模式,全程不用落盘。 sqlite 的好处是你的数据访问层可以用标准的 sql 来写,万一以后你的业务体量大了,方便切换到其他数据库。不要折腾 json 了。。。。 |
32
roundgis 4 小时 35 分钟前 via Android
一萬條記錄 放 slice 遍歷都用不了多久 不要糾結了
|
33
bronyakaka 4 小时 15 分钟前
几千 1w 的数据隔这纠结半天,我们一天 1 千万数据写 pg 里,感觉离崩溃不远了
|
34
shinonome OP @bronyakaka #33 TVT 别骂了别骂了, 就是数据量太小了才纠结一下要不要数据库, 毕竟只是为了持久存
|