Hive 和 Hbase table 用于 hipotesis
Hive and Hbase table for hipotesis
我有一个 IBM 云 Hive/Hbase,我只是在 Hive 上创建了一个 "table",我还从一个 csv 文件加载了一些数据。
我的 csv 文件包含来自 google Play 商店应用的信息。
我创建数据并将数据上传到 table 的命令如下:
hive> create table if not exists app_desc (name string,
category string, rating int,
reviews int, installs string,
type string, price int,
content string, genres string,
last_update string, current_ver string,
android_ver string)
row format delimited fields terminated by ',';
hive > load data local inpath '/home/uamibm130/googleplaystore.csv' into table app_desc;
好的,它工作正常并且使用 Select 我正确地获取了数据。
现在我想做的是创建一个 HBASE table,我的问题是我不知道如何正确地做。
首先我创建一个 Hbase Db -> 创建 google_db_ , google_data, info_data
现在我尝试使用这个配置单元命令创建一个外部 table,但是我得到的是一个错误,我的 table 没有找到。
这是我用于创建外部配置单元的命令 table。
create external table uamibm130_hbase_google (name string, category string, rating int, reviews int, installs string, type string, price int, content string, genres string, last_update string, current_ver string, android_ver string)
stored by 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,
google_data:category,google_data:rating, info_data:reviews,
info_data:installs, info_data:type, info_data:price, info_data:content,
info_data:genres, info_data:last_update, info_data:current_ver,
info_data:android_ver") TBLPROPERTIES("hbase.table.name" = "google_db_");
我不知道基于 Hive 模式创建 Hbase table 的正确方法,以便正确上传我的 .csv 数据。
有什么想法吗?我是新手。
谢谢!
尝试在 HBase 中使用以下创建 table 语句,
创建Hbasetable:
hbase(main):001:0>create 'google_db_','google_data','info_data'
在 Hbase 上创建外部 Hive table:
hive> create external table uamibm130_hbase_google (name string, category string, rating int, reviews int, installs string, type string, price int, content string, genres string, last_update string, current_ver string, android_ver string)
stored by 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,
google_data:category,google_data:rating, info_data:reviews,
info_data:installs, info_data:type, info_data:price, info_data:content,
info_data:genres, info_data:last_update, info_data:current_ver,
info_data:android_ver") TBLPROPERTIES("hbase.table.name" = "google_db_",
"hbase.mapred.output.outputtable" = "google_db_");
然后从Hive table(app_desc)
插入数据到Hive-Hbase table(uamibm130_hbase_google)
。
将数据插入 Hive-Hbase table:
Hive> insert into table uamibm130_hbase_google select * from app_desc;
我有一个 IBM 云 Hive/Hbase,我只是在 Hive 上创建了一个 "table",我还从一个 csv 文件加载了一些数据。
我的 csv 文件包含来自 google Play 商店应用的信息。
我创建数据并将数据上传到 table 的命令如下:
hive> create table if not exists app_desc (name string,
category string, rating int,
reviews int, installs string,
type string, price int,
content string, genres string,
last_update string, current_ver string,
android_ver string)
row format delimited fields terminated by ',';
hive > load data local inpath '/home/uamibm130/googleplaystore.csv' into table app_desc;
好的,它工作正常并且使用 Select 我正确地获取了数据。
现在我想做的是创建一个 HBASE table,我的问题是我不知道如何正确地做。
首先我创建一个 Hbase Db -> 创建 google_db_ , google_data, info_data
现在我尝试使用这个配置单元命令创建一个外部 table,但是我得到的是一个错误,我的 table 没有找到。
这是我用于创建外部配置单元的命令 table。
create external table uamibm130_hbase_google (name string, category string, rating int, reviews int, installs string, type string, price int, content string, genres string, last_update string, current_ver string, android_ver string)
stored by 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,
google_data:category,google_data:rating, info_data:reviews,
info_data:installs, info_data:type, info_data:price, info_data:content,
info_data:genres, info_data:last_update, info_data:current_ver,
info_data:android_ver") TBLPROPERTIES("hbase.table.name" = "google_db_");
我不知道基于 Hive 模式创建 Hbase table 的正确方法,以便正确上传我的 .csv 数据。
有什么想法吗?我是新手。
谢谢!
尝试在 HBase 中使用以下创建 table 语句,
创建Hbasetable:
hbase(main):001:0>create 'google_db_','google_data','info_data'
在 Hbase 上创建外部 Hive table:
hive> create external table uamibm130_hbase_google (name string, category string, rating int, reviews int, installs string, type string, price int, content string, genres string, last_update string, current_ver string, android_ver string)
stored by 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' WITH SERDEPROPERTIES ("hbase.columns.mapping" = ":key,
google_data:category,google_data:rating, info_data:reviews,
info_data:installs, info_data:type, info_data:price, info_data:content,
info_data:genres, info_data:last_update, info_data:current_ver,
info_data:android_ver") TBLPROPERTIES("hbase.table.name" = "google_db_",
"hbase.mapred.output.outputtable" = "google_db_");
然后从Hive table(app_desc)
插入数据到Hive-Hbase table(uamibm130_hbase_google)
。
将数据插入 Hive-Hbase table:
Hive> insert into table uamibm130_hbase_google select * from app_desc;