Hive テーブル
この記事では、外部テーブルを使用してクラウド ストレージから Databricks に Hive テーブル をインポートする方法について説明します。
ステップ 1: CREATE TABLE
ステートメントを表示する
Hive コマンドラインで SHOW CREATE TABLE <tablename>
コマンドを発行して、テーブルを作成したステートメントを確認します。
hive> SHOW CREATE TABLE wikicc;
OK
CREATE TABLE `wikicc`(
`country` string,
`count` int)
ROW FORMAT SERDE
'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe'
STORED AS INPUTFORMAT
'org.apache.hadoop.mapred.TextInputFormat'
OUTPUTFORMAT
'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat'
LOCATION
'<path-to-table>'
TBLPROPERTIES (
'totalSize'='2335',
'numRows'='240',
'rawDataSize'='2095',
'COLUMN_STATS_ACCURATE'='true',
'numFiles'='1',
'transient_lastDdlTime'='1418173653')
ステップ 2: CREATE EXTERNAL TABLE
ステートメントを発行する
戻されたステートメントが CREATE TABLE
コマンドを使用している場合は、そのステートメントをコピーし、 CREATE TABLE
を CREATE EXTERNAL TABLE
に置き換えます。
EXTERNAL
これにより、テーブルを削除しても Spark SQL によってデータが削除されなくなります。TBLPROPERTIES
フィールドは省略できます。
DROP TABLE wikicc
CREATE EXTERNAL TABLE `wikicc`(
`country` string,
`count` int)
ROW FORMAT SERDE
'org.apache.hadoop.hive.serde2.lazy.LazySimpleSerDe'
STORED AS INPUTFORMAT
'org.apache.hadoop.mapred.TextInputFormat'
OUTPUTFORMAT
'org.apache.hadoop.hive.ql.io.HiveIgnoreKeyTextOutputFormat'
LOCATION
'<path-to-table>'