2016-04-18 1 views
0

Je suis nouveau sur hbase et j'ai un fichier plat (fichier non délimité) que je voudrais charger dans une seule table hbase.Comment charger un fichier plat (fichier non délimité) dans HBase?

Voici un aperçu d'une ligne dans mon dossier:

0107E07201512310015071C11100747012015123100

Je sais fo par exemple que la position 1 à 7, il est un identifiant et de la position 7 à 15, il est une date

Le problème est de savoir comment créer un schéma correspondant à mon fichier ou s'il existe un moyen de le convertir en un fichier délimité ou de lire un tel fichier en utilisant jaql parce que je travaille avec Infosphere BigInsights.

Toute aide serait grandement apprécié.

Merci d'avance.

Répondre

0

Créer une table Ruche en utilisant RegExSerDe

CREATE EXTERNAL TABLE testtable ((col1 STRING, col2 STRING, col3 STRING) 
ROW FORMAT SERDE ‘org.apache.hadoop.hive.contrib.serde2.RegexSerDe’ 
WITH SERDEPROPERTIES (“input.regex” = “(.{5})(.{6})(.{3}).*”) 
LOCATION ‘<hdfs-file-location>’; 

Vous pouvez créer la table ruche pointant vers HBase Voici les instructions http://hortonworks.com/blog/hbase-via-hive-part-1/

Vous pouvez utiliser tableau insert Écraser pour charger les données de la table ruche à HBase-table https://cwiki.apache.org/confluence/display/Hive/GettingStarted#GettingStarted-SELECTSandFILTERS

+0

Merci pour votre réponse. Il a résolu mon problème – user3531429

0

Vous pouvez écrire un SerDe pour désérialiser dans Hive et utiliser Hive pour exporter vers HBase.