Aller au contenu principal

Table Hive (héritée)

important

Cette documentation a été retirée et pourrait ne pas être mise à jour.

Cet article explique comment importer une table Hive depuis le stockage cloud vers Databricks à l'aide d'une table externe.

Databricks ne recommande pas d'utiliser les tables Hive pour stocker ou organiser des données. Cette documentation est fournie pour vous aider à configurer une connexion à une table Hive existante afin de migrer ou d’ingérer des données à partir d’un système externe.

Étape 1 : Afficher l'instruction CREATE TABLE

Exécutez une commande SHOW CREATE TABLE <tablename> sur votre ligne de commande Hive pour voir l'instruction qui a créé la table.

SQL
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')

Étape 2 : Émettre une instruction CREATE EXTERNAL TABLE

Si l'instruction renvoyée utilise une commande CREATE TABLE, copiez l'instruction et remplacez CREATE TABLE par CREATE EXTERNAL TABLE.

  • EXTERNAL garantit que Spark SQL ne supprime pas vos données si vous supprimez la table.
  • Vous pouvez omettre le champ TBLPROPERTIES.
SQL
DROP TABLE wikicc
SQL
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>'

Étape 3 : Émettre des commandes SQL sur vos données

SQL
SELECT * FROM wikicc