Partager via


Table Hive (héritée)

Important

Cette documentation a été mise hors service et peut ne pas être mise à jour.

Cet article explique comment importer une table Hive du stockage cloud dans Azure Databricks à l’aide d’une table externe.

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

Étape 1 : Afficher l’instruction CREATE TABLE

Émettez une commande SHOW CREATE TABLE <tablename> sur la ligne de commande Hive pour voir l’instruction qui a créé la table.

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.
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>'

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

SELECT * FROM wikicc