您好,登錄后才能下訂單哦!
本篇內容介紹了“Impala查詢HBase表字段順序不正確異常怎么辦”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
按照官方文檔在Hive中建表關聯HBase,然后在Hue中用Impala查詢,查詢結果中字段的順序與在Hive中的建表順序不一致,Hue中使用Impala查詢出來的字段順序是按照字母排序的。
在Hive中建表關聯HBase
CREATE EXTERNAL TABLE `hbasestringids`( |
| `id` string COMMENT 'from deserializer', |
| `bool_col` boolean COMMENT 'from deserializer', |
| `tinyint_col` tinyint COMMENT 'from deserializer', |
| `smallint_col` smallint COMMENT 'from deserializer', |
| `int_col` int COMMENT 'from deserializer', |
| `bigint_col` bigint COMMENT 'from deserializer', |
| `float_col` float COMMENT 'from deserializer', |
| `double_col` double COMMENT 'from deserializer', |
| `date_string_col` string COMMENT 'from deserializer', |
| `string_col` string COMMENT 'from deserializer', |
| `timestamp_col` timestamp COMMENT 'from deserializer') |
| ROW FORMAT SERDE |
| 'org.apache.hadoop.hive.hbase.HBaseSerDe' |
| STORED BY |
| 'org.apache.hadoop.hive.hbase.HBaseStorageHandler' |
| WITH SERDEPROPERTIES ( |
| 'hbase.columns.mapping'=':key,boolsCF:bool_col,intsCF:tinyint_col,intsCF:smallint_col,intsCF:int_col,intsCF:bigint_col,floatsCF:float_col,floatsCF:double_col,stringsCF:date_string_col,stringsCF:string_col,stringsCF:timestamp_col', |
| 'serialization.format'='1') |
| TBLPROPERTIES ( |
| 'hbase.table.name'='hbasealltypessmall', |
| 'transient_lastDdlTime'='1585032011')
Hive中的建表順序如下
在Impala-shell中查詢出的表字段順序如下,與Hive建表順序不一致
在Hue中用詢出來的表字段順序如下,與在Impala-shell中的查詢結果一直,但是與Hive中的建表順序不一致。
經確認,此問題是Impala中的一個bug,目前正在修復中。目前有一個Jira在跟蹤這個問題,鏈接如下,如果要保持字段順序可以在select后按照自己想要的順序自己編寫。
“Impala查詢HBase表字段順序不正確異常怎么辦”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。