HDFS中的数据块大小,为什么是64MB?

2023-12-19

HDFS/Hadoop默认数据块大小为64MB。磁盘中的块大小一般为4KB。

64MB 块大小意味着什么? ->是否意味着从磁盘读取的最小单位是64MB?

如果是,这样做的好处是什么?-> 方便连续访问 HDFS 中的大文件?

我们可以使用磁盘原始的 4KB 块大小来做同样的事情吗?


64MB 块大小意味着什么?

块大小是文件系统可以存储的最小数据单元。如果您存储 1k 或 60Mb 的文件,它将占用 1 个块。一旦跨越 64Mb 边界,您就需要第二个块。

如果是的话,这样做有什么好处?

HDFS 旨在处理大文件。假设您有一个 1000Mb 的文件。对于 4k 块大小,您必须发出 256,000 个请求才能获取该文件(每个块 1 个请求)。在 HDFS 中,这些请求通过网络传输并带来大量开销。每个请求都必须由名称节点处理,以确定在哪里可以找到该块。那是很多流量!如果使用 64Mb 块,请求数量将减少到 16,从而显着降低名称节点上的开销和负载成本。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

HDFS中的数据块大小,为什么是64MB? 的相关文章

  • Sql批量复制截断小数

    当我使用批量复制将十进制值从 C DataTable 插入 Sql Server 2005 时 值会被截断而不是四舍五入 DataTable 中的数据类型为 Decimal 数据库中的数据类型为Decimal 19 3 数据表中的值为 1
  • 如何将 .txt 文件中的数据转换为 xml? C#

    我在一个文本文件中有数千行数据 我想通过将其转换为更容易搜索的内容来轻松搜索 我希望 XML 或其他类型的大型数据结构 尽管我不确定它是否是最好的对于我的想法 每行的数据如下所示 第 31 册 托马斯 乔治 32 34 154 每本书都不是
  • 在数据库中存储类型时的最大 MIMEType 长度

    人们在数据库中使用什么作为 MIMEType 字段的长度 到目前为止我们看到的最长的是 72 字节 application vnd openxmlformats officedocument wordprocessingml documen
  • 更改 Hadoop 中的数据节点数量

    如何改变数据节点的数量 即禁用和启用某些数据节点来测试可扩展性 说得更清楚一点 我有4个数据节点 我想一一实验1 2 3 4个数据节点的性能 是否可以只更新名称节点中的从属文件 临时停用节点的正确方法 创建一个 排除文件 这列出了您想要删除
  • Hadoop-reducer 如何获取数据?

    据我所知 映射器为每个减速器生成 1 个分区 减速器如何知道要复制哪个分区 假设有 2 个节点运行用于字数统计程序的映射器 并且配置了 2 个缩减器 如果每个映射节点生成 2 个分区 并且两个节点中的分区都可能包含相同的单词作为键 那么减速
  • 在同一个表上组合两个 SQL SELECT 语句

    我想结合这两个 SQL 查询 SELECT FROM Contracts WHERE productType RINsell AND clearTime IS NULL AND holdTime IS NOT NULL ORDER BY g
  • 为什么我们在 @synchronized 块中传递 self ?

    我猜 synchronized 块不依赖于对象 而是依赖于线程 对吗 既然如此 我们为什么要传递 self 呢 synchronized是语言提供的用于创建同步作用域的构造 因为使用简单的全局共享互斥锁效率非常低 因此序列化每个单独的互斥锁
  • 删除大量记录需要很长时间

    我有一个包含约 60 000 行的数据库表 在 SQL Server 2012 Express 上运行 我使用以下代码来清除旧行 Deleting CPU measurements older than oldestAllowedTime
  • 如何查看Pocketsphinx词典中是否存在该单词?

    我只是想看看字典文件中是否存在字符串 字典文件位于问题底部 我想检查语音识别器是否可以识别单词 例如 识别器将无法识别字符串ahdfojakdlfafiop 因为字典中没有定义 所以 我可以检查某个单词是否在 pocktsphinx 词典中
  • 如何在数据库中存储年月?

    是否有在数据库中存储年份和月份的标准方法 我需要根据月份和年份制作一些报告 我无法使用日期和函数实时提取月份 因为表很大 所以我需要预处理 我会和 Michael 的建议是什么 https stackoverflow com a 81694
  • 非规范化如何提高数据库性能?

    我听说过很多关于非规范化的内容 它是为了提高某些应用程序的性能而进行的 但我从来没有尝试过做任何相关的事情 所以 我只是好奇 规范化数据库中的哪些地方会使性能变差 或者换句话说 非规范化原则是什么 如果我需要提高性能 如何使用此技术 非规范
  • 在 PHP 中将十进制/双精度/浮点值与 PDO 绑定的最佳方法是什么?

    看来类常量只涵盖PDO PARAM BOOL PDO PARAM INT and PDO PARAM STR用于绑定 您只是将十进制 浮点 双精度值绑定为字符串还是有更好的方法来处理它们 MySQLi 允许使用 d 类型表示 double
  • 为什么我们需要将外部表移动到托管 Hive 表?

    我是 Hadoop 新手 正在学习 Hive 在 Hadoop 权威指南第 3 版中 第 12 页 第428章 最后一段 我不明白下面关于 HIVE 中外部表的段落 一种常见的模式是使用外部表访问存储在 HDFS 中的初始数据集 由另一个进
  • 如何将图数据结构持久化到关系数据库中?

    我考虑过创建一个顶点表和一个边表 但是在内存中构建图和遍历子图是否需要大量查找 我想避免过多的数据库读取 还有其他方法可以保存图表吗 旁注 我听说过 Neo4j 但我的问题实际上是如何在概念上表示标准数据库中的图形 不过 我对一些 NoSQ
  • 内存高效的大型数据集流式传输到 S3

    我正在尝试使用 SQL alchemy 复制 S3 大型数据集 大于 RAM 我的限制是 我需要使用 sqlalchemy 我需要将内存压力保持在最低水平 我不想使用本地 filsystem 作为中间步骤将数据发送到 s3 我只想通过管道将
  • Android 预填充数据库 [重复]

    这个问题在这里已经有答案了 我正在开发一个 Android 应用程序 需要在该应用程序的数据库中填充多个条目 一个表 包含 1000 10000 行 然后用户才能使用该应用程序 我浏览了一些教程 但不确定执行此操作的最佳方法 我是否应该在每
  • 不能为实体类型指定过滤表达式。过滤器只能应用于层次结构中的根实体类型

    我在添加新迁移时遇到此错误 无法为实体类型 Babysitter 指定筛选表达式 e gt Not e IsDeleted 过滤器只能应用于层次结构中的根实体类型 我正在做的是 我有 2 个类 Babysitter 和 Parent 它们都
  • 如何删除实体框架6中的多对多关系

    如果将项目连接为多对多关系 则从数据库中删除项目时会出现问题 我的数据库看起来像 Project lt JobInProject gt Job ProjectID JobInProjectID JobID ProjectID JobID 主
  • 有什么方法可以在MySQL中的表名位置使用变量吗?

    我想在表名称位置使用变量 例如 SELECT FROM targetTableName 然而它会出错 有什么方法可以在MySQL中的表名位置使用变量吗 您显示的查询不起作用有两个原因 插入到查询中的用户定义变量将被视为使用字符串文字 而不是
  • 如何使用索引更改表的列?

    我想将带有某些索引的表中 a 列的列大小从 varchar 200 更改为 varchar 8000 我应该如何进行 既然是VARCHAR你正在增加尺寸 然后简单地ALTER TABLE ALTER COLUMN https learn m

