【问题标题】:Which common database library will rack up the least cost (e.g. from memory and cpu usage) on Google Cloud Run and similar services?哪个通用数据库库在 Google Cloud Run 和类似服务上的成本最低(例如从内存和 CPU 使用)?
【发布时间】:2020-11-08 10:40:32
【问题描述】:

我想制作一个 CRUD API (create-read-update-delete),用户可以通过它与键值存储数据库进行交互。它将托管在 Cloud Run(例如 see this example)或类似服务上,全天运行以服务请求。

所有数据的 TTL(生存时间)大约为 1 分钟,键和值只是短字符串。此外,速度、安全性、冗余等都不是问题(在合理范围内)。

在这种情况下,哪个通用数据库后端的 CPU 和内存使用率最低?我正在考虑使用 Redis,但我担心它可能会不必要地占用 CPU/内存,而不是 SQLite、PostgresQL 等。

还是说基本上所有这些数据库的 CPU/内存使用率都差不多?

编辑:

键是 256 位数字,值是

【问题讨论】:

  • 这些问题过于宽泛且基于观点。在不知道数据模型、查询、流量、大小(行等)的情况下,您无法“正确”比较 CPU/内存上的这些数据库。
  • 键是 256 位数字,值是

标签: sql database amazon-web-services redis google-cloud-run


【解决方案1】:

Redis 可以很好地处理这种用例。 RDBM 也可以完成这项工作,但根据您的解释,您不需要关系数据库,因为您的数据是键/值。 Redis 在这种情况下速度非常快,如果您进行了良好的数据建模,您可能会减少内存使用量。

由于您的要求是键/值,并且键/值具有合理的大小,因此您可能会获得 Redis 哈希的优势。在此之上;您不需要持久存储,您可以使用EXPIRE 轻松管理您的内存使用情况。 Redis 的benchmark tool 可以帮助您对字符串和哈希进行基准测试,以确定哪个使用更少的内存。

几个小时前,我回答了一个关于通过在字符串here 上使用哈希来减少 Redis 内存使用的问题,它可能会提供一些见解。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2021-02-12
    • 1970-01-01
    • 2022-10-23
    • 2020-06-11
    • 2018-04-18
    • 2021-05-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多