Hadoop读书笔记(一)Hadoop介绍:http://blog.csdn.net/caicongyang/article/details/39898629
Hadoop读书笔记(二)HDFS的shell操作:http://blog.csdn.net/caicongyang/article/details/41253927
JAVA URL 操作HDFS
OperateByURL.java
package hdfs; import java.io.InputStream; import java.net.URL; import org.apache.hadoop.fs.FsUrlStreamHandlerFactory; import org.apache.hadoop.io.IOUtils; public class OperateByURL { private static final String PATH ="hdfs://192.168.80.100:9000/test.txt"; public static void main(String[] args) throws Exception { //查看文件 URL.setURLStreamHandlerFactory(new FsUrlStreamHandlerFactory()); URL url = new URL(PATH); InputStream in = url.openStream(); IOUtils.copyBytes(in, System.out, 1024,true); } }
Hadoop Java api 操作HDFS
OperateByHadoopAPI.Java
package hdfs; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.net.URI; import org.apache.hadoop.conf.Configuration; import org.apache.hadoop.fs.FSDataInputStream; import org.apache.hadoop.fs.FSDataOutputStream; import org.apache.hadoop.fs.FileStatus; import org.apache.hadoop.fs.FileSystem; import org.apache.hadoop.fs.Path; import org.apache.hadoop.io.IOUtils; public class OperateByHadoopAPI { //Hadoop HDFS路径 private static final String PATH="hdfs://192.168.80.100:9000/"; private static final String DIR="/d1"; private static final String FILE="/d1/default.cfg"; public static void main(String[] args) throws Exception { FileSystem fileSystem = FileSystem.get(new URI(PATH), new Configuration()); //创建文件夹 fileSystem.mkdirs(new Path(DIR)); //上传文件 //方法一 //fileSystem.copyFromLocalFile(new Path("F:/hadoopbaiduyundownload/liclog.txt"), new Path(DIR)); //方法二 FSDataOutputStream out = fileSystem.create(new Path(FILE)); FileInputStream in = new FileInputStream(new File("F:/hadoopbaiduyundownload/default.cfg")); IOUtils.copyBytes(in, out, 1024, true); //下载 //方法一 产生WARN 待解决:14/11/19 21:39:49 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable File file = new File("F:/hadoopbaiduyundownload/test.txt"); File file2 = new File("F:/hadoopbaiduyundownload/test2.txt"); fileSystem.copyToLocalFile(new Path("hdfs://192.168.80.100:9000/test.txt"), new Path(file.getAbsolutePath())); //方法二 FSDataInputStream inputStream = fileSystem.open(new Path("hdfs://192.168.80.100:9000/test.txt")); FileOutputStream outputStream = new FileOutputStream(file2.getAbsolutePath()); IOUtils.copyBytes(inputStream, outputStream, 1024, true); //遍历文件夹 FileStatus[] listStatus = fileSystem.listStatus(new Path("/")); for (FileStatus fileStatus : listStatus) { System.out.println(fileStatus.isDir()?"文件夹":"文件"+" "+fileStatus.getOwner()+" "+fileStatus.getReplication()+" "+ fileStatus.getPath()); } //删除文件 /** * @parameter path * @parameter boolean :如果填true,path为文件夹时递归删除 * */ fileSystem.delete(new Path(DIR), true); } }
欢迎大家一起讨论学习!
有用的自己收!
记录与分享,让你我共成长!欢迎查看我的其他博客;我的博客地址:http://blog.csdn.net/caicongyang
相关推荐
本文将深入探讨HDFS的基本原理和操作,以及如何通过Java API进行文件操作。 Hadoop分布式文件系统(HDFS)是Google文件系统(GFS)的一种实现,设计用于处理海量数据。HDFS的核心特点是分布式存储,它将大文件分割...
Hadoop学习笔记(一):HDFS分布式文件系统(从环境搭建到Java API)-附件资源
Hadoop 上课笔记之 Java 编程和 HBase Hadoop 是一个分布式计算框架,HBase 是基于 Hadoop 的一个分布式数据库系统。下面是 Java 编程和 HBase 相关的知识点: 一、HBase 主要类和接口 1. Admin 类:用于建立...
本笔记将从环境搭建、HDFS配置、YARN配置、分布式配置到MapReduce编程,全方位介绍Hadoop的学习过程,并结合JavaWeb项目实践,帮助读者深入理解Hadoop的工作原理和应用。 ### 一、环境搭建 在开始Hadoop的学习之前...
用户可以通过Hadoop的shell命令或编程接口(如Hadoop的Java API)与HDFS进行交互。 **六、MapReduce编程模型** MapReduce是Hadoop处理大数据的核心。它将大型任务拆分成小的Map任务,在各个节点并行执行,然后通过...
- **API 基础操作**:使用 Hadoop 提供的 Java API 进行文件上传、下载、修改等操作。 - **API 数据清洗**:使用 API 实现数据清洗功能,例如去除无效数据或格式化数据。 #### MapReduce 初级 1. **分片逻辑**:...
1. **Hadoop环境搭建**:如何在本地或者集群环境中安装配置Hadoop,包括Java环境设置、Hadoop版本选择、配置文件的修改(如core-site.xml、hdfs-site.xml、yarn-site.xml和mapred-site.xml)以及启动和停止Hadoop...
本文将围绕“Hadoop,SPARK开发学习笔记”这一主题,深入探讨Hadoop的组件HDFS(分布式文件系统)、HBase(分布式数据库)和Hive(数据仓库工具),以及Spark的核心特性与开发实践。 首先,Hadoop是Apache基金会的...
9. **云存储**:为了实现数据的云端存储,应用可能会使用云服务商如Amazon S3或Google Cloud Storage,或者自建分布式文件系统,如Hadoop HDFS,来存储和备份用户笔记。 10. **数据一致性**:为了确保多用户环境下...
- **API文档**: 针对Hadoop的各种API提供详细的说明,包括Java API文档,这对于开发者来说是非常宝贵的资源。 - **最佳实践**: 分享了一些实际应用场景下的配置和优化技巧,帮助用户更好地利用Hadoop解决实际问题...
3. HDFS的Java操作:除了Shell命令,Hadoop还提供了Java API,使得开发者可以直接在Java程序中对HDFS进行操作,实现更复杂的任务。 4. DataNode的工作机制:DataNode负责存储数据块,并定期向NameNode发送心跳信息,...
Java Transaction API (JTA) 和Java Transaction Service (JTS) 提供了分布式事务管理的框架,允许跨多个资源(如数据库和消息队列)的事务操作。 6. 高可用性和容错 为了确保系统的稳定性,Java提供了负载均衡...
根据提供的文件信息,我们可以推断出这是一份关于Hadoop分布式文件系统(HDFS)的学习笔记。接下来将基于这些信息,详细阐述HDFS的核心概念、架构以及读写操作流程。 ### Hadoop概述 Hadoop是一个开源软件框架,...
- **hadoop笔记.ppt**:这可能是一个PPT形式的学习笔记,整理了Hadoop的关键概念、核心组件的工作原理以及一些实例分析。 总之,Hadoop作为一个强大的分布式计算框架,对于大数据处理和分析有着至关重要的作用。...