代码之家  ›  专栏  ›  技术社区  ›  Seva Alekseyev

只读,相当小的数据库-优化的方法?

  •  3
  • Seva Alekseyev  · 技术社区  · 14 年前

    我有以下设计。有一个相同的工作进程池(最多64个,平均15个),使用共享数据库进行只读。数据库大约有25MB。目前,它被实现为一个MySQL数据库,所有的工作人员都连接到它。目前这是可行的,但我想:

    • 消除跨进程数据传输,即在进程中执行SQL
    • 始终将数据完全保存在内存中(我的意思是,25MB!)
    • 不要将25MB单独加载到每个进程中(即以某种方式将其保存在共享内存中)

    由于都是读取,因此不存在并发访问问题,也不需要锁定。数据更新时有发生,但并不频繁,我愿意为此关闭整个shebang。

    访问是通过非常普通的SQL选择来执行的。没有子查询,没有连接。相似的条件是有史以来最奇特的特征。然而,指数是非常必要的。

    问题——有人能想到一个数据库库来提供上述目标吗?

    2 回复  |  直到 14 年前
        1
  •  1
  •   Ivo    14 年前

    你可以用 SQLite 带着它的 in-memory database .

        2
  •  0
  •   Simon Thompson    14 年前

    我会像对待缓存一样对待。MEMCACHED和内存中的所有东西一样简单、快速。MongoDB或类似产品的粉丝速度也会更快,尽管是基于磁盘的。