FASTQ 文件压缩格式有哪些?

FASTQ 文件压缩格式 .gz .bz2 .xz .rfq .rfq.xz

FASTQ 文件是用于存储测序数据的一种格式,它包含了大量的文本信息,因此通常占用大量的存储空间。为了有效地处理和传输这些数据,通常需要对 FASTQ 文件进行压缩来节省存储空间及传输带宽。以下是一些常用的 FASTQ 文件压缩格式及方法。

alt

扫码关注微信公众号【生信F3】获取文章完整信息,分享生物信息学最新知识。 ShengXinF3_QRcode

压缩格式介绍

压缩格式说明
*.gzgzip 程序压缩的文件
*.bz2bzip2 程序压缩的文件
*.xzxz 程序压缩的文件
*.rfqrepaq 程序压缩的文件

压缩指令通常仅能针对一个文件来压缩与解压缩,打包软件 tar 可以将很多文件或目录打包成为一个文件,后来的 GNU 计划将整个 tar 与压缩的功能结合在了一起,为使用者提供了更方便且更强大的压缩与打包功能!

打包压缩格式说明
*.tartar 程序打包的文件,并未压缩
*.tar.gztar 程序打包的文件,并且经过 gzip 的压缩
*.tar.xztar 程序打包的文件,并且经过 xz 的压缩
*.tar.bz2tar 程序打包的文件,并且经过 bzip2 的压缩

压缩指令

压缩格式压缩指令
*.gzgzip test.fq不保留源文件 test.fq,并生成 test.fq.gz)
*.gzgzip -c test.fq > test.fq.gz保留源文件
*.bz2bzip2 test.fq不保留源文件 test.fq,并生成 test.fq.bz2)
*.bz2bzip2 -c test.fq > test.fq.bz2保留源文件
*.xzxz test.fq不保留源文件 test.fq,并生成 test.fq.xz)
*.xzxz -c test.fq > test.fq.xz保留源文件
*.rfqrepaq -c -i test.fq -o test.fq.rfq保留源文件
*.rfq.xzrepaq -c -i test.fq -o test.fq.rfq.xz保留源文件

参数说明:

-c:将压缩的数据输出到屏幕上(gz/bz2/xz),可透过数据流重导向 > 来处理。

不同格式压缩比与所需运行时间

以大约 5.66 GB 大小的 test.fq 文件为例(仅供参考,不同运行平台的结果可能略有差异)。

压缩格式压缩比(所占源文件的比例)运行时间
*.gz18.0%(节省 82.0% 存储空间)8m10s
*.bz213.7%(节省 86.3% 存储空间)7m15s
*.xz11.4%(节省 88.6% 存储空间)48m25s
*.rfq21.3%(节省 78.7% 存储空间)58s
*.rfq.xz8.20%(节省 91.8% 存储空间)8m25s

以此来看,

bz2 略优于 gz,与 gz 相比,不仅所需运行时间较少,还取得了更好的压缩效果。

xz压缩效果最佳,但所需时间成本最高,大约为 gz 压缩的 6 倍。考虑到其与 gz 和 bz 压缩比的差距仅有约 6.6% 和 2.3%,其性价比并不理想。

rfq运行时间最少,约为 gz 压缩的十分之一,但压缩效果相对最差。

rfq.gz综合效益最高,在所需运行时间相对较少的条件下,取得了最好的压缩效果。与 gz 压缩相比,其耗费的运行时间大致相同,但却节省了超过一半的存储空间。

打包压缩指令

tar 可以将多个目录或文件打包成一个大文件,同时还可以透过 gzip/bzip2/xz 的支持,将该文件同时进行压缩。

tar [-z|-j|-J] [cv] [-f] 待建立的新文档名 要被压缩的文件或目录名称

例如:tar -zcvf test.fq.tar.gz test.fq

参数说明:

-z:透过 gzip 的支持进行压缩/解压缩,此时压缩文档名应为 *.tar.gz;

-j:透过 bzip2 的支持进行压缩/解压缩,此时压缩文档名应为 *.tar.bz2;

-J:透过 xz 的支持进行压缩/解压缩,此时压缩文档名应为 *.tar.xz;

-c:create,建立打包文件,搭配 -v 来查看过程中被打包的文件或目录名称;

-v:在压缩/解压缩的过程中,将要被打包的文件或目录名显示出来;

-f:后面要立刻接等待建立的新压缩文档名,再后面为要被压缩的一个或多个文件或目录名称。

值得注意的是,根据 tar 打包出的文件是否压缩有不同的称呼,如果仅是打包 tar -cvf test.fq.tar,这个文件就被称为 tarfile。如果在打包后进行了压缩,类似 test.fq.tar.gz 的文件就会被称为 tarball,可以想象为将一整包物品狠狠的压缩成一团以减少体积 ^_^!

