- android - RelativeLayout 背景可绘制重叠内容
- android - 如何链接 cpufeatures lib 以获取 native android 库?
- java - OnItemClickListener 不起作用,但 OnLongItemClickListener 在自定义 ListView 中起作用
- java - Android 文件转字符串
我是新来的,这是我的第一个问题。如果我做错了什么,我深表歉意。
我一直在阅读 Tom White 撰写的 Hadoop 权威指南。在第 3 章 Hadoop 分布式文件系统中,在文件读取的剖析中,我无法理解“FsDataInputStream 反过来包装管理数据节点和名称节点 I/O 的 DFSInputStream”是什么意思。请检查此以供引用 https://www.inkling.com/read/hadoop-definitive-guide-tom-white-3rd/chapter-3/data-flow
我真的很困惑。一个简单的解释将不胜感激。
谢谢
最佳答案
在 Java 中 DataInputStream是 InputStream 的特化:
A data input stream lets an application read primitive Java data types from an underlying input stream in a machine-independent way. An application uses a data output stream to write data that can later be read by a data input stream.
在 Hadoop 中,同样的关系适用于 FSDataInputStream和 FSInputStream .
“包装”另一个流的流意味着在包装器流上完成的任何操作都会依次转换为包装流中的操作。因此,DataInputStream 可以通过读取包装的 InputStream bytes 并根据 Java 原语的序列化规则解释它们来提供数据 语义(例如,读取 Java 数据类型原语)。您可以自己阅读 Inputstream,但是您必须将原始字节解码为 Java 类型并了解序列化规则。请注意 DataInputStream 如何在任何 InputStream 上工作,只关心序列化规则,而不关心实际的流来源。包装流可以是文件、内存区域、网络连接。
关于hadoop - "FsDataInputStream in turn wraps a DFSInputStream"在 Hadoop 中读取文件的剖析中意味着什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23788039/
我是新来的,这是我的第一个问题。如果我做错了什么,我深表歉意。 我一直在阅读 Tom White 撰写的 Hadoop 权威指南。在第 3 章 Hadoop 分布式文件系统中,在文件读取的剖析中,我无
我有一个非常简单的 Java 代码,它从 hdfs 读取数据 try{ InputStream s = new GzipCompressorInputStream(hdfsFileSystem
我是一名优秀的程序员,十分优秀!