Hadoop文件的存储格式

Hadoop常用文件存储格式 Arrow促进了许多组件之间的通信。极大的缩减了通信时候序列化、反序列化所浪费的时间。利用Arrow作为内存中数据表示的两个过程可以将数据从一种方法“重定向”到另一种方法,而无需序列化或反序列化。例如,Spark可以使用Python进程发送Arrow数据来执行用户定义的函数。无需进行反序列化,可以直接从启用了Arrow的数据存储系统中接收Arrow数据。例如,Kudu可以将Arrow数据直接发送到Impala进行分析。 阅读详情

sequence文件存储格式

  1. txt
    1. 纯文本格式,若干行记录。默认用字符编码存储
  2. SequenceFile格式(顺序文件格式,可进行切割)
    1. key-value 格式进行存储,最终形成的是一个二进制文件, 需用hadoop提供的api进行写入存储。
    2. 编写 写入 seq文件案例。
    
        Configuration configuration = new Configuration();
        configuration.set("fs.defaultFS","hdfs://s100:8020");
        FileSystem fileSystem = FileSystem.get(configuration);
        Path path = new Path("hdfs://s100:8020/user/seqmyfile.seq");
        SequenceFile.Writer writer = SequenceFile.createWriter(fileSystem, configuration, path, IntWritable.class, Text.class);
    
    
        writer.append(new IntWritable(1),new Text("gg1"));
        writer.append(new IntWritable(1),new Text("gg2"));
        writer.append(new IntWritable(1),new Text("gg3"));
        writer.append(new IntWritable(1),new Text("gg4"));
        writer.close();
        
    
    
    1. 编写读取 seq 文件案例
     Configuration configuration = new Configuration();
        configuration.set("fs.defaultFS","hdfs://s100:8020");
        FileSystem fileSystem = FileSystem.get(configuration);
        Path path = new Path("hdfs://s100:8020/user/seqmyfile.seq");
        SequenceFile.Reader sr = new SequenceFile.Reader(fileSystem,path,configuration);
    
        IntWritable key = new IntWritable();
        Text value = new Text();
        while (sr.next(key,value)){
            System.out.println(key +":"+value );
        }
        
    
    1. 查看文件内容
      $> hdfs dfs -text /user/myfile.seq
      $> hdfs dfs -cat /user/myfile.seq (此命令查看会出现乱码)

seq 文件格式解析

顺序文件由文件头和随后的一条或多条记录组成 
---文件头------
--key-value----sync
--key-value----
--key-value----
--key-value----
--key-value----sync
--key-value----
--key-value----
--key-value----sync

  1. 文件头格式
    1. SEQ+版本号+key类型class+value类型class + 压缩格式类型
  1. 代码案例
  /**
     * 读取文件位置
     */
    public void seekSeq() throws IOException {
        Configuration configuration = new Configuration();
        configuration.set("fs.defaultFS","hdfs://s100:8020");
        FileSystem fileSystem = FileSystem.get(configuration);
        Path path = new Path("hdfs://s100:8020/user/seqmyfile.seq");
        SequenceFile.Reader sr = new SequenceFile.Reader(fileSystem,path,configuration);
        IntWritable key = new IntWritable();
        Text value = new Text();
        sr.seek(253); // 定位到第253字节的位置,告诉指针下一次要定位的位置。
        sr.next(key,value); // 定位到第253字节的位置,并取出相应的值。
        System.out.println(key +" : " + value);
        sr.close();
    }

    /**
     * 读取seqfile 同步点
     */
    public void sync() throws IOException {
        /**
         * -----文件头-------
  128byte* --key-value----sync
  153byte* --key-value----
        .* --key-value----
        .* --key-value----
        .* --key-value----sync
         * --key-value----
         * --key-value----
         * --key-value----sync
         */
        Configuration configuration = new Configuration();
        configuration.set("fs.defaultFS","hdfs://s100:8020");
        FileSystem fileSystem = FileSystem.get(configuration);
        Path path = new Path("hdfs://s100:8020/user/seqmyfile.seq");
        SequenceFile.Reader sr = new SequenceFile.Reader(fileSystem,path,configuration);
        IntWritable key = new IntWritable();
        Text value = new Text();
        int syncPos = 12;
        sr.sync(syncPos);//如上图在写入文件的时候可一指定多少条记录写入一个同步点
        long pos = sr.getPosition();//获取下次要定位的字节位置。
        sr.next(key,value);
        System.out.println("syncPos : " + syncPos + "pos : " + pos +"key : "+key+"value : " + value);
    }