解压指令

压缩格式解压指令
*.gzgzip -d test.fq.gz不保留压缩文件,生成 test.fq)
*.gzgzip -dc test.fq.gz > test.fq保留压缩文件
*.bz2bzip2 -d test.fq.gz不保留压缩文件,生成 test.fq)
*.bz2bzip2 -dc test.fq.gz > test.fq保留压缩文件
*.xzxz -d test.fq.gz不保留压缩文件,生成 test.fq)
*.xzxz -dc test.fq.gz > test.fq保留压缩文件
*.rfqrepaq -d -i in.rfq -o out.fq保留压缩文件
*.rfq.xzrepaq -d -i in.rfq.xz -o out.fq保留压缩文件

打包解压指令

tar [-z|-j|-J] [xv] [-f] 既有的tar文档名 [-C 欲放置解压缩文档的目录]

例如:tar -zxvf test.fq.tar.gz 将解压 test.fq.tar.gz 文件到当前目录,如果想要解压缩到家目录,加上 -C /home 即可。

压缩软件安装

bzip2 是一个非常有名的压缩工具,存在于大多数主流 Linux 发行版中,可以在不同发行版上用合适的命令安装。

sudo apt install bzip2 # [On Debian/Ubuntu] 
sudo yum install bzip2 # [On CentOS/RHEL]
sudo dnf install bzip2 # [On Fedora 22+]

xz 的安装参考官网:https://tukaani.org/xz/

repaq 的安装和使用参考:https://github.com/OpenGene/repaq,值得注意的是生成 .repaq.xz 格式需要先安装 xz 软件作为依赖哦!

扫码关注微信公众号【生信F3】获取文章完整信息,分享生物信息学最新知识。 ShengXinF3_QRcode

本文由 mdnice 多平台发布

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/625258.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Qt点击按钮在其附近弹出一个窗口

效果 FS_PopupWidget.h #ifndef FS_POPUPWIDGET_H #define FS_POPUPWIDGET_H#pragma once#include <QToolButton> #include <QWidgetAction> #include <QPointer>class QMenu;class FS_PopupWidget : public QToolButton {Q_OBJECTpublic:FS_PopupWidget(QW…

PXE 高效批量网络装机

前提&#xff1a; 虚拟机恢复到初始化 调整网卡为vm1 关闭防火墙 安全linux systemctl stop firewalld vim /etc/selinux/config 配置IP地址 vim /etc/sysconfig/network-scripts/ifcfg-ens33 重启网卡 systemctl restart network 挂载磁盘 安装yum源 安装服务 yum install vs…

Redis相关命令详解及其原理

Redis概念 Redis&#xff0c;英文全称是remote dictionary service&#xff0c;也就是远程字典服务。这是kv存储数据库。Redis&#xff0c;包括所有的数据库&#xff0c;都是请求-回应模式&#xff0c;通俗来说就是数据库不会主动地要给前台推送数据&#xff0c;只有前台发送了…

美团2024届秋招笔试第一场编程真题(js版本)

1.小美的外卖订单 简单的加法逻辑&#xff0c;需要注意的是各个数据的边界问题 折扣价不能超过原价减的价格不能超过满的价格满减优惠仅限原价购入 const rl require("readline").createInterface({ input: process.stdin }); void (async function () {let count…

ENVI5.6版本中规则与不规则图像裁剪操作

图像裁剪的目的是将研究之外的区域去除&#xff0c;常用的是按照行政区划边界或自然区划边界进行图像的裁剪&#xff0c;在基础数据生产中&#xff0c;还经常要做标准分幅裁剪。按照ENVI的图像裁剪过程&#xff0c;可分为规则裁剪和不规则裁剪。 ENVI5.6之前版本的图像裁剪工具…

linux基础学习(3):挂载

挂载可以理解为给磁盘空间一个可访问的入口&#xff0c;那个入口称为挂载点&#xff0c;相当于windows中的盘符。 1.挂载命令mount 1.1直接输入mount 查看系统已挂载的设备 1.2挂载与卸载命令 mount -t 文件系统名 设备文件名 挂载点 | umount 挂载点 或 umount 设…

衡水学院新人真题百练2022(1-20)修订版

​ 1 重要的话说三遍 分数 5 作者 陈越 单位 浙江大学 这道超级简单的题目没有任何输入。 你只需要把这句很重要的话 —— “I’m gonna WIN!”——连续输出三遍就可以了。 注意每遍占一行&#xff0c;除了每行的回车不能有任何多余字符。 #include<stdio.h> int…

QT-day6

