【问题标题】:Accept DB Writes faster than the DB can actually write them接受 DB 写入的速度比 DB 实际写入的速度快
【发布时间】:2012-02-15 15:25:10
【问题描述】:

我们有一个解决方案,它在全球范围内分布在几个 Sybase DB 服务器上,并以 Oracle Coherence 缓存为前端。

现在,我们需要支持“缓存速度写入”,但由于我们的数据库具有国际复制性质,我们需要为数据库接受数据的持久化速度比数据库实际写入数据的速度要快,您可能都会这样同意是个大问题。

因此,我想知道解决这种情况的推荐方法是什么。

注意事项:

  • 没有限制
  • 根据使用情况统计有多个分片分割

【问题讨论】:

    标签: performance architecture sybase database oracle-coherence


    【解决方案1】:

    要考虑的一种方法:

    如果您正在写入读取优化的数据库或表,DB 的写入速度可能会比您需要的慢。可能会涉及很多约束和索引,并且会“浪费”大量时间来检查和重新计算它们。

    您可能需要考虑使用适当的写入优化存储引擎且没有索引的单独架构或一组表。在这里可能会有很大的性能提升。

    然后会有另一个过程将数据从写优化模式传输到读优化(永久)模式。

    本质上,如果一个同步进程遇到限制,可以通过引入限制和/或队列机制将其拆分为多个异步进程。

    【讨论】:

    • 感谢您的反馈...数据库实际上更像是一个“桶”,因为该数据库几乎没有约束和索引(除了主键),它也已经拆分多个数据库。我们考虑过的一种方法是写入存储在高速 raid 上的临时队列(如您所说),但我不觉得这很优雅,想知道替代方案是什么。
    【解决方案2】:

    我决定对一些较大且访问频率较高的表使用水平分区,这是 Sybase ASE 15+ 原生支持的,对客户端应用程序是透明的。

    【讨论】:

      猜你喜欢
      • 2011-06-25
      • 1970-01-01
      • 1970-01-01
      • 2010-09-26
      • 2015-04-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多