java hdfs

作者:原创时间:2022-04-12
文档

java hdfs是什么,让我们一起了解一下?

HDFS是指被设计成适合运行在通用硬件上的分布式文件系统,是一个高度容错性的系统,适合部署在廉价的机器上。HDFS能提供高吞吐量的数据访问,非常适合大规模数据集上的应用。

hdfs的特点是什么?

1、硬件故障:

硬件故障是常态,而不是异常。整个HDFS系统将由数百或数千个存储着文件数据片段的服务器组成。实际上它里面有非常巨大的组成部分,每一个组成部分都很可能出现故障,这就意味着HDFS里的总是有一些部件是失效的,因此,故障的检测和自动快速恢复是HDFS一个很核心的设计目标。

2、数据访问:

运行在HDFS之上的应用程序必须流式地访问它们的数据集,它不是运行在普通文件系统之上的普通程序。HDFS被设计成适合批量处理的,而不是用户交互式的。重点是在数据吞吐量,而不是数据访问的反应时间,POSIX的很多硬性需求对于HDFS应用都是非必须的,去掉POSIX一小部分关键语义可以获得更好的数据吞吐率。

3、大数据集:

运行在HDFS之上的程序有很大量的数据集。典型的HDFS文件大小是GB到TB的级别。所以,HDFS被调整成支持大文件。它应该提供很高的聚合数据带宽,一个集群中支持数百个节点,一个集群中还应该支持千万级别的文件。

实战操作,JAVA操作HDFS案例如下:

Jar包引入,pom.xml:

      org.apache.hadoop      hadoop-common      2.8.0              org.apache.hadoop      hadoop-hdfs      2.8.0

将本地文件上传到hdfs服务器:

/**
     * 上传文件到hdfs上
     */
    @Test
    public void upload() throws IOException {
        Configuration conf = new Configuration();
        conf.set("fs.defaultFS","hdfs://hzq:9000");
        FileSystem fs = FileSystem.get(conf);
        fs.copyFromLocalFile(new Path("/home/hzq/jdk1.8.tar.gz"),new Path("/demo"));
    }

以上就是小编今天的分享了,希望可以帮助到大家。

显示全文
java node类 java notify java nslookup java number java hibernate java htmlunit java image java implements java influxdb java inputstreamreader java onvif java openfire java opengl java openjdk java rectangle java redirect java reference java reflect java regex java openssl java hashcode java getbytes java geotools java nfs java nexus java nextline java nextint java newinstance java namespace java mybatisplus java mvvm java multiset java mqtt java mono java monad java module java modelandview java mockito java mmap java mkdir