Правильный формат для обмена большими наборами данных с внешним миром? - PullRequest
0 голосов
/ 09 декабря 2011

На моей работе мы часто отправляем и получаем большие наборы данных из различных источников. Мне задают общий вопрос: «В каком формате вы хотите данные?»

Я обычно запрашиваю данные в формате TSV, CSV или XML. Я могу легко импортировать все это в нашу среду на основе MS SQL.

Вот мой вопрос, если мои основные соображения: 1) простота импорта 2) целостность данных и 3) размер (на диске), есть ли более идеальные форматы?

Ответы [ 2 ]

0 голосов
/ 09 декабря 2011

табуляция или запятая обычно работает нормально. Легко импортировать / экспортировать практически в любую систему. Акцент на обычно , однако: данные со встроенными переносами строк или разделителями столбцов могут быть проблематичными. Данные, разделенные табуляцией / запятыми, также легко манипулировать «как есть» с другим программным обеспечением - сценариями Perl, JavaScript, Excel и т. Д.

XML также довольно универсален. Из-за налога на угловые скобки он страдает как от вздутия, так и от недостатка читаемости людьми: отношение сигнал / шум довольно низкое. Это также требует программного обеспечения с поддержкой XML для обработки или манипуляции. С другой стороны, XML обладает возможностью явной идентификации типов данных. При передаче данных между системами значения даты / времени могут быть проблематичными. XML [предположительно, будучи зависимым от добровольного соответствия производителей документов] стандартизирует представление значений даты / времени (ISO 8601, большое спасибо).

Однако вы забыли другой вариант: используйте JSON, YAML или другие легкие языки разметки.

0 голосов
/ 09 декабря 2011

Я работал с CSV больше года, и я ненавижу это, только один неправильный символ, и импорт не удается.XML слишком тяжелый.TSV довольно хорош, но если вы можете выбрать текстовый файл с фиксированной шириной, его легко читать и импортировать в таблицу.

...