1. HDFS 概述
- 背景:随着数据量越来越大,在一个操作系统存不下所有的数据,就需要分配到更多的操作系统管理的磁盘中。但是不方便管理和维护,所以需要一种系统来管理多台机器上的文件,这种系统就是分布式文件管理系统。HDFS就是一种分布式文件管理系统。
- HDFS(Hadoop Distributed File System):Hadoop的分布式文件管理系统。
- 使用场景:适合一次写入(之后不能修改文件,但能追加文件)、多次读出的场景。(比如数仓)
- 优点:
- 缺点:
- 不适合低延时数据访问:做不到像Mysql这样快速CRUD
- 无法高效的对大量小文件进行存储:因为是以块为单位进行存储,比如120MB,只存12kb就很浪费空间。
- 不支持并发写入、不支持文件随机修改:
- 一个文件只能有一个线程进行写入,不允许多线程同时写;
- 文件写入后,后续只能进行数据追加(append),不支持文件的随机修改(update)
2. HDFS架构
3. HDFS 文件块
可以通过配置/opt/module/hadoop-3.1.3/share/hadoop/hdfs-default.xml
文件中的 dfs.blocksize
参数来规定块的大小。hadoop 2.x、hadoop 3.x 中默认大小是 128MB
。
为什么块不能太大,也不能太小?
- 块小,会导致寻址时间长贴近于传输时间
- 块大,传输时间会远远大于寻址时间
版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。
文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/84553.html