【发布时间】:2009-10-15 14:01:57
【问题描述】:
我需要将记录存储到持久存储中并按需检索。要求如下:
- 检索和插入速度极快
- 每条记录都有一个唯一的键。该密钥将用于检索记录
- 存储的数据应该是持久的,即应该在 JVM 重新启动时可用
- 一个单独的过程会每天将过时的记录移动到 RDBMS 一次
你们怎么看?由于延迟问题,我无法使用标准数据库。像 HSQLDB/H2 这样的内存数据库有性能约束。此外,记录是简单的字符串对象,不符合 SQL 条件。我正在考虑某种基于平面文件的解决方案。有任何想法吗?有什么开源项目吗?我敢肯定,以前一定有人解决过这个问题。
【问题讨论】:
-
“极快”是什么意思?
-
亚毫秒级的存储和检索延迟
-
您的读写比率是多少?阅读时,访问的模式是什么(随机的,块状的,...)?每条记录的唯一键的性质是什么(无所谓,uuid,时间戳)?
-
您将很难获得亚毫秒级的任何东西 - 我知道有些人使用核心交易系统,他们为交易中低于 5 毫秒的端到端延迟感到自豪。这些要求对我来说似乎很模糊,细节也太少了。
标签: java