大資料概念入門:
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], ...)