Консультация № 174111
10.11.2009, 09:59
0.00 руб.
10.11.2009, 11:55
0 9 0
Здравствуйте! Агент муCQL ежедневно создает архивы баз данных с расширением bat, а данные в базах очищаются. С помощью какой программы и как их можно просматривать и строить графики по этим данным на другом ПК. Если можно, то по подробнее!

Обсуждение

Неизвестный
10.11.2009, 10:23
общий
Зачем используется такая схема не понятно, но придется востанавливать базу из архива , а затем уже строить графики.
Неизвестный
10.11.2009, 11:14
общий
Это идут записи данных АСУ ТП и каждый суточный фаил получается объемом от 230 до 110 мегабайт при испытании и работе турбины. И если бы программа не очищала базу, то файлы были бы не приподъемые. Поэтому и приходится их сбрасывать на другой ПК и там хранить и работать нужно с ними?. А нужно доставать и температуры и давления, расходы, мощности, напряжения, токи ну и другие параметры.
Неизвестный
10.11.2009, 11:46
общий
Victor Pyrlik:
Вопрос можно перести в раздел MySQL
Неизвестный
10.11.2009, 11:55
общий
Гуревич Александр Львович:
Спасибо..
Неизвестный
10.11.2009, 12:02
общий
просто нужно мощную СУБД и хорощее оборудование
возможно разделить данные по разным периодам - разным базам вариантов решения много или отфильтровать как-нибудь, тут зависит от конкретной задачи
Неизвестный
10.11.2009, 12:09
общий
Анатолий Кузнецов:
Цитата: 240678
Это идут записи данных АСУ ТП и каждый суточный фаил получается объемом от 230 до 110 мегабайт при испытании и работе турбины. И если бы программа не очищала базу, то файлы были бы не приподъемые. Поэтому и приходится их сбрасывать на другой ПК и там хранить и работать нужно с ними?. А нужно доставать и температуры и давления, расходы, мощности, напряжения, токи ну и другие параметры.

Мне вполне понятна Ваша задача..
Во первых, сам MySQL будет "ворочать" и сотни гигабайт базы.. Во вторых, для АСУ ТП выбор СУБД несколько не оптимален, я так понимаю, это тренды?
Такой объем характерен для данных со второго/первого уровня (контроллеры) с малым временем дискредитации, например, несколько записей в секунду..
Следовательно, для этого есть специально для этого созданные СУБД (например: IndustrialSQL, InfoPlus и т.д.). Во вторых, Firebird для этих целей (сбор данных с объектов АСУТП) подходит лучше.
Вам можно наладить репликацию на другой сервер, например, Oracle или MS SQL. Т.е. там хранить архивы за "цать" лет (у нас это 5 лет с нагрузкой по одной установке ~30 Гб/сутки установок 4 + "мелочь").
Если совсем ничего не хотите менять или... то даже Ваш механизм можно приспособить для дела:
например, эти самые бэкапы заливать в отдельно стоящую базу.. На ней не будет такой нагрузки, и она вполне может сойти за OLAP систему (сейчас у Вас OLTP).
И в той БД хранить сколько Вам надо.
Но, предложенный мной выше вариант использования Oracle или MS SQL более предпочтительней, т.к. позволяет при репликации провести трансформацию данных, т.е. "развернуть" вертикальное представление данных характерное трендам (OLTP системам) в "горизонтальное" (характерное в OLAP).
Подключение же и получение данных в этом случае возможно даже без использования специальных программ-клиентов, достаточно использовать тот же Excel или MS Access...
Неизвестный
10.11.2009, 12:15
общий
Анатолий Кузнецов:
Цитата: 240678
суточный фаил получается объемом от 230 до 110 мегабайт при испытании и работе турбины.

это 230 * 31 * 12 ~ 86 Гб. в год, не так уж и много
Неизвестный
10.11.2009, 16:12
общий
А так как идут испытания разных турбин, нам необходимо хранить все данные, а это с 2000 года не так уж мало. Даже архивируя их все равно получаются большие файлы. И отдавать их приходится в разные организации. это данные первого уровня (с контролеров). И изменить программы мы не имеем права. Тут все завязано с испытанием турбин. А вот на другом ПК мы можем делать , что хотим. Но что то плохо получается. Винт на операторской станции 80 гб, разбит на 2 части. На D база, на C виндос и все остальное, что тоже прилично места занимает. И как эти самые Бэкапы заливать в базу , это и не понятно?
Неизвестный
10.11.2009, 16:41
общий
Анатолий Кузнецов:
Винт на операторской станции 80 гб

Ну а дак что мешает поставить побольше?
на 750 Гб по деньгам стоит сейчас меньше чем на 80Гб... (это так, к слову).
В Вашем случае, самое простое - установите на другой машине MS SQL Developer Edition 2008 / 2000 (без разницы версия), просто подключите эту БД (прилинкованный сервер например) и настройте репликацию.. Таким способом, у Вас будет полноценная БД за все года.

Заливать бэкапы.. Это называется "но пойдем сложным путем".. :)
mysql < mysql_backup_file.dat это восстановление бэкапа (учитываем, что все данные будут заменены!) что бы не было коллизий, в экспорте надо указать ключ --add-drop-table
т.е. что-то как-то так:
mysqldump --all --add-drop-table --all-databases --force -c --password=pass --user=name > mysql_backup_file.dat

вот тут подробно URL >> mysqldump — A Database Backup Program
или тут на русском URL >>Утилита mysqldump и шпаргалка по параметрам

Есть утилиты, ищите в интернете..
Скажу по секрету.. если у Вас плоские таблицы, т.е. тип MyISAM (это когда в каталоге БД много файлов лежит) что скорей всего и есть, то можно этот каталог просто копировать...
Для экономии места - можно сжимать этот каталог ZIP архиватором (в Вашем случае, алгоритм сжатия используемый ZIP (LZ) наиболее эффективный). Потом, просто распаковывать этот архив в каталог с БД на другом компьютере, и причем, совершенно не обязательно в тот же самый каталог! Важно только, что бы в каталоге баз данных (а не в самом каталоге конкретной БД) сервер сам найдет эту базы и она будет доступна. Конечно, имена должны быть у каталогов разные (как правило, имя каталога совпадает с именем базы).
Таким образом, как я понял, у Вас нет специалиста по работе с БД... следовательно, Для Вас самый простой случай - это обычное копирование каталога базы данных. И пусть лежат у вас зазипованные архивы.. Какой надо - просто распаковали в каталог баз данных и все..

PS: на другой машине установить MySQL - делается это несколькими тычками мыши по кнопкам "согласен".. :)
скачать СУБД MySQL можно тут URL >>MySQL 5.1
Форма ответа