将每个数据库放在自己的环境中是不是有任何优势?

Posted

技术标签:

【中文标题】将每个数据库放在自己的环境中是不是有任何优势?【英文标题】:Is there any advantage to putting each database in it's own environment?将每个数据库放在自己的环境中是否有任何优势? 【发布时间】:2017-01-02 19:21:07 【问题描述】:

为每个数据库创建一个单独的环境有什么好处吗?我收集到环境中的所有数据库都存储在同一个日志文件链中,在一个目录中。我想知道使用单独的环境是否可以加快清理速度等等。

谢谢

【问题讨论】:

【参考方案1】:

存储在不同环境中的数据库往往具有更好的数据局部性。这可以导致更快的 I/O(读取和写入),因为更高的局部性意味着更好的文件系统缓存。垃圾收集器(清理器)也可以更快地工作,因为对于每个环境,它应该移动更少的数据(更本地化)并且需要更少的查找。如果不同的环境位于不同的物理存储设备(HDD、SSD)上,这些优势可能会更加明显。

不过,也有一些缺点。首先,JE 缓存效率会降低。其次,您将无法在单个事务中读取/更新数据库。

因此,将数据库存储在不同环境中的典型情况是:

    对存储在不同数据库中的数据的一致性没有具体要求,即可以在不同环境中的多个事务中或多或少地连续读取/更新数据。 所有环境中的整个数据都不适合内存,因此数据库操作需要一些 I/O。 不同的环境可以位于不同的存储设备上。

【讨论】:

以上是关于将每个数据库放在自己的环境中是不是有任何优势?的主要内容,如果未能解决你的问题,请参考以下文章

可以导出多个kendo网格以实现角度优势

数据库缓存

将 SwiftUI 数据源放在其他地方

成功者不是先有钱,而是先有胆——激励一下自己(比起微软初期,以及QQ的初期,我的条件要好太多了),我的四大优势+环境优势

将文件提取到从iPhone中的任何应用程序下载的应用程序中[关闭]

多线程的优势