【问题标题】:fileserver vs DB query speed文件服务器与数据库查询速度
【发布时间】:2018-10-10 08:00:19
【问题描述】:

我需要尽快检索非常简单的数据: 我有与电子邮件哈希关联的 json 数据。所以表格看起来像这样:

email_sha256, json

并且有数百万行。

我想知道以下两个选项之一是否会更快:

1 Split the single large table into many smallers (split by alphabetical order)

2 Do not use a DB at all and serve the data as files. i.e. every email hash is the name of a separate file that contains the json data.

【问题讨论】:

    标签: database key-value fileserver


    【解决方案1】:

    为每个用户(每个电子邮件地址)创建一个文件,从很多方面来看都是错误的:

    • 如果您需要良好的性能,您需要按目录的少量文件
    • 为此创建了数据库,您可以使用索引来快速检索信息。
    • 没有数据库,你需要有自己的锁/同步机制
    • 如果您使用的是数据库,为什么要使用 json 来存储数据。
    • 如果您正在寻找性能,请不要将数据序列化为 json。
    • 您所说的“快速”是什么意思,您能量化这个持续时间/延迟吗?

    除非(可能)与用户相关的信息非常庞大(大小必须非常优于一个扇区)。但是在这种情况下,快速是什么意思。

    【讨论】:

    • json的数据不是结构化的。而且不需要查询。我基本上只想尽快提供 json 字符串。每个用户请求相同的数据,并且仅通过哈希查询。我期望的优势是我可以通过 CDN 提供所有文件,因此可以减少延迟
    猜你喜欢
    • 1970-01-01
    • 2017-04-10
    • 2011-10-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-16
    相关资源
    最近更新 更多