Как убрать двойные кавычки при загрузке CSV во внешнюю таблицу в Impala? - PullRequest
0 голосов
/ 02 декабря 2018

Это данные (вы также можете скачать их с здесь ):

"Creation Date","Status","First 3 Chars of Postal Code","Intersection Street 1","Intersection Street 2","Ward","Service Request Type","Division","Section"
"2010-01-01 00:38:26.0000000","Closed","Intersection","High Park Blvd","Parkside Dr","Parkdale-High Park (13)","Road - Sanding / Salting Required","Transportation Services","Road Operations"
"2010-01-01 01:19:18.0000000","Closed","M4T","","","Toronto Centre-Rosedale (27)","Water Service Line-Turn On","Toronto Water","District Ops"

Это мой запрос на создание таблицы:

CREATE TABLE sr.sr2013 ( 
creation_date STRING,   
status STRING,   
first_3_chars_of_postal_code STRING,   
intersection_street_1 STRING,   
intersection_street_2 STRING,   
ward STRING,   
service_request_type STRING,   
division STRING,   
section STRING ) 
ROW FORMAT DELIMITED FIELDS TERMINATED BY ',' 
WITH SERDEPROPERTIES (
'colelction.delim'='\u0002', 
'mapkey.delim'='\u0003', 
'serialization.format'=',', 
'field.delim'=',', 
'skip.header.line.count'='1',
'quoteChar'= "\"") ;

Этозапрос на загрузку данных:

load data inpath '/user/rxie/SR2013.csv' into table sr2013;

После загрузки данных, при проверке таблицы найдены все оригинальные цитаты:

enter image description here

Итак, здесь есть как минимум две проблемы: 1. заголовок не исключается опцией 'skip.header.line.count'='1', при создании таблицы;2. двойные кавычки не удаляются, как указано опцией 'quoteChar'= "\"" при загрузке данных в таблицу

Может кто-нибудь поделиться с большим количеством света?мне это кажется ошибкой.

ОБНОВЛЕНИЕ 1:

В редакторе Hue / Hive:

creation_date STRING,   
status STRING,   
first_3_chars_of_postal_code STRING,   
intersection_street_1 STRING,   
intersection_street_2 STRING,   
ward STRING,   
service_request_type STRING,   
division STRING,   
section STRING )                               
ROW FORMAT SERDE 'org.apache.hadoop.hive.serde2.OpenCSVSerde' 
WITH SERDEPROPERTIES (                             
   'colelction.delim'='\u0002',                     
   'field.delim'=',',                               
   'mapkey.delim'='\u0003',                         
   'serialization.format'=',',
   'skip.header.line.count'='1',   
   'quoteChar'= "\"") 


   LOAD DATA LOCAL INPATH '/home/rxie/data/csv/SR2015.csv' INTO TABLE sr2015;  

Ошибка:

Ошибка приоператор компиляции: FAILED: строка SemanticException 1:26 Неверный путь '' /home/rxie/data/csv/SR2015.csv '': нет файлов, соответствующих файлу пути: /home/rxie/data/csv/SR2015.csv

1 Ответ

0 голосов
/ 03 декабря 2018

Ниже показано, что работает для загрузки CSV с исключенными кавычками, как показано ниже:

В Hive Editor (я предполагаю, что beeline тоже хорош, хотя я его не проверял):

  1. Создать таблицу Hive

    CREATE EXTERNAL TABLE sr2015 (
    creation_date STRING,
    статус STRING,
    first_3_chars_of_postal_code STRING,
    пересечение_street_1 STRING,
    пересечение STRING, *1013* пересечениеSTRING,
    ward STRING,
    service_request_type STRING,
    STRING с разделением,
    STRING сечения)
    ФОРМАТ ROW SERDE 'org.apache.hadoop.hive.serde2.OpenCSVSerde' С SERDEPROPERTIES (
    'colelction.delim' = '\ u0002',
    'field.delim' = ',',
    'mapkey.delim' = '\ u0003',
    'serialization.format' = ',',' skip.header.line.count '=' 1 ',
    ' quoteChar '= "\" ")

  2. Загрузка данных в таблицу Hive:

    ЗАГРУЗКА ВХОДА ДАННЫХ "hdfs: ///user/rxie/SR2015.csv" INTO TABLE sr2015;

Нерешенный вопрос (будет обсуждаться здесь ):таблица недоступна в Impala

...