HDF5是一种优秀的文件格式,特别是对于大型的文件,是一个很好的选择。
任何事情都是一个平衡,当源文件是.csv文件时,你转为HDF5文件,你的目标是什么,要读(写)速度,还是HDF5文件的大小?

一、效率与文件的大小两者不可兼得
HDF5文件,如果不采用压缩的方式,格式会比源文件大不小,以CSV为例,可能会增大不少。但是在没有压缩的情况下,速度是最佳的。

如果你不仅需要速度,而且还需要控制文件的大小,这时,你可以选择压缩的方式,常用的有gzip,lzf等。这两者差异不太大,总体上差不多。lzf方式可能稍好一些,可能不同的环境下,得到的情况有所不同。

在控制文件大小的同时,这个效率的损失有多大?

我有一个CSV文件夹,CSV总大小约59.3M =>
gzip compress-level 2 =>8.5 M 读速度:0.5s
gzip compress-level 6 =>7.3M 读速度: 0.7s (compress level 0-9值)
lzf =>13M 读速度:0.4s (无compress level)

不压缩的情况是多少 =>76M 读速度:0.15s

我这里不是用SSD,如果用SSD的话,速度可能还会快不少。

二、场景的选择

有些情况下,存储资源紧张,有时侯需要更快的读取效率,具体要看具体场景需要。

HDF5: 读写速度与文件的大小相关推荐

  1. 如果一个文件的大小超过了一张磁盘的大小,你该如何存储?

    转载 转自 极客时间 从零开始学大数据 李智慧 文章, 我学完了做了个笔记总结了一下 如果一个文件的大小超过了一张磁盘的大小,你该如何存储? 单机时代,主要的解决方案是RAID:分布式时代,主要解决方 ...

  2. 如何用javascript控制上传文件的大小

    以下是引用片段: <form   name=Myform  οnsubmit="return   CheckFileSize()">      <input   ...

  3. 如何限制上传服务器的文件容量,如何通过配置php文件限制上传文件的大小

    在网站开发的过程中,为了确保能够充分利用服务器的空间,在开发上传功能时,必须对上传文件的大小进行控制.那么我们如何进行对上传文件的大小进行控制呢? 控制文件的大小可以从两个方面入手: 第一个是在PHP ...

  4. 从 Gzip 压缩 SVG 说起 — 论如何减小资源文件的大小

    原文地址:Of SVG, Minification and Gzip 原文作者:Anton Khlynovskiy 译文出自:掘金翻译计划 本文永久链接:github.com/xitu/gold-m- ...

  5. java查看文件夹下文件夹大小,java 获取文件夹大小,文件大小,文件个数

    import java.io.File; import java.text.DecimalFormat; import java.io.FileInputStream; public class Ge ...

  6. java 文件 缓冲区大小_Java web 中文件下载遇到的缓冲大小问题

    刚才自己做一个小例子,就是在android端点击一个button,然后从服务器端下载文件到手机SD卡.结果却遇到了问题,刚开始挺兴奋的,因为自己做的可以下载下来文件了,但是自习看才发现有问题,那就是下 ...

  7. Linux怎么让文件按大小排序,linuxsortlinux系统下,按文件的大小进行排序的命令...

    怎样用sort 命令以 GPA作为关键字排序文件 Linux可以使用ls命令实现这一功能. ls命令是一个非常有用的查看文件与目录的命令,list之意,它的参数非常多. ls命令默认是按照文件名的字母 ...

  8. 【java】File的使用:将字符串写出到本地文件,大小0kb的原因

    实现方法: 暂时写一种方法,将字符串写出到本地文件,以后可以补充更多种方法: public static void main(String[] args) {/*** ==============准备 ...

  9. Linux下查看文件或文件夹大小的命令df 、du、ls

    转自:http://www.cnblogs.com/benio/archive/2010/10/13/1849946.html 当磁盘大小超过标准时会有报警提示,这时如果掌握df和du命令是非常明智的 ...

  10. 获取某一目录之下所有文件的大小

    获取某一目录包含子目录之下所有文件的大小 如在windows资源管理对文件夹右键,查看属性: 代码实现也是很简单,获取所有文件夹内的文件,并计算第一个文件的大小Length即可. public sta ...

最新文章

  1. java Opencv 图片修复 Photo
  2. java邮箱_java发送邮件(qq邮箱)
  3. 调用图灵机器人API实现简单聊天
  4. Gradle2.0用户指南翻译——第二章. 概述
  5. 20200329:K 个一组翻转链表(leetcode25)
  6. OpenCV-计时函数cv::getTickCountcv::getTickFrequency
  7. 下拉框怎么获取label_拼多多-「关键词自然流量快速获取」访客暴涨秘诀
  8. python-select异步IO
  9. 企业私有云之rabbitmq高可用
  10. OC高效率52之“方法调配技术”调试“黑盒方法”
  11. 最小生成树-Prim算法的Python实现
  12. php soapfault 怎么用,SoapFault出现的问题及解决办法分享
  13. shell中变量截取
  14. 浅谈智能卡技术在数字电视小额支付系统中的应用
  15. C#进阶高级程序员开发必知必会:泛型的定义实操案例: 实现堆栈的后进先出功能
  16. vue中如何设置鼠标经过切换样式
  17. 光滑噪声数据常用的方法_几种常见的数据变换方法
  18. BootstarpTable在IE11的兼容问题
  19. C语言题目(数组)1
  20. 机器学习在饿了么竞价广告中的实践

热门文章

  1. 容器Docker详解
  2. LC60 Permutation Sequence
  3. 20135226黄坤信息安全系统设计基础期末总结
  4. ThinkPHP中的三大自动简介
  5. ios app 提交评审注意事项
  6. 我们为什么要使用NodeJS
  7. 关于instr和like的比较
  8. 做转移FSMO角色记录
  9. iOS中TableView小技巧
  10. 正则RegExp对象的用法