基于Hadoop的云盘系统客户端技术选型说明

简介:

 伴随云计算技术的发展,云盘系统不断涌现,百度、360、金山等都推出了各自的云盘产品,而云盘存储的模式也越来越被用户所接受,也有越来越多的公司跃跃欲试,想在云存储领域大展拳脚,有一番作为。但是开源Hadoop平台实现语言Java和操作系统Linux的限制,Windows用户桌面版云盘客户端的开发成为了一道不可逾越的屏障。

  传统桌面软件开发最适合的语言是C/C++体系(不排斥非主流VB、Delphi、C#,有兴趣的可自行研究),云盘系统的客户端也是针对最广大的Windows桌面用户设计,最基本的要求是没要求,傻瓜式。所以如何基于开源的Hadoop云计算平台,开发云盘系统客户端的问题就转化为如何使用C/C++(或其相类语言)开发云盘客户端的问题。

  Hadoop提供的客户端开发接口包括Fuse、libhdfs、Java、thrift、webhdfs等。这几种接口中,Fuse是挂载式,适合在Linux/Unix类本地管理hadoop文件,从HDFS提供的Shell管理脚本对比的角度来看,使用意义不大;libhdfs适用于Linux/Unix服务端访问HDFS存储空间,不能应用于Windows桌面终端软件的开发;Java接口,由于Java虚拟机的限制,制作的桌面软件以来域Java的JDK,需要安装配置JDK相关环境变量,不符合Windows桌面程序常用习惯;Thrift是一个不错选择,其原理是代理模式,在Hadoop服务器端启动ThriftServer支持,在客户端通过客户端库访问ThrfitServer从而实现对hdfs分布式文件存储系统的访问,这是一个不错的选择,作为开发者也可以自行扩展ThriftServer的功能;最后还有一种选择就是自行开发服务端代理,在服务器端通过libhdfs或者Java API进行开发,条件是你必须十分熟悉HDFS系统接口和技术框架体系。

  本文作者在开源社区上传了一套针对Windows用户、基于thrift的开发库,有兴趣的可自行下载:

https://sourceforge.net/projects/libhdfs4win/

目录
相关文章
|
7月前
|
分布式计算 Hadoop 分布式数据库
Hadoop生态系统介绍(二)大数据技术Hadoop入门理论系列之一----hadoop生态圈介绍
Hadoop生态系统介绍(二)大数据技术Hadoop入门理论系列之一----hadoop生态圈介绍
199 2
|
3月前
|
SQL 存储 分布式计算
Hadoop-16-Hive HiveServer2 HS2 允许客户端远程执行HiveHQL HCatalog 集群规划 实机配置运行
Hadoop-16-Hive HiveServer2 HS2 允许客户端远程执行HiveHQL HCatalog 集群规划 实机配置运行
63 3
|
3月前
|
分布式计算 Java Hadoop
Hadoop-30 ZooKeeper集群 JavaAPI 客户端 POM Java操作ZK 监听节点 监听数据变化 创建节点 删除节点
Hadoop-30 ZooKeeper集群 JavaAPI 客户端 POM Java操作ZK 监听节点 监听数据变化 创建节点 删除节点
81 1
|
5月前
|
存储 SQL 分布式计算
Hadoop生态系统概述:构建大数据处理与分析的基石
【8月更文挑战第25天】Hadoop生态系统为大数据处理和分析提供了强大的基础设施和工具集。通过不断扩展和优化其组件和功能,Hadoop将继续在大数据时代发挥重要作用。
|
5月前
|
存储 分布式计算 资源调度
Hadoop生态系统概览:从HDFS到Spark
【8月更文第28天】Hadoop是一个开源软件框架,用于分布式存储和处理大规模数据集。它由多个组件构成,旨在提供高可靠性、高可扩展性和成本效益的数据处理解决方案。本文将介绍Hadoop的核心组件,包括HDFS、MapReduce、YARN,并探讨它们如何与现代大数据处理工具如Spark集成。
382 0
|
6月前
|
分布式计算 Hadoop Linux
Hadoop检查本地文件系统:
【7月更文挑战第24天】
58 6
|
6月前
|
分布式计算 Hadoop
|
6月前
|
存储 分布式计算 Hadoop
阿里巴巴飞天大数据架构体系与Hadoop生态系统的深度融合:构建高效、可扩展的数据处理平台
技术持续创新:随着新技术的不断涌现和应用场景的复杂化,阿里巴巴将继续投入研发力量推动技术创新和升级换代。 生态系统更加完善:Hadoop生态系统将继续扩展和完善,为用户提供更多元化、更灵活的数据处理工具和服务。
|
7月前
|
存储 SQL 分布式计算
Hadoop 生态系统
【6月更文挑战第20天】Hadoop 生态系统
69 3
|
7月前
|
存储 分布式计算 Hadoop
Hadoop生态系统详解:HDFS与MapReduce编程
Apache Hadoop是大数据处理的关键,其核心包括HDFS(分布式文件系统)和MapReduce(并行计算框架)。HDFS为大数据存储提供高容错性和高吞吐量,采用主从结构,通过数据复制保证可靠性。MapReduce将任务分解为Map和Reduce阶段,适合大规模数据集的处理。通过代码示例展示了如何使用MapReduce实现Word Count功能。HDFS和MapReduce的结合,加上YARN的资源管理,构成处理和分析大数据的强大力量。了解和掌握这些基础对于有效管理大数据至关重要。【6月更文挑战第12天】
299 0

相关实验场景

更多