HDFS中的sequence file

sequence file序列化文件

介绍

  • sequence file是hadoop提供的一种二进制文件存储格式
  • 一条数据称之为record(记录),底层直接以<key, value>键值对形式序列化到文件中

优缺点

  • 优点
    • 二进制格式存储,比文本文件更紧凑
    • 支持不同级别压缩(基于record或block压缩)
    • 文件可以拆分和并行处理,适用于MapReduce程序
  • 局限性
    • 二进制文件不方便查看
    • 特定于hadoop,只有java api可用于阈值进行交互。尚未提供多语言支持

格式

  • 根据压缩类型,有3汇总不用sequence file格式:未压缩格式,record压缩格式,block压缩格式
  • sequence file由一个header和多个record组成。以上三种格式均由使用相同的header结构,如下所示:前3个字节为SQE,表示该文件是序列文件,后跟一个字节表示实际版本号(例如SEQ4或SEQ6).HEADER中其他也包括key,valueclass名字,压缩细节,metadata, Sync marker。sync marker同步标记,用于可以读取任意位置的数据

未压缩格式

  • 未压缩的sequence file文件由header,record,sync三个部分组成。其中record包含了4个部分:record length(记录长度),key length(键长),key,value
  • 每隔几个record(100个字节左右)就有一个同步标记

基于record压缩格式

基于record压缩的sequence file文件由header,record,sync三个部分组成。其中record包含了4个部分:record length(记录长度),key length(键长),key,compressed value(被压缩的值)

基于block压缩格式

  • 基于block压缩的sequence file文件由header,block,sync三个部分组成
  • block值得是record block,可以理解为多个record记录组成的块。注意这个block和hdfs中分块存储的block(128M)是不同的概念。block中包括:record条数,压缩的key长度,压缩的keys,压缩的value长度,压缩的values。每隔一个block就有一个同步标记
  • block压缩比record压缩提供更好的压缩率。使用sequence file时,通常首选块压缩
相关推荐
老纪的技术唠嗑局7 分钟前
深度解析 LLM Wiki / Obsidian-Wiki / GBrain:Agent 时代知识的“自组织”与“自进化”
大数据·数据库·人工智能·算法
好赞科技2 小时前
2026年高口碑餐厅预约小程序排行榜:智能就餐新体验一键解锁
大数据·微信小程序
数据智能老司机2 小时前
深入解锁 dbt——Documentation:项目文档与数据文档
大数据
计算机毕业编程指导师3 小时前
【计算机毕设推荐】Python+Hadoop+Spark共享单车数据可视化分析系统 毕业设计 选题推荐 毕设选题 数据分析 机器学习 数据挖掘
大数据·hadoop·python·计算机·数据挖掘·spark·课程设计
计算机毕业编程指导师3 小时前
【计算机毕设】基于Hadoop的共享单车订单数据分析系统+Python+Django全栈开发 毕业设计 选题推荐 毕设选题 数据分析 机器学习 数据挖掘
大数据·hadoop·python·计算机·数据挖掘·spark·django
2601_956139423 小时前
文体娱媒品牌全案公司哪家强
大数据·人工智能·python
塔望品牌咨询3 小时前
组织效率诊断框架:返工、解释、等待、救火,分别说明了什么
大数据·产品运营
塔能物联运维3 小时前
两相液冷:从“散热”到“控温”,重构高密度算力的热管理系统
大数据·人工智能
好赞科技4 小时前
2026年8大多商家小程序推荐榜单,解决企业多平台运营难题
大数据
数据智能老司机4 小时前
SQL 与 dbt 分析工程实践—构建端到端分析工程用例
大数据