2016-09-10 2 views
0

У меня есть CSV данные в следующем формате:Невозможно загрузить данные с помощью Apache Pig

id,name,price,information 
12,Pants,50.00,{Clothes & Shoes: 5} 

А вот мой свинья сценарий:

grunt> sample = LOAD 'data.csv' USING PigStorage (',') AS (id:int, name:chararray, price:double, information:chararray); 

Проблема заключается в том, когда я загружаю информацию chararray, потому что я не могу получить доступ к самой категории или количеству. Я пытался сделать что-то вроде:

information:tuple(category:chararray, quantity:int)

Но это не сработало ..

Что я должен делать? Каков наилучший способ загрузки информации, так что я могу иметь доступ к обеим категориям и количеству ..

Благодаря

ответ

0

Что у вас есть сумка и не Кортеж. See here для сумки, кортеж.

() Кортеж заключен в круглые скобки().

{} Внутренний мешок заключен в фигурные скобки {}.

Вы можете загрузить его, как это

sample = LOAD 'data.csv' USING PigStorage (',') AS (id:int, name:chararray, price:double, information:bag{}); 
Смежные вопросы