2017-08-22 16 views
1

私は、関連する投稿を行っており、インターネット上でこの特定の問題を見つけることができませんでした。スパークデータフレームを使用してハイブ寄木細工のテーブルを直接読み込むことができません

ハイブテーブル(Hiveの外部テーブルが寄木細工のファイルを指しています)を読み込もうとしていますが、スパークデータフレームがデータを読み込めず、スキーマを読み込めるだけです。しかし、同じハイブテーブルのために、私はハイブシェルからクエリできます。ハイブテーブルをデータフレームにロードしようとすると、データが返されません。以下は私のスクリプトとDDLのように見えます。私は 「spark.sql.sources.provider」=「寄木細工」 を削除

ハイブテーブルからデータを読み取ることができませんが、スパーク

val df4 = spark.sql("select * from default.Tablename") 
scala> df4.show() 
+----------------------+------------------------+----------+---+-------------+-------------+---------+ 
|col1   |col2   |col3      |key   |col4| record_status|source_cd| 
+----------------------+------------------------+----------+---+-------------+-------------+---------+ 
+----------------------+------------------------+----------+---+-------------+-------------+---------+ 

Hive DDL 
CREATE EXTERNAL TABLE `Tablename`(
    `col1` string, 
    `col2` string, 
    `col3` decimal(19,0), 
    `key` string, 
    `col6` string, 
    `record_status` string, 
    `source_cd` string) 
ROW FORMAT SERDE 
    'org.apache.hadoop.hive.ql.io.parquet.serde.ParquetHiveSerDe' 
WITH SERDEPROPERTIES (
    'path'='maprfs:abc/bds/dbname.db/Tablename') 
STORED AS INPUTFORMAT 
    'org.apache.hadoop.hive.ql.io.parquet.MapredParquetInputFormat' 
OUTPUTFORMAT 
    'org.apache.hadoop.hive.ql.io.parquet.MapredParquetOutputFormat' 
LOCATION 
    'maprfs:/Datalocation/Tablename' 
TBLPROPERTIES (
    'numFiles'='2', 
    'spark.sql.sources.provider'='parquet', 
    'spark.sql.sources.schema.numParts'='1', 
    'spark.sql.sources.schema.part.0'='{\"type\":\"struct\",\"fields\":[{\"name\":\"col1\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}},{\"name\":\"col2\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}},{\"name\":\"col3\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}},{\"name\":\"key\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}},{\"name\":\"col6\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}},{\"name\":\"record_status\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}},{\"name\":\"source_cd\",\"type\":\"string\",\"nullable\":true,\"metadata\":{}}]}', 
    'totalSize'='68216', 
    'transient_lastDdlTime'='1502904476') 

答えて

1

から寄木細工のファイルを根底たスパーク2.1(MAPR分布)を使用していますし、あなたは成功します

+0

はい、問題を解決し、うまくいきます。ありがとうございました。 –

+0

このプロパティを削除する方法を詳しく教えてください。 – xwk

関連する問題