MapFile文件格式

  1. 是排序的seqfie,具有索引。要求key按照大小顺序添加
  2. 包含两个文件
    1. index 文件:索引和偏移量的映射,可以设置间隔,默认128(解释:第128key位置--->第256字节 指存入128个key 对应的 第128key的末尾位置是第128字节的位置。)
    2. data 文件:存放真实的数据。格式为key -value 。和seqfile文件类似

具体的API可参看Hadoop权威指南第四章 4.5 基于文件的数据结构

7、大数据中常见的文件存储格式以及hadoop中支持的压缩算法 本文主要介绍大数据环境中常见的文件存储格式、压缩算法。本文分为2个部分,即文件存储格式和压缩算法。 阅读详情

相关推荐

Linux系统搭建OpenClaw(原Clawdbot)全流程指南 最新版

工具定位:开源个人 AI 助手,支持文件读取、命令执行、多渠道交互(Telegram / 本地终端等);系统要求:主流 Linux 发行版(Ubuntu/Debian/CentOS 等),Node.js ≥22(核心依赖);安全提示:OpenClaw 为测试版,具备高权限操作能力,建议使用非主力机,配置权限白名单,避免接触敏感数据。

AI时代老码农的第二春 6560

hadoop数据库存储格式

我整理的一些关于【数据存储,数据库,HA】的项目学习资料(附讲解~~)和大家一起分享、学习一下:https://d.51cto.com/f2PFnNHadoop数据库存储格式科普 Hadoop是一个开源的分布式计算框架,广泛应用于大数据的存储和处理,其中数据存储格式的选择对性能和效率至关重要。本文将介绍一些常用的Hado...

weixin_37076194的博客 291

Qt绘图实战:用QGraphicsItem实现可拖拽箭头连接(附完整代码)

本文详细介绍了如何使用Qt的QGraphicsItem框架实现一个功能完备的可拖拽箭头连接组件。通过核心代码示例,讲解了如何创建自定义图形项、实现智能吸附、碰撞检测以及实时拖拽编辑路径,为构建流程图、拓扑图等专业图形编辑器提供了完整的解决方案。

m2n3b4v5c6的博客 626

Hadoop文件存储的葵花宝典

文件存储分行存储和列存储,每个存储格式里面又分不同的类型,在实际的应用中如何去使用?怎样去使用?快来围观吧!文件存储格式,我们在什么时候去指定呢?比如在Hve和Ipala中去创建表的时候,我们除了指定列和分隔符,在它的命令行结尾有STORED AS参数,这个参数默认是文本格式,但是文本不适合所有的场景,那么在这里我们就可以改变文本的信息。那么到底我们应该选择哪些格式呢?每种格...

weixin_33704591的博客 171

APK静态分析(取证角度)——理论部分

APP是指应用程序(Application),是指能够在手机、平板电脑、电脑等移动设备上运行的软件。APP可以帮助用户进行各种功能操作,如社交媒体、游戏、购物、学习、工作等。用户可以通过应用商店或者在线下载安装APP,然后在设备上使用它们。APP的种类非常丰富,能够满足用户不同的需求和兴趣。

currify的博客 3208

Pywinauto与Inspect.exe完美搭配:解决Windows应用UI自动化中的元素定位难题

本文详细介绍了如何将Pywinauto与Inspect.exe结合,以解决Windows应用UI自动化中的核心难题——元素定位。通过实战指南,阐述了如何利用Inspect.exe在UIA模式下精准侦察控件属性,并将这些信息转化为Pywinauto的稳健定位策略,从而高效自动化WPF、WinForms等现代框架构建的复杂桌面应用。

weixin_29297127的博客 520

在Hadoop中重写FileInputFormat类以处理二进制格式存储的整数

最近开始使用MapReduce,发现网上大部分例子都是对文本数据进行处理的,也就是说在读取输入数据时直接使用默认的TextInputFormat进行处理即可。对于文本数据处理,这个类还是能满足一部分应用场景。但是如果要处理以二进制形式结构化记录存储的文件时,这些类就不再适合了。 本文以一个简单的应用场景为例:对按照二进制格式存储的整数做频数统计。以此来说明如何重写FileInputFormat来实现对非文本数据的处理。

