Новости
Документация
Download
Webboard
Поиск
FAQ/ЧаВо
Обратная связь




MySQL.RU - Webboard



Вернуться
Организация хранения технологического архива (Max) 29/10/2004 - 06:26:55
      Re: Организация хранения технологического архива (cooler13) 29/10/2004 - 18:56:25
      Re: Организация хранения технологического архива (Dinky) 29/10/2004 - 19:04:31
      Re: Организация хранения технологического архива (cooler13) 29/10/2004 - 19:06:42
      Re: Организация хранения технологического архива (Max) 30/10/2004 - 08:15:17
      Re: Организация хранения технологического архива (cooler13) 31/10/2004 - 04:27:01
      Re: Организация хранения технологического архива (Max) 01/11/2004 - 11:48:01

> Original message text:
> From: Max - 29/10/2004 - 06:26:55
> Subject:Организация хранения технологического архива
> -----------------
> Помогите с организацией хранения данных технологического архива в MySQL.
> Задача следующая:
> - xранить круглосуточный архив приблизительно 5000 тысяч параметров;
> - скорость изменения параметра приблизительно один раз в 5 секунд;
> - ведение круглосуточного хранения данных.
>
> Мною было реализовано два варианта хранения данных в архиве.
>
> Первый вариант был заключался в том что данные хранились в единственной таблице в следующей структуре:
> TableName DATA
> |DT (IDX) | ID (IDX) | Value | Trust|
> 12-03-2004 19:15:01 | 15 | 543.24| 0 |
> 12-03-2004 19:15:01 | 3053 | 1.35| 0 |
> Проблема данной структуры в том, что при выборке (select * from data where ID=15 and DT<='12-03-2004 19:15:01' desc limit 0,1)Union(select * from data where ID=3053 and DT<='12-03-2004 19:15:01' desc limit 0,)… уходит очень много времени, а сервер сильно загружается таким запросом.
>
> Второй вариант хранение каждой переменной в отдельной таблице с индексированным полем дата. Этот вариант всем хорош кроме того что перегружается дисковая система поскольку обращение идет к 4000 таблиц с следующей структурой:
> TableName A15
> |DT (IDX) | Value | Trust|
> 12-03-2004 19:15:01 | 543.24| 0 |
>
> TableName A3053
> |DT (IDX) | Value | Trust|
> 12-03-2004 19:15:01 | 1.35| 0 |
>
> Запрос к данным выглядит следующим образом:
> (SELECT *,0 FROM A4592 WHERE D<=1071317389750 ORDER BY D DESC LIMIT 1)UNION(SELECT *,1 FROM A4593 WHERE D<=1071317389750 ORDER BY D DESC LIMIT 1)UNION(SELECT *,2 FROM A4594 WHERE D<=1071317389750 ORDER BY D DESC LIMIT 1)UNION(SELECT *,3 FROM A4596 WHERE D<=1071317389750 ORDER BY D DESC LIMIT 1)UNION(SELECT *,4 FROM A4595 WHERE D<=1071317389750 ORDER BY D DESC LIMIT 1)UNION(SELECT *,5 FROM A4588 WHERE D<=1071317389750 ORDER BY D DESC LIMIT 1)UNION(SELECT *,6 FROM A4589 WHERE D<=1071317389750 ORDER BY D DESC LIMIT 1)UNION(SELECT *,7 FROM A4590 WHERE D<=1071317389750 ORDER BY D DESC LIMIT 1)UNION(SELECT *,8 FROM A4591 WHERE D<=1071317389750 ORDER BY D DESC LIMIT 1)UNION(SELECT *,9 FROM A4583 WHERE D<=1071317389750 ORDER BY D DESC LIMIT 1)UNION(SELECT *,10 FROM A4584 WHERE D<=1071317389750 ORDER BY D DESC LIMIT 1)UNION(SELECT *,11 FROM A4585 WHERE D<=1071317389750 ORDER BY D DESC LIMIT 1)UNION(SELECT *,12 FROM A4586 WHERE D<=1071317389750 ORDER BY D DESC LIMIT 1)
> В данной структуре архива MySQL загружается максимум на 10 процентов, что дало возможность использования данной структуры архива.
>
> Каким образом можно организовать хранение данных, чтобы минимально использовать дисковую подсистему SQL сервера с максимальной скоростью выборок различного набора переменных за определенный срез времени?
>
>
>


From: Max - 01/11/2004 - 11:48:01
Subject:Организация хранения технологического архива
-----------------
Подобный график я не строил (кол-во каналов – время запроса).

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



[Это сообщение - спам!]

Последние сообщения из форума

Уважаемые посетители форума MySQL.RU!
Убедительная просьба, прежде чем задавать свой вопрос в этом форуме, обратите внимание на разделы:
- ответы на наиболее часто задаваемые вопросы - FAQ
- раздел документация
- раздел поиск по сообщениям форума и документации
Также, старайтесь наиболее подробно указывать свою ситуацию (версию операционной системы, версию MySQL, версию программного обеспечения, по которому возникает вопрос, текст возникающих ошибок, и др.)
Помните, чем конкретнее Вы опишете ситуацию, тем больше шансов получить реальную помощь.
 Имя:
 E-mail:
 Тема:
 Текст:
Код подтверждения отправки: Code
18198



РЕКЛАМА НА САЙТЕ
  Создание сайтов | |