2013-09-27 6 views
1

У меня есть данные в указанной ниже формате:Как импортировать данные в Postgres

<a>  <b>  <c>>  NULL     NULL      
<d>  <e>  <f<>  '1999-10-10',   '2000-10-10' 
<g<>  <h>  <i>>  '300-12-12 BC',   '300-01-01 BC' 
<m>  <l>  <k<,>j> NULL     NULL 
<g>  <k>  "o,l"  NULL     NULL 

Здесь A, B, C, D, E, F, G, H, I, J, K, L, m может содержать любой символ, например они могут содержать такие символы, как ', /, $, #, *, &, ^,%,;,:,}, {,], [, space,>, < и т.д.

Я попытался импортировать эти данные в postgres с помощью запятых, чтобы отделить четыре столбца (создав файл .csv). Однако, такой подход неверен, как

 third column contains the value (<k<,>j>) and "o,'" with a comma. 

Узоры, которые существует в моих данных является первой и второй столбец содержит данные в пределах угловых скобках (<>). Третий столбец содержит данные либо внутри кавычек, либо в угловых скобках. Четвертый и пятый столбцы содержат либо NULL, либо даты.

Есть ли способ, с помощью которого я могу эффективно импортировать эти данные в postgres, поскольку у меня есть около 3 байт данных Tera. Я полный новичок в postgres, поэтому, пожалуйста, помогите

ответ

4

Ваши данные - настоящий беспорядок. Невозможно обработать команду COPY для утилиты импорта.

Вам нужно будет написать код на языке приложения/сценария, если вы хотите проанализировать ввод и вставить с помощью SQL.


Если данные огромна, используя язык приложение позволит вам зафиксировать ваши данные в «куски», например, каждые 10000 строк, что позволяет избежать дует максимальный фиксации размера журнала, а значит, вы можете возобновить процесс на последней рабочей точке, если ваша программа пробивается частично (и она сохраняет свою позицию записи, достигнутую во входном файле).

Что касается рекомендаций по языку, я бы посмотрел на окружающих, чтобы узнать, с кем у них есть опыт. Я не хочу рекомендовать его, потому что это личный выбор, но я бы сказал, что с ним все в порядке.

+1

Большое спасибо за ответ. Так как у меня есть 3 Tera Byte данных, вы можете указать пример скриптового языка или что-то в этом роде. Я полный новичок в этом. Или вы можете предложить некоторые указатели, которые я, как новичок, могут использовать для импорта данных. –

+0

См. Отредактированный ответ – Bohemian

+0

Не могли бы вы указать мне некоторые хорошие языки приложений в python. –

Смежные вопросы