相信并热爱着 3388

WPF实战案例 | C# WPF实现大学选课系统

WPF实战案例_C# WPF实现大学选课系统, C# WPF实现大学选课系统,大作业,毕业设计,该系统实现多身份登录、修改密码、课程的管理,个人信息的管理等功能。这个源码让你快速搭建自己的应用程序,注释完整,代码规范,各种风格都有,代码上手简单,代码独立,可以直接用程序打开,运行使用。也可直接点击EXE运行程序。

不踩坑,不知道坑有多深;不总结,踩过的坑白踩。 4624

HFile存储格式

HBase中的所有数据文件都存储在Hadoop HDFS文件系统上,主要包括两种文件类型: 1. HFile, HBase中KeyValue数据的存储格式,HFile是Hadoop的二进制格式文件,实际上StoreFile就是对HFile做了轻量级包装,即StoreFile底层就是HFile 2. HLog File,HBase中WAL(Write Ahead Log) 的存储格式,物理上...

baiyunl的专栏 1020

手把手教你用LabelImg打造专属YOLO数据集:从标注到训练全攻略!

YOLO(You Only Look Once)是一种快速、高效的目标检测算法。它使用一种简洁的.txt文件格式来保存每张图片中的标注信息,适合构建自定义目标检测数据集。🔹 图像文件.jpg.png等;每张图片将对应一个同名的标签文件(.txtdog.jpg对应dog.txt;图像在训练前通常会被缩放成统一尺寸,例如 YOLOv3 默认输入为416x416。🔹 标签文件(.txt)是一个纯文本文件;每一行表示一个标注目标;字段说明类别编号,从0开始,例如:狗是0,猫是1x_center。

FJN110的博客 2465

【实验】ENSP 实战:酒店有线 + 无线三层组网全配置(VLAN 规划 + AC/AP+SSID 绑定)

三层架构:出口路由器 → 核心交换机 → 汇聚交换机 → 接入交换机 / AP / 终端。

jundao1997的专栏 431

Hadoop_HDFS_常见的文件组织格式与压缩格式

参考资料1.2.本文主要介绍下HDFS上的常见文件格式和压缩格式总结 :HDFS 中常见的文件存储格式HDFS中常见的文件压缩方式。

迎难而上 4283

YOLOv11改进策略【Neck】| 替换RT-DETR中的CCFF跨尺度特征融合颈部结构,优化计算瓶颈与冗余问题

RT-DETR中的CCFF模块用于优化多尺度特征融合,解决传统方法的计算瓶颈与冗余问题,提升模型速度与精度,以适应实时检测需求。

Limiiiing的博客 1830

hadoop文件存储位置_Hadoop文件的存储格式实例详解

sequence文件存储格式1.txt纯文本格式,若干行记录。默认用字符编码存储2.SequenceFile格式(顺序文件格式,可进行切割)key-value 格式进行存储,最终形成的是一个二进制文件, 需用hadoop提供的api进行写入存储。编写 写入 seq文件案例。Configuration configuration = new Configuration();configuration...

weixin_39973196的博客 446

Camera2Demo

在Camera2 的基础上进行封装,使得Camera2一堆初始化逻辑与Activity分离,降低耦合度,完成预览拍照并保存的操作

pscad IEEE标准系统搭建说明

pscad IEEE标准系统搭建说明,包含典型的IEEE 9节点、14节点、30节点、39节点和118节点系统。内含标准测试系统的原始数据和潮流结果。

大数据-Hadoop生态文件存储格式

介绍hadoop生态圈常见的文件格式

欢迎大家来到我的频道,我是一名数据开发+数据分析方向小鼠鼠,每天都会和大家分享很多知识,希望大家能多多点赞加关注哦。 809

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

【Hadoop】Hadoop文件压缩与存储格式

(图片来源于网络,侵删) 文件压缩是什么?文件?压缩?顾名思义,可以认为是对一个文件的大小进行压缩,使其压缩后的大小为原本大小的二分之一、四分之一、甚至十分之一,这样压缩后的文件减小了文件的存储大小,释放了大量空间,也利于文件的传输! 在Hadoop中,我们知道MR的输入和输出以及中间结果的Shuffle都和Disk有密切的“交流” ! 所以压缩对于MR来说可以说是非常重要的!因为我们看一下常见的压缩方式有哪些吧! 如下图???? 压缩格式 codec类 算法 扩展名 多文件 splitable

Together 1598

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

hadoop生态圈-- 个人笔记学习03 文件存储格式

传统文件存储格式:就jpeg,mp3,doc等server/ host上,由块设备,如硬盘。软盘等,格式选择取决用途。在HDFS应用程序(如MapReduce or Spark)中, 性能瓶颈在于特定位置查找数据和写入消耗的时间。管理大量数据也很复杂(数据的存储,数据格式变化)需要选择合适的文件格式数据处理的不同阶段使用不同格式:发挥优势。

JamSlade的博客 484

hadoop平台存储文件格式的概念及对比

背景 在实施大数据平台项目或直接说hadoop平台类的项目时,开发设计人员总会对"文件格式"感到困惑,不知道该如何理解和使用。常见的问题有以下几种: hdfs支持哪些文件格式? txt格式、rc格式和orc格式有什么区别? orc格式和parquet格式哪个好? 该怎么去选择这些格式,这些格式的文件都有什么优缺点? Hbase和ElasticSearch为什么也是文件存储格式的一种? ...

u012719556的专栏 1281

Hadoop文件存储格式(Avro、Parquet、ORC及其他)

相比TEXTFILE和SEQUENCEFILE,RCFILE由于列式存储方式,数据加载时性能消耗较大,但是具有较好的压缩比和查询响应。数据仓库的特点是一次写入、多次读取,因此,整体来看,

JacksonKing的专栏 4543

Hadoop文件存储格式

一.压缩形式 记录压缩 概念:每条记录都进行压缩,但是仅压缩value 块压缩 概念:将一个文件分成多个块,分别进行压缩(同时压缩多条记录),块与块之间会有标识(syen mark),这样对于每个块的处理就可以并行执行。 二.行式存储和列式存储 概念 行式存储 传统关系型数据库,比如Oracle、Mysql、SQL Server等采用此类方式存储,一行数据在存储介质中连续保存。它适合...

赵昕彧 3676

Hadoop三种文件存储格式Avro、Parquet、ORC

URL: https://zhuanlan.zhihu.com/p/459444652对于 MapReduce 和 Spark 等支持 HDFS 的应用程序来说,一个巨大的瓶颈是在特定位置查找相关数据所需的时间以及将数据写回另一个位置所需的时间。这些问题随着管理大型数据集的困难而变得复杂,例如不断发展的模式或存储限制。在处理大数据时,存储此类数据所需的成本更高(Hadoop 冗余存储数据以实现容错)。除了存储成本之外,处理数据还伴随着 CPU、网络、IO 成本等。随着数据的增加,处理和存储的成本也随之增加。

2601_95095534的博客 575

[hadoop3.x系列]Hadoop常用文件存储格式及BigData File Viewer工具的使用(三)

在Windows有很多种文件格式,例如:JPEG文件用来存储图片、MP3文件用来存储音乐、DOC文件用来存储WORD文档。每一种文件存储某一类的数据,例如:我们不会用文本来存储音乐、不会用文本来存储图片。windows上支持的存储格式是非常的多。

Maynor的博客 1276

Hadoop文件压缩及存储格式

目录 一、压缩格式 Hive 数据压缩的优缺点 Hive 压缩格式对应的Hadoop编码/解码器方式 Hive 常见的压缩格式对应的压缩性能比较 扩展下:怎样对压缩模式进行评价? 二、存储格式 Hive 中的 TEXTFILE 文件存储格式 Hive 中的 SequenceFile 文件存储格式 Hive 中的 RCFILE 文件存储格式 Hive 中的常用文件存储格式 ORCFILE Hive 中的常用文件存储格式 Parquet 什么是行式存储和列式存储 对于 Hive表文件存

Monstar_L的博客 2182

02-Hive/Hadoop数据存储格式与avro文件创建hive表

Hive/Hadoop数据存储格式与avro文件创建hive表 一.存储格式1.Hadoop 中的文件格式1>.SequenceFile SequenceFile是Hadoop API 提供的一种二进制文件,它将数据以<key,value>的形式序列化到文件中。这种二进制文件内部使用Hadoop 的标准的Writable 接口实现序列化和反序列化。它与Hadoop API...

qq_35281775的博客 1753
上一篇: nexus私服的使用+项目的发布
下一篇: Hadoop集群搭建(英文官网翻译)
yi博说
博客等级 码龄11年 20粉丝 30原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值