大数据概念入门:
Hadoop分布式文件系统,HDFS是一个高度容错性的系统,能提供高吞吐量的数据访问,非常适合大规模数据集上的应用。 HDFS不适合用在:要求低时间延迟数据访问的应用,存储大量的小文件,多用户写入,任意修改文件。
1.客户把一个文件存入HDFS,其实HDFS会把这个文件切块后,分散存储在N台linux机器系统中(data node)2.记录用户的每一个文件的切块信息,及每一块的具体存储机器(name node)总结:一个HDFS系统,可由一台运行了namenode的服务器,和N台运行了datanode的服务器组成!
Hive数据库&表常见操作
Hive数据库操作
1.查看所有数据库 show databases;
2.使用数据库 use ods_shiva_ground;
3.显示包含ods_前缀的数据库名称 show databases like 'test_*';
4.创建数据库 create database db_name;
5.删除数据库 drop database db_name;
Hive表操作
1.显示数据库中的表 show tables;
2. 显示包含driver的数据表名称 show tables like ‘driver';
3.显示表的详细信息 desc [formatted] tt_driver_task;
4.显示表的分区信息 show partitions tt_driver_task;
5.显示表的show create table tt_driver_task;
Hive创建表操作
实例
CREATE TABLE dm_test.test_deduct_item
(
id
bigint COMMENT'主键ID 自增长',
code
string COMMENT '数据项编码',
name
string COMMENT '数据项名称',
create_by
string COMMENT '创建人工号',
create_time
string COMMENT '创建时间',
update_by
string COMMENT '更新人工号' ,
update_time
string COMMENT '更新时间'
)
COMMENT'项数据表'
PARTITIONED BY ( in_day
string COMMENT '按天分区 yyyymmdd')
ROW FORMAT SERDE
'org.apache.hadoop.hive.ql.io.parquet.serde.ParquetHiveSerDe'
STORED AS INPUTFORMAT
'org.apache.hadoop.hive.ql.io.parquet.MapredParquetInputFormat'
OUTPUTFORMAT
'org.apache.hadoop.hive.ql.io.parquet.MapredParquetOutputFormat';
Hive修改表操作
增加/删除分区
ALTER TABLE tb_name ADD [IF NOT EXISTS] PARTITION (partition_col1=value1) [ LOCATION 'location_path' ]
ALTER TABLE tb_name DROP PARTITION (partition_col1=value1, partition_col2=value2, ...)
重命名表
ALTER TABLE tb_name RENAME TO new_tb_name
修改别的二手手机靓号拍卖名字、类型、位置、注释
ALTER TABLE tb_name CHANGE [COLUMN] col_old_name col_new_name column_type [COMMENT col_comment] [FIRST|AFTER column_name]
增加/更新列
ALTER TABLE tb_name ADD|REPLACE COLUMNS (col_name data_type [COMMENT col_comment], ...)