随机推荐

  • 使 CSS 网格中的单行跨越所有列

    我怎样才能使 legend 跨越所有行 所以它会弄乱 fieldset 其样式为 3 列 CSS 网格 fieldset legend Personal Details legend fieldset fieldset legend
  • 编译器是否允许交错计算不同函数参数中的子表达式? [复制]

    这个问题在这里已经有答案了 我想知道以下情况 void f int a int b int a int x std cout lt lt func a lt lt std endl return 1 int b int x std cout
  • 如何在 Django 中测试空查询集?

    我正在 Django 中测试一个视图 该视图应该从对象中删除所有标签 为此 我使用这个断言 self assertEqual list Tag objects get for object Animal objects get pk 1 这
  • 根据 Airflow 中任务的输出字典动态生成多个任务

    我有一个任务 其中输出是一个字典 每个键中都有一个列表值 task task id gen dict def generate dict return output dict output look like this A aa bb cc
  • ASP.NET Web API,从 Flex FileReference 上传时 MIME 多部分流意外结束

    按照 ASP NET 上的教程 实现了一个用于执行异步文件上传的 Web API 控制器方法 如下所示 public Task
  • 帮助理解 Java 中的函数对象或函子

    有人可以解释什么是函子并提供一个简单的例子吗 函数对象就是这样 既是对象又是函数的东西 旁白 将函数对象称为 函子 是对该术语的严重滥用 另一种 函子 是数学中的核心概念 并且在计算机科学中具有直接作用 请参阅 Haskell 函子 该术语
  • 在 PHP 中应用差异

    我正在使用 Text Diff PEAR 包来比较短文本文档 其中 Text Diff 对象是使用每个文档中以空格分隔的单词列表创建的 我希望将差异存储在数据库中 然后在再次加载文件时应用它 有没有一种简单的方法来应用这个差异 或者我需要编
  • 应用程序根目录中“npm install”生成的许多不必要的文件

    通常 当我在应用程序目录中执行 npm install 时 会在 node modules 文件夹中生成一堆 npm 库文件 这是预期的 今天突然我开始看到许多文件在应用程序目录内部和节点模块外部生成 有人遇到过这个问题吗 如果是的话 有什
  • C++ int 操作在 mips 架构上是原子的吗

    我想知道我是否可以在不锁定 mips cpu 的情况下读取或写入共享 int 值 尤其是 Amazon 或 Danube 我的意思是 如果这样的读取或写入是原子的 其他线程不能中断它们 需要明确的是 我不想阻止线程之间的竞争 但我关心 in
  • 在 Windows 中的 Windows 移动应用程序中发送邮件

    我是 Windows Mobile 应用程序的新手 在我的项目中 我想使用发送电子邮件microsoft windowsmobile pocketoutlook 到目前为止我有以下代码 private void btnsubmit Clic
  • 为什么 Rust 允许通过空指针调用函数?

    我正在尝试 Rust 中的函数指针魔法 最终得到了一个代码片段 我完全没有解释为什么它会编译 甚至没有解释它为什么运行 fn foo println This is really weird fn caller
  • 如何将文件夹层次结构中的所有 git 内容向上移动一级?

    我有一个 git 存储库 其结构如下 repo git bootstrap py buildout cfg gitignore webapp manage py modules templates static 我想移动内容webapp文件
  • Net Core:从 Autofac 模块访问 appsettings.json 值

    AspNet核心应用程序 1 像这样的Autofac模块 public class AutofacModule Module protected override void Load ContainerBuilder builder Reg
  • 在 PHP PCRE 函数中双重转义还是不双重转义?

    我一直在寻找一篇关于何时需要双重转义 何时不需要双重转义的可靠文章 但我找不到任何东西 也许我看起来不够仔细 因为我确信在某个地方有一个解释 但让下一个有这个问题的人很容易找到 以以下正则表达式模式为例 n domain com myfee
  • 封闭式班级

    是否可以创建一个不再接纳新成员的类型类 也许通过使用模块边界 我可以拒绝导出完整实例定义所需的函数 但这只会在有人生成无效实例时导致运行时错误 我可以将其设置为编译时错误吗 自 GHC 7 8 1 起 封闭型家庭 https downloa
  • 单击超链接时停止模糊事件

    我用了这个答案jQuery 模拟输入和 div https stackoverflow com questions 11228628 jquery select simulation with input and div创建一个看起来相似的
  • 拖放背后的逻辑

    我想知道基本拖放功能的 它是如何工作的 和 它应该如何设计和实现 方面 我还没有实现过这样的功能 我正计划为我的一个项目这样做 并且我确实对如何实施它有一些想法 我想确保我走在正确的道路上 并且你们很可能也对此事有话要说 假设我有如下列出的
  • 如何在存储库上使用 svn2git

    我在用着svn2git https github com nirvdrum svn2git测试 svn 存储库到 git 的迁移 现在我的 svn 是这样构建的 myproj包含 repo1 repo2 obsolete old 每个存储库
  • Razor/JavaScript 和尾随分号

    使用 Visual Studio 2012 在 Razor 视图页面的 JavaScript 部分中 我发现 Razor 语法与 JavaScript 语法之间存在战斗 特别是 脚本部分中的尾部分号由智能感知标记 并传递编译器警告 而不是错
  • HDFS中的数据块大小,为什么是64MB?

    HDFS Hadoop默认数据块大小为64MB 磁盘中的块大小一般为4KB 64MB 块大小意味着什么 gt 是否意味着从磁盘读取的最小单位是64MB 如果是 这样做的好处是什么 gt 方便连续访问 HDFS 中的大文件 我们可以使用磁盘原