作业1&#xff1a;数据库增删查改 #include "widget.h" #include "ui_widget.h"Widget::Widget(QWidget *parent): QWidget(parent), ui(new Ui::Widget) {ui->setupUi(this);if (!db.contains("stu.db")){db QSqlDatabase::addDatabase(&q…

The Plant cell:DAP-seq技术助力揭示BBR/BPC家族的MdBPC2转录因子调控苹果生长素的生物合成从而促进苹果生长及矮化

植物生长素&#xff08;IAA&#xff09;在植物生长发育过程中起着重要的作用。其化学本质是吲哚乙酸。主要作用是使植物细胞壁松弛&#xff0c;从而使细胞生长伸长&#xff0c;在许多植物中还能增加RNA和蛋白质的合成。 目前BARLEY B RECOMBINANT/BASIC PENTACYSTEINE (BBR/BP…

Unity对应SDK和NDK版本的对照表

官网&#xff1a;Unity - Manual: Android environment setup 本人安装的是2022版本长期支持版本2022.3.15f1c1 安装Java的JDK环境就不在这里展开了&#xff0c;就记录下对Android SDK的设置&#xff0c;要与Unity的版本对应&#xff0c;否则会出现很多莫名奇妙的问题。 打开…

自定义vector的实现

实现前需要思考的一个问题 为什么需要将空间的申请与对象的构建分开 查看vector的模板参数时可以看到其有第三个参数是空间适配器allocator&#xff0c;查找其对外提供的成员函数不难发现它的实现逻辑是将空间的申请与对象的构建分开的&#xff0c;为什么呢&#xff1f;不弄清…

SpringBoot异常处理(Whitelabel Error Page和自定义全局异常处理页面)和整合ajax异常处理

SpringBoot异常处理&#xff08;Whitelabel Error Page和自定义全局异常处理页面&#xff09;和整合ajax异常处理 1、springboot自带的异常处理页面Whitelabel Error Page SpringBoot默认的处理异常的机制&#xff1a;SpringBoot 默认的已经提供了一套处理异常的机制。一旦程…

MongoDB 索引管理

文章目录 前言1. 术语介绍1.1 index / key1.2 Coverd Query1.3 IXSCAN / COLLSCAN1.4 Selectivity1.5 Index Prefix 2. 索引原理3. 索引的维护3.1 创建索引语法3.2 单字段索引3.3 多字段复合索引3.4 数组的多列索引3.5 全文索引3.6 Hash 索引3.7 TTL 索引3.8 删除索引3.9 后台创…

基于springboot书籍学习平台源码和论文

首先,论文一开始便是清楚的论述了平台的研究内容。其次,剖析平台需求分析,弄明白“做什么”,分析包括业务分析和业务流程的分析以及用例分析,更进一步明确平台的需求。然后在明白了平台的需求基础上需要进一步地设计平台,主要包罗软件架构模式、整体功能模块、数据库设计。本项…

MongoDB安装与基本使用

一、简介 1.1 Mongodb 是什么 MongoDB 是一个基于分布式文件存储的数据库&#xff0c;官方地址 https://www.mongodb.com/ 1.2 数据库是什么 数据库&#xff08; DataBase &#xff09;是按照数据结构来组织、存储和管理数据的 应用程序 1.3 数据库的作用 数据库的…

创建React步骤

确保电脑已经安装了node.js以后&#xff0c;打开终端进入目标文件夹 cd xxx(文件夹 npx create-react-app react01(替换为你自己的react名称) 可能会出现是否安装xxx,输入y即可 没有报错信息后&#xff0c;输入 cd react01 npm start 会自动跳转到react界面&#xff0c;就…

翻译: Streamlit从入门到精通 部署一个机器学习应用程序 四

Streamlit从入门到精通 系列&#xff1a; 翻译: Streamlit从入门到精通 基础控件 一翻译: Streamlit从入门到精通 显示图表Graphs 地图Map 主题Themes 二翻译: Streamlit从入门到精通 构建一个机器学习应用程序 三 1. 5. 如何部署一个Streamlit应用 部署是将应用程序从开发…

Linux操作系统——重定向与缓冲区

1.理解一下struct file内核对象 上一篇文章&#xff08;文件详解&#xff09;我们一直在谈&#xff0c;一个文件要被访问就必须要先被打开&#xff0c;打开之前就必须要先把文件加载到内存&#xff0c;同时呢我们的操作系统为了管理文件也会为我们的文件创建相对应的struct fi…

数据库多表查询练习题

二、多表查询 1. 创建 student 和 score 表 CREATE TABLE student ( id INT ( 10 ) NOT NULL UNIQUE PRIMARY KEY , name VARCHAR ( 20 ) NOT NULL , sex VARCHAR ( 4 ) , birth YEAR , department VARCHAR ( 20 ) , address VARCHAR ( 50 ) ); 创建 s…