Запустить SQL-запрос для двоичного файла? - PullRequest
3 голосов
/ 16 сентября 2009

В моей компании есть устаревшая программа микромоделирования, которая моделирует популяцию и изменяет ее в течение нескольких лет.

Для каждого года программа создает двоичный файл с записью для каждого человека, которая содержит их характеристики (например, возраст, семейное положение, доход ... около 20 полей).

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

Изменение программы для сохранения записей в базе данных вместо двоичных файлов не может быть и речи (я спрашивал ... несколько раз). Я написал несколько программ, которые импортируют двоичные файлы в базу данных, а затем выполняют запросы к таблицам, которые я создал. Проблема в том, что импорт данных и выполнение запроса всегда занимает больше времени, чем запуск служебной программы, написанной на c ++, которая просто читает записи одну за другой и накапливает нужные данные. Часто двоичные файлы содержат более 30 миллионов записей, и один шаг импорта занимает вечность.

Так вот мой вопрос. Есть ли что-нибудь, что позволило бы мне указать структуру моего двоичного файла и затем выполнить SQL-запросы к файлу? Я думаю, что вы можете использовать ODBC для выполнения запросов к простым текстовым файлам, но я никогда не видел ничего подобного для двоичных файлов.

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

Ответы [ 3 ]

2 голосов
/ 16 сентября 2009

OpenAccess - это инструментарий, который можно использовать для создания драйверов ODBC или JDBC для произвольных систем.Отказ от ответственности: я не использовал это, и другое подразделение моей компании продает это.

1 голос
/ 16 сентября 2009

Возможно использование SSIS: Загрузка двоичных файлов в SQL Server с использованием SSIS

Этот интерес также может представлять интерес: Чтение и запись файлов в SQL Server с использованием T-SQL

0 голосов
/ 16 сентября 2009

У меня нет большого опыта работы с LINQ, но не могли бы вы использовать InteropServices для синтаксического анализа двоичных файлов в объектах C # и последующего запроса чего-либо с помощью LINQ SQL?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...