1.理解分布式
HDFS我们都知道它是分布式存储系统,分布式系统和我们PC机的硬盘存储有什么不同。
多台电脑有多个硬盘,算不算分布式。不是的。我们有一个管理者,但是存储的数据分布在多台pc机中,才是分布式。
2.HDFS与传统数据之间的联系
我们理解了分布式,那么什么是HDFS,或许我们知道了他的概念,结构。这里我们从另外角度看待HDFS。我们知道传统数据库有mysql,sqlserver等。那么数据能够存储在硬盘中,那么我们为什么还需要数据库。
数据库存储在在计算机存储设备上的,而且数据是按一定格式、一定规律存放的,把它们保存起来近一步的处理,进一步的抽取有用的信息。它和各种开发语言相结合,达到让数据有序的,有规律的,按照人的意愿,呈现出来。
我们能够看到数据库存储在硬盘上的。HDFS是一个分布式文件存储系统,同样也存储在硬盘上。HDFS 通过 dfs.data.dir 字段在配置文件中查询 DFS 的数据在本地文件系统中的存放位置。
3.HDFS与传统数据操作之间对比
1.查询数据:
查看hdfs的根目录下的内容的
hadoop fs -ls /
select * from table 显示表中数据
2.创建分类
在hdfs上创建文件夹example
hadoop fs -mkdir /example
数据中创建表
create table example
(
id int identity(1,1),
content varchar(10) ,
constraint pk_test_id primary key(id)
)
3.插入数据
hadoop fs -put <linux source> <hdfs destination> 把数据从linux上传到hdfs的特定路径中
insert into [dbo].[表名]([字段1],[字段2],...,[字段n]) values ('值1','值2',。。。,'值n');
4.删除
hadoop fs -rm 删除hdfs中文件
DELETE * FROM table_name
通过以上我们在利用hadoop开发方向上或许又有了进一步的理解。下面可以查看:
Java创建hdfs文件实例
hadoop实战:Java对hdfs的编程
来自群组: Hadoop技术组 |