La ruche a ÉCHOUÉ: ParseException ligne 2:0 ne peut pas reconnaître d'entrée de proximité "macaddress" 'CHAR' '(' dans la colonne de spécification
J'ai essayé de courir hive -v -f sqlfile.sql
Voici le contenu du fichier
CREATE TABLE UpStreamParam (
'macaddress' CHAR(50),
'datats' BIGINT,
'cmtstimestamp' BIGINT,
'modulation' INT,
'chnlidx' INT,
'severity' BIGINT,
'rxpower' FLOAT,
'sigqnoise' FLOAT,
'noisedeviation' FLOAT,
'prefecber' FLOAT,
'postfecber' FLOAT,
'txpower' FLOAT,
'txpowerdrop' FLOAT,
'nmter' FLOAT,
'premtter' FLOAT,
'postmtter' FLOAT,
'unerroreds' BIGINT,
'corrected' BIGINT,
'uncorrectables' BIGINT)
STORED AS ORC TBLPROPERTIES ("orc.compress"="SNAPPY","orc.bloom.filters.columns"="macaddress")
PARTITIONED BY ('cmtsid' CHAR(50),' date' INT)
LOCATION '/usr/hive/warehouse/UpStreamParam' ;
Et j'obtiens l'erreur suivante:
A ÉCHOUÉ: ParseException ligne 2:0 ne peut pas reconnaître d'entrée de proximité "macaddress" 'CHAR' '(' dans la colonne de spécification
OriginalL'auteur user3502786 | 2015-08-24
Vous devez vous connecter pour publier un commentaire.
Tout d'abord, le nom de la colonne doit être entouré par des
`
(backticks), pas'
(single quote).Par conséquent, vous devez remplacer
'macaddress'
à`macaddress`
, ainsi que tous les autres noms de colonne.Deuxième, de l'ordre de
STORED AS
etTBLPROPERTIES
etPARTITIONED BY
etLOCATION
est faux.Le bon ordre est
PARTITIONED BY
,STORED AS
,LOCATION
,TBLPROPERTIES
.Voir la ruche langue du manuel pour plus de détails.
https://cwiki.apache.org/confluence/display/Hive/LanguageManual+DDL#LanguageManualDDL-CreateTable
De sorte que le code correct est
hive -e "my query"
vous pouvez rechercher sur le web pour un mot clé comme "la ruche client" ou "la ruche webui' cwiki.apache.org/confluence/display/Hive/HiveClient
sans l'ajout de guillemets ( " ), il va travailler et char(50) n'est pas au travail au lieu d'eux, nous pouvons utiliser des chaînes de caractères.
OriginalL'auteur ymonad
Le problème pourrait être en raison de la Ruche, où les
CHAR
type de données est pris en charge à partir de la Ruche version 0.13.Si vous utilisez des versions antérieures, alors s'il vous plaît essayez d'utiliser le
string/varchar
type de données.Veuillez vous référer,
https://cwiki.apache.org/confluence/display/Hive/LanguageManual+Types#LanguageManualTypes-Char
OriginalL'auteur sureshsiva