zoukankan      html  css  js  c++  java
  • postgresql-hdd,ssd,效率

    既有ssd又有hdd是将数据存储到ssd还是将索引存储到ssd的效率更高呢?
    一种说法是索引是随机扫描,将索引放入ssd效率会增高,
    一种说法是将数据放入ssd效率更高
     
    最好的情况是将数据和索引都放到ssd,效率可以提高5-6倍。
    为什么在ssd上面放置索引效率没有ssd存表效率高呢?
    1.索引通常比表小,因此更容易将索引存储到内存,内存中效率很高。
    2.所以级别(在btree中)的页面通常很热(hot),因此保留在内存中
    3.当扫描索引时,很多实际的io本质上是顺序的(特别是对于叶子节点)
    这样做的结果是,针对索引的I/O的惊人数量要么根本不会发生(由于缓存),要么是顺序的。另一方面,索引是表上随机I/O的一个很好的来源
     
     
    当然,这仅仅是一个简单的例子,例如,对于截然不同的工作负载,结论可能会有所不同。同样,由于SSD更昂贵,系统往往在硬盘驱动器上拥有的磁盘空间比在SSD驱动器上更多,因此在索引时,表可能无法容纳在SSD上。在这些情况下,需要更精细的放置 - 例如,不仅要考虑对象的类型,还要考虑它的使用频率(并且只将大量使用的表移动到SSD),甚至是表的子集(例如通过逐渐移动旧的从SSD到HDD的数据)。
    最好的情况是将数据和索引都放到ssd,效率可以提高5-6倍。
    如果磁盘不是很充足,内存也不是很充足,那么索引可能就不能热加载到内存,这个时候索引放ssd的优势就体现出来了。
     
     
  • 相关阅读:
    mysql学习-变量
    车联网-商业模式思考
    数据质量-备忘录
    对话机器学习大神 Michael Jordan:解析领域中各类模型
    Python 高级编程技巧
    Python-闭包(转载)
    PEP8中文翻译
    python-子类和派生、继承
    ZooKeeper之分布式锁(Python版)
    ssh 代理详细解释
  • 原文地址:https://www.cnblogs.com/zhangfx01/p/10215753.html
Copyright © 2011-2022 走看看