Как превратить плоский файл данных в запрашиваемый источник данных - PullRequest
10 голосов
/ 10 августа 2010

Я генерирую файлы, давайте называть их .dwrf файлами, которые содержат значительное количество данных.В настоящее время мы экспортируем их в .CSV, и полученные файлы имеют большой размер (2 ГБ +).Я хотел бы отключить процесс экспорта и сделать запрос к содержимому файла .dwrf напрямую из Excel или других приложений.

Что я хотел бы сделать, так это написать утилиту / службу - давайте назовем ее dwrfMiner - чтобы извлечь данные из файла и передать их в качестве источника данных и каким-то образом связать dwrfMiner с файлами .dwrf, чтобы Excelраспознает его как внешний источник данных.

Есть идеи?

Ответы [ 5 ]

3 голосов
/ 11 августа 2010

Хотя написание драйвера ODBC для этого, вероятно, излишне, если формат файлов, с которыми вы работаете, известен заранее и его нетрудно перевести (кажется, что вы не создаете CSV), тогда используйте ODBC DSN звучит как ваша лучшая ставка.

Существует хороший выбор драйверов ODBC, уже встроенных в Windows (.txt, .csv, .mdb, .xl *, .dbf, Paradox .db и т. Д.), И вы можете получить другие драйверы из Интернета для много распространенных форматов.

Если размер существующего формата, в который вы экспортируете, слишком обременителен (CSV), то логичным моментом для начала является преобразование ваших данных во что-то более сознательное с поддержкой ODBC.

В противном случае, ваш последний вариант - опция overkill (Запись драйвера ODBC).

1 голос
/ 10 августа 2010

Excel может запрашивать внешние источники данных, но имейте в виду, что Excel (все версии) имеет жесткие ограничения на количество строк, которые они могут отображать, для каждой рабочей книги.Я думаю, в Excel 2003 предел составляет ~ 65k.В других версиях он выше.

См. Мой вопрос: инструмент для создания отчетов / программа просмотра для больших наборов данных (а у меня было намного меньше, чем> 2 ГБ).

0 голосов
/ 10 августа 2010

использовать драйвер odbc с многопоточностью

0 голосов
/ 10 августа 2010

Я бы взял gcc и написал для себя полный драйвер ODBC.Тогда вы можете расслабиться и использовать SQL.

Знаете, если вам скучно;)

0 голосов
/ 10 августа 2010

Я использовал PHP FlatFile DB для запроса плоских файлов в прошлом

...