zoukankan      html  css  js  c++  java
  • Hadoop学习笔记-20140512

    Java接口:

    1.URL接口读取数据

    2.FIleSystem API读取数据:

    public static FileSystem get(configuration conf) throws IOException;

    public static FileSystem get(URI uri, Configuration conf) throws IOException;

    3.FSDateInputStream:FileSystem的open方法返回的对象

    文件读取:

    1.客户端通过FileSystem的Open方法打开希望读取的文件

    2.DistributedFileSystem通过RPC调用namenode返回存有该块复本的最近的datanode地址

    3.DistributedFileSystem返回一个FSDataInputStream对象

    4.客户端对这个输入流调用read()方法将数据从datanode传输到客户端

    文件写入:

    1.客户端通过DistributedFileSystem对象调用create()函数来创建文件

    2.DistributedFileSystem通过RPC创建一个新文件

    3.namenode通过检查确定该文件不存在,然后创建新文件记录一条记录

    4.DistributedFileSystem返回一个FSDataOutputStream对象

    5.FSDataOutputStream封装了一个DFSOutputStream,后者将数据分成一个个数据包,并写入内部队列data queue

    6.DataStreamer处理数据队列,它的责任是根据datanode列表要求namenode分配合适的新块来存储数据备份

  • 相关阅读:
    Java正則表達式入门
    Effect of Switchovers, Failovers, and Control File Creation on Backups
    Android 屏幕截图(底层实现方式)
    Java实现奇偶数排序
    Java实现奇偶数排序
    Java实现奇偶数排序
    Java实现找零问题
    Java实现找零问题
    Java实现找零问题
    Java实现找零问题
  • 原文地址:https://www.cnblogs.com/middlesummer/p/3723247.html
Copyright © 2011-2022 走看看