powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Подбор железа под MySQL Сервер
34 сообщений из 34, показаны все 2 страниц
Подбор железа под MySQL Сервер
    #39121728
unutcon Mephi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Добрый день, уважаемые знатоки.

Необходим дельный совет по поводу подбора конфигурации железа сервера для MySQL( тип таблиц InnoDB).
К сожалению, дельной информации по этому поводу найти не удалось, поэтому вынужден обратиться сюда( за любые ссылки и пинки в какую-либо дельную сторону огромное спасибо)

Сервер будет выделенной машиной, к которой будут иметь доступ сотрудники отдела по локальной сети.
Предварительный объём хранимых данных 2-3ГБ.
Собственно , следуя тем данным которые я смог найти, а именно: оперативная память, процессор, жесткие диски; являются ключевыми в данном вопросе. ( в некоторых книжках написано что для комфортной работы необходимо около 30% ОП от объема данных. Также планируется использовать аппаратный RAID10.

Не могли бы вы дать советы по поводу данных комплектующих, чтобы этот вопрос можно было решить более рационально.

За любые ответы,советы,указания огромное спасибо и низкий поклон.
...
Рейтинг: 0 / 0
Подбор железа под MySQL Сервер
    #39121751
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
unutcon Mephi, в отрыве от реальных задач это не решают.
Ну возьмите типовую современную рабочую станцию. Поставьте памяти 16 гб и SSD поприличней . И можно, считать самый общий сервер БД у вас есть.
Может и сервер и не справится, но, во всяком случае, хотя бы куда-нибудь в офис приткнете компьютер.
...
Рейтинг: 0 / 0
Подбор железа под MySQL Сервер
    #39121764
unutcon Mephi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
netwind, я прекрасно понимаю о чём вы говорите.
К сожалению это военно-промышленное предприятие, апгрейт сервера ,после тестов работоспособности и быстродействия стандартной машины, будет весьма проблематичен в связи с внутренней политикой предприятия( постоянные служебные записки, ожидания разрешений на изменение чего-либо и т.д.)
16 гб ОП, 7 камень, 4гб видеокарта и ЖД на 1 ТБ это стандартная комплектация обычного рабочего ПК , которая сейчас предоставляется даже студентам для выполнения НИР.
Поэтому и вызывает сложность подбор конфигурации , т.к. цель начального этапа это не установка стандартной машины ,а попытка, обладая весьма скудными начальными условиями, подобрать какой-то типовой вариант для конкретной задачи, ориентируясь на высокий объём хранимых данных.
...
Рейтинг: 0 / 0
Подбор железа под MySQL Сервер
    #39121765
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
unutcon MephiПредварительный объём хранимых данных 2-3ГБ.Оперативка сейчас дешевая. Ставьте столько, чтобы в innodb_buffer_pool_size влезали все таблицы и индексы с запасом на рост на пару-тройку лет.
На все остальное - очень грубо говоря, еще примерно столько же. Итого 16 ГБ для начала пойдет.
Но это плюс/минус порядок. Точнее сказать нельзя, не зная характера нагрузки и данных.
unutcon MephiТакже планируется использовать аппаратный RAID10.Для копеечных данных, которые можно практически полностью закэшировать в оперативке??? абсолютно бессмысленно, имхо.
...
Рейтинг: 0 / 0
Подбор железа под MySQL Сервер
    #39121766
unutcon Mephi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miksoft,netwind
Прошу прощения за глупейшую ошибку. Только сейчас увидел что написал про обьёмы в 2-3 ГБ
На самом деле Речь идет о 2-3 ТБ. Извиняюсь
...
Рейтинг: 0 / 0
Подбор железа под MySQL Сервер
    #39121769
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
unutcon MephiНа самом деле Речь идет о 2-3 ТБ.Теоретически, конечно, моя рекомендация остается в силе, но, боюсь, это будет уже совсем не бюджетно.

Описывайте задачу, характер данных, характер основных запросов, требования к их быстродействию и т.д.
...
Рейтинг: 0 / 0
Подбор железа под MySQL Сервер
    #39121777
unutcon Mephi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miksoft,

Хранимые данные - характеристики АФАР.( грубо говоря АФХ антенны).

Каждая АФАР состоит из нескольких блоков подрешеток, которые состоят из N числа элементов(от 256-384 в текущей задаче)

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

В результате основной обьём занимает таблица Значение

Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
CREATE TABLE `znachenie` (
  `ID` bigint(12) unsigned NOT NULL AUTO_INCREMENT,
  `id_afx` int(10) unsigned NOT NULL,
  `kod_amplitud` tinyint(4) NOT NULL DEFAULT '-1',
  `kod_fazi` tinyint(4) unsigned NOT NULL,
  `amplituda` float NOT NULL,
  `faza` float NOT NULL,
  PRIMARY KEY (`ID`),
  KEY `key_id_afx_znachenie_idx` (`id_afx`),
  CONSTRAINT `key_id_afx` FOREIGN KEY (`id_afx`) REFERENCES `afx` (`ID`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8;
Тут и хранятся фазы и амплитуды для каждого элемента.

Т.е. характер данных - огромный объём float значений.

Характер запросов следующий :
1) На загрузку формируется при помощи интерфейса управления( MFC C++) текстовый файл на каждую таблицу ( 4 таблицы пока используется, если необходимо приведу DDL), и эти файлы последовательно загружаются в БД при помощи LOAD DATA.

2) Все остальные запросы на данный момент это выборки без JOIN и группировок, с использованием индексов.
Т.е. из родительских таблиц получаем id_afx и по этому значению из таблицы "Значение" получаем необходимые данные.

Требования к быстродействию определенно- "оптимальные". Конкретных значений никто сказать не может, но хотелось бы иметь мощную машину, которая сможет обрабатывать подобные объёмы и проводить выборки достаточно быстро.

Прошу прощение за большой объём текста, постарался ответить на все вопросы как смог, если чего-то не хватает для ясности картины прошу дать знать. Спасибо большое за участие.
...
Рейтинг: 0 / 0
Подбор железа под MySQL Сервер
    #39121785
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторХранимые данные - характеристики АФАР.( грубо говоря АФХ антенны).
Вот почему раньше не было понятия bigdata, а сейчас есть ? Потому что диски на терабайты стали доступы кому попало.
Ну не храните там характеристики АФАР. Интенсивные физические расчеты - не конек SQL.
...
Рейтинг: 0 / 0
Подбор железа под MySQL Сервер
    #39121786
unutcon Mephi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
netwind,

Я правильно понял, вы советуете посмотреть в сторону BigData?
...
Рейтинг: 0 / 0
Подбор железа под MySQL Сервер
    #39121787
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
unutcon Mephi, ни в коем случае. Физик не должен вестись на маркетинговые понятия.
Тут все зависит от конкретных алгоритмов обработки.
Обычные приложения мы еще привыкли оценивать на глазок - там одни и те же люди кнопки жмут. 1 оператор - одна кнопка в секунду - 1 условный байт в секунду.
Но расчеты с датчиков все разные. Может там любой расчет потребует поднять все 1 тб данных ? Я не возьмусь даже ничего прогнозировать.
...
Рейтинг: 0 / 0
Подбор железа под MySQL Сервер
    #39121792
unutcon Mephi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
netwind,
Передо мной изначально поставили задачу "Разработки реляционной БД", поэтому я и выбрал MySQL( изначально требования к хранимым данным были в районе 1 ТБ).
Т.к. мне пришлось изучать эту сферу с нуля, я не могу сказать что осознаю рациональность поставленной задачи и не уверен в ее физической реализации.

Работа конечного пользователя с БД основана на :
1) Добавлении характеристик в БД( что тоже весьма щепетильный вопрос, т.к. я не имею представления о поведении БД при загрузке новых значений в таблицу, размер которой уже составляет 700ГБ-1ТБ и реакции на обновление индексов).

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


Я также понимаю, что такие проекты выполняются не одним сотрудником выступающим в роли разработчика, программиста и администратора, но на данный момент выбора у меня нету.
...
Рейтинг: 0 / 0
Подбор железа под MySQL Сервер
    #39121822
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
unutcon Mephi,

Имеют ли обособленный смысл отдельные значения?
Я бы подумал над тем, нельзя ли их хранить большими пачками (например, в BLOB-е).
Не исключено, что вообще данные хранить в БД не надо, вместо этого хранить их в файлах (вместо тех же BLOB-ов), а в БД хранить только каталог экспериментов/замеров со ссылками на файлы.
...
Рейтинг: 0 / 0
Подбор железа под MySQL Сервер
    #39121826
unutcon Mephi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miksoft,

А если использовать тип данных BLOB , то будут ли работать для таблицы "Значение" с DDL представленным выше
запросы вида:

SELECT faza FROM znachenie WHERE id_afx = x AND kod_fazi = X;

Ну или другие условия выборки??
...
Рейтинг: 0 / 0
Подбор железа под MySQL Сервер
    #39121831
Arm79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
unutcon MephiПередо мной изначально поставили задачу "Разработки реляционной БД", поэтому я и выбрал MySQL( изначально требования к хранимым данным были в районе 1 ТБ).
Если это ВПК, то в первую очередь смотрите на сертифицированные средства, например Линтер-ВС. Ну или posgresql, проще будет потом адаптировать к сертификации.

unutcon MephiТребования к быстродействию определенно- "оптимальные". Конкретных значений никто сказать не может, но хотелось бы иметь мощную машину, которая сможет обрабатывать подобные объёмы и проводить выборки достаточно быстро.
Если требований нет, то проектируйте приложение с учетом возможности использования кэша в памяти. Это может быть как стороннее решение, так и возможности СУБД - какие нить промежуточные таблицы, располагающиеся исключительно в оперативке.


unutcon MephiТолько сейчас увидел что написал про обьёмы в 2-3 ГБ
На самом деле Речь идет о 2-3 ТБ.
Тут, конечно, все уже в оперативку не поместить. Хотя я не уверен, что все эти данные вам нужны одновременно. Нужно понимать, какие именно запросы идут к таблицам. Но я не понимаю, это что получается, вы храните всю историю значений по каждому конкретному элементу? А все расчеты у вас только по последним измерениям? Если да, то грандиозный объем оперативки не нужен. Можете для ускорения последние данные держать на SSD RAID10, а основную массу старых данных на более дешевые носители (секционирование)


unutcon MephiВсе остальные запросы на данный момент это выборки без JOIN и группировок, с использованием индексов.
Т.е. из родительских таблиц получаем id_afx и по этому значению из таблицы "Значение" получаем необходимые данные.
То есть вы выдаете данные, и их считает какой то другой процесс? Или хотите, чтобы СУБД в процессе считало?


В принципе, если у вас бюджет резиновый (вы ведь его не озвучили), нужно быть проще и считать по максимуму. Мне почему то кажется, что 128 оперативки, 4 ядра и raid 10 на 2-4 терабайта (не обязательно SSD) должно хватить, при условии, чтоб вы своевременно будете архивировать неактуальные данные. А если вдруг нужно больше, то это уже дисковые массивы
unutcon Mephimiksoft,

А если использовать тип данных BLOB , то будут ли работать для таблицы "Значение" с DDL представленным выше
запросы вида:

SELECT faza FROM znachenie WHERE id_afx = x AND kod_fazi = X;

Ну или другие условия выборки??

Возможно, вам стоит каждый набор значений от блока подрешеток хранить как массив байтов и выдавать в ответ на id_afx этот массив, возлагая ответственность за парсинг на клиента? Скорее всего, ведь имеет значение анализ всего подблока, а не элемента? Или это нормальная ситуация, когда один клиент запросом берет значение элемента в одном блоке, следующим запросом смотрит на элемент из другого блока и так далее? Такой рендомный access получится.
...
Рейтинг: 0 / 0
Подбор железа под MySQL Сервер
    #39121837
unutcon Mephi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Arm79,
Спасибо за подробный ответ.
В контексте задачи БД выступает в роли хранилища.
Измерения проводятся довольно часто, с различными условиями(температуры, номера точек, различные места измерений, режимы работы антенны и т.д)
Т.е. один БП может иметь в таблице "Значение" большое число различных АФХ(1-2 млн записей каждая).

Предполагается, что БД может дать возможность в нужный момент просмотреть характеристики, которые были измерены и загружены 2 месяца назад, и таким образом накапливать различные измерения в "одном месте".

Имеет смысл анализ как и всего БП, так и отдельных элементов. В любой момент пользователь должен иметь возможность посмотреть АФХ для текущего элемента на другой измеренной температуре(либо измеренной в другом месте).

Arm79Или это нормальная ситуация, когда один клиент запросом берет значение элемента в одном блоке, следующим запросом смотрит на элемент из другого блока и так далее? Такой рендомный access получится.

Это является нормальной ситуацией. Не совсем понимаю по поводу "рендомный access".

По поводу самого железа огромное спасибо, как раз то что нужно.

Arm79Нужно понимать, какие именно запросы идут к таблицам. Но я не понимаю, это что получается, вы храните всю историю значений по каждому конкретному элементу? А все расчеты у вас только по последним измерениям? Если да, то грандиозный объем оперативки не нужен.

Хранится в БД вся история значений для каждого БП, которому соответствует N элементов. Для каждого БП может быть проведено несколько измерений.
Расчеты могут быть по любым измерениям, вне зависимости от даты. Но тут основная роль БД предоставить собственно требуемые пользователем характеристики, затем эти данные заносятся в динамические массивы,а результат запроса очищается. И все дальнейшие операции над данными проделывает интерфейс управления.

Постарался ответить на основные вопросы, если что-то не так, дайте знать.Спасибо
...
Рейтинг: 0 / 0
Подбор железа под MySQL Сервер
    #39121845
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторПо поводу самого железа огромное спасибо, как раз то что нужно.
И что, так у нас весь ВПК ? Хорошо, что еще не посоветовали "сервер килограмм на 15".
ТС просто нужно читать, думать, экспериментировать самому.
...
Рейтинг: 0 / 0
Подбор железа под MySQL Сервер
    #39121883
tanglir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторПо поводу самого железа огромное спасибо, как раз то что нужно.Вы там не торопитесь, прочитайте внимательней:
Arm79Мне почему то кажется , что 128 оперативки, 4 ядра и raid 10 на 2-4 терабайта (не обязательно SSD) должно хватитьТри неуверенности в одно предложении. Три!
...
Рейтинг: 0 / 0
Подбор железа под MySQL Сервер
    #39122014
Arm79
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tanglir,

ясно дело )))) откуда уверенность то, не зная ни характера нагрузки, ни типа запросов. Есть только мои фантазии, основанные на скудном описании ТС. Под них все подходит
...
Рейтинг: 0 / 0
Подбор железа под MySQL Сервер
    #39122140
unutcon Mephi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
netwind, tanglir.

Netwind, по поводу ВПК выражение "то что нужно" звучало в контексте "спасибо за приблизительный ответ по конкретному вопросу, ради которого топик и создавался".
Я прекрасно понимаю, что задача вовсе не типовая , и просить точную конфигурацию цели не было.

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

Tanglir, по поводу читать, я бы с радостью, но видимо моих навыков серфинга в интернете не хватило, чтобы найти туториалы по подобным вопросам или подобные темы, поэтому и обратился сюда. Если есть какая-нибудь информация, прошу поделиться, где этот вопрос можно изучить более детально.
По поводу "неуверенности" Arm, пока что это единственная информация по поводу диапазона характеристик самого железа.
Мне собственно для закрытия данного вопроса и нужен приблизительный диапазон характеристик, относительно которого дальше и выделять ориентир дальнейшей работы.
С моей колокольни с ВПК на данный момент все в порядке, обосновывать публично такую позиция не имею разрешения:)
Спасибо
...
Рейтинг: 0 / 0
Подбор железа под MySQL Сервер
    #39122175
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
unutcon Mephiс ВПК на данный момент все в порядкеТогда предлагаю итерационный подход.
Сейчас берёте сервер без излишней крутизны - односокетный Xeon с самой высокой частотой, какой есть в пределах доступности (количество ядер роли пока не играет), побольше оперативки (ее вообще много не бывает) и RAID-10 на обычных HDD (серверный SSD такого объема для первого этапа будет неразумно дорог). Гоняете этот сервер, отлаживаете структуру БД (да и вообще структуру хранения) и запросы, а потом, по мере получения практического опыта эксплуатации системы (в т.ч. обнаружения узких мест), принимаете решение - жить с ним дальше или купить новый, а этот вывести в статус девелоперского/резервного.
Если система окажется долгоживущей и будет расти по нагрузке, то итерацию повторить.
...
Рейтинг: 0 / 0
Подбор железа под MySQL Сервер
    #39122183
unutcon Mephi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miksoftТогда предлагаю итерационный подход.Сейчас берёте сервер без излишней крутизны - односокетный Xeon с самой высокой частотой, какой есть в пределах доступности (количество ядер роли пока не играет), побольше оперативки (ее вообще много не бывает) и RAID-10 на обычных HDD (серверный SSD такого объема для первого этапа будет неразумно дорог). Гоняете этот сервер, отлаживаете структуру БД (да и вообще структуру хранения) и запросы, а потом, по мере получения практического опыта эксплуатации системы (в т.ч. обнаружения узких мест), принимаете решение - жить с ним дальше или купить новый, а этот вывести в статус девелоперского/резервного.
Если система окажется долгоживущей и будет расти по нагрузке, то итерацию повторить.

Miksoft, большое спасибо. Можно только вас спросить по поводу примерного диапазона ОП для первой итерации, с расчетом на 1-2ТБ данных?)
...
Рейтинг: 0 / 0
Подбор железа под MySQL Сервер
    #39122218
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
unutcon MephiМожно только вас спросить по поводу примерного диапазона ОП для первой итерации, с расчетом на 1-2ТБ данных?)я, например, так и не понял, сколько данных за раз предполагается выгребать. Существует ли разделение данных на "холодные" (очень редко используемые) и "горячие" (очень часто используемые, например, за последний день/эксперимент/замер)? Если да, то желательно, чтобы innodb_buffer_pool_size покрывал объем горячих данных.

Другой момент - будете ли вы просто читать/писать данные или будет пытаться обработать их в SQL. Если второе, то желательно запастись памятью и под соответствующие буфера. Если запросы будут порождать временные файлы на диске, от которых нельзя избавиться, но которые нужно ускорить и потенциально влезают в ОП (т.е их объем не изменяется терабайтами), то еще нужно добавить ОП для Tmpfs.

Поскольку вы вряд ли это все знаете сейчас, то берите те же 128 ГБ, только попросите не размазывать на много мелких модулей, а берите модулями максимально доступного размера, чтобы занять поменьше слотов и побольше оставить на случай расширения.
...
Рейтинг: 0 / 0
Подбор железа под MySQL Сервер
    #39122232
unutcon Mephi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miksoft,

На холодные и горячие данные ( на данный момент") делить не планируется.
Обрабатывать средствами SQL не планируется, все реализует интерфейс. От БД требуется только предоставлять данные, выбранные по различным условиям.

Максимальный объём горячих данных может достигать 1-2 ГБ, не более(это и так гиперутрированное значение).
Спасибо вам большое.
...
Рейтинг: 0 / 0
Подбор железа под MySQL Сервер
    #39122308
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
unutcon MephiНа холодные и горячие данные ( на данный момент") делить не планируется.я говорил не столько о физическом разделении (например, по таблицам или по партициям таблиц), сколько о логическом (какие-то записи могут использоваться намного чаще других). В таких случаях не обязательно запасаться кэшем на всю таблицу, достаточно, чтобы влезали блоки с "горячими" записями.
unutcon MephiМаксимальный объём горячих данных может достигать 1-2 ГБ, не более(это и так гиперутрированное значение).Тогда, может, и 32 ГБ хватит. Только не берите мелкими модулями, иначе при апгрейде они останутся не у дел.
...
Рейтинг: 0 / 0
Подбор железа под MySQL Сервер
    #39122672
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoftНе исключено, что вообще данные хранить в БД не надо, вместо этого хранить их в файлахНаткнулся тут по другому поводу на ссылку http://www.mysql.com/products/enterprise/backup.html

Спланируйте заранее, как вы будете бэкапить и восстанавливать БД в 2-3 ТБ.
Иначе, если исходить пропорционально из данных по этой ссылке, то восстанавливать БД придется месяц.
Тогда как в случае с файлами диапазон инструментов, да и вообще вариантов, возрастает многократно.
...
Рейтинг: 0 / 0
Подбор железа под MySQL Сервер
    #39123649
unutcon Mephi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miksoft,

Спасибо за ссылку - наглядно и... пугающе :).
Вариант с файлами действительно хорош, попытаюсь его тщательно обмозговать и обсудить с начальником.
По крайней мере он позволяет тот же физический размер бд сильно уменьшить.
Вот DDL таблицы "Значение", которая на данный момент хранит значения файлов.
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
CREATE TABLE `znachenie` (
  `ID` bigint(12) unsigned NOT NULL AUTO_INCREMENT,
  `id_afx` int(10) unsigned NOT NULL,
  `kod_amplitud` tinyint(4) NOT NULL DEFAULT '-1',
  `kod_fazi` tinyint(4) unsigned NOT NULL,
  `amplituda` float NOT NULL,
  `faza` float NOT NULL,
  PRIMARY KEY (`ID`),
  KEY `key_id_afx_znachenie_idx` (`id_afx`),
  CONSTRAINT `key_id_afx` FOREIGN KEY (`id_afx`) REFERENCES `afx` (`ID`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8;



Если одна строка в текстовом файле( полностью соответствующем загружаемым значениям в эту таблицу) занимает 30 байт, то , при занесении в БД, одна запись занимает уже 45байт данные и 17 байт индексы = 62 байта
Код: plaintext
(SHOW TABLE STATUS LIKE 'znachenie')

Miksoft, позвольте еще у вас спросить есть ли смысл смотреть в сторону BLOB полей?

И по поводу "холодных" и "горячих" данных не совсем понятно. Т.е. холодные, те что хранятся в БД, но используются редко или давно,а горячие это актуальные?. Если это так, то как можно это использовать? Все что мне в голову пришло, это хранить "горячие" данные в виде характеристик,а холодные при определенном сроке простоя переводить в вид строки, содержащей пути к файлу( как и предложено). Но в любом случае, при удалении "холодных" характеристик место InnoDB зарезервирует - хоть и данных не будет в таблице, но физическое место не освободится - или же это все таки ускорит выборки и операции загрузки?.
Много вопросов и букв, спасибо за терпение!
...
Рейтинг: 0 / 0
Подбор железа под MySQL Сервер
    #39123652
unutcon Mephi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Прошу прощения , редактировать нельзя...

Нашел приблизительную информацию про "горячие" и "холодные" данные.
Вот только не понимаю, как средствами MySQL физически реализовать хранения горячих данных в RAM, а холодных на HDD.
Если есть возможность, подскажите направление, где можно более детально с этим вопросом ознакомиться.
...
Рейтинг: 0 / 0
Подбор железа под MySQL Сервер
    #39123673
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
unutcon Mephi, это вопрос оценки базы, а не попытки программировать педально-шаговую систему с учетом разделения данных на горячие и холодные.
Там все автоматически происходит : оценивают как работает база, ставят памяти чтобы оно все влезало и выставляют innodb bufer pool size соразмерно горячим данных.

Можно много чего выдумать, но вам пока не надо.
...
Рейтинг: 0 / 0
Подбор железа под MySQL Сервер
    #39124397
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
unutcon MephiВот DDL таблицы "Значение", которая на данный момент хранит значения файлов.
Код: plsql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
CREATE TABLE `znachenie` (
  `ID` bigint(12) unsigned NOT NULL AUTO_INCREMENT,
  `id_afx` int(10) unsigned NOT NULL,
  `kod_amplitud` tinyint(4) NOT NULL DEFAULT '-1',
  `kod_fazi` tinyint(4) unsigned NOT NULL,
  `amplituda` float NOT NULL,
  `faza` float NOT NULL,
  PRIMARY KEY (`ID`),
  KEY `key_id_afx_znachenie_idx` (`id_afx`),
  CONSTRAINT `key_id_afx` FOREIGN KEY (`id_afx`) REFERENCES `afx` (`ID`) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8;

Если одна строка в текстовом файле( полностью соответствующем загружаемым значениям в эту таблицу) занимает 30 байт, то , при занесении в БД, одна запись занимает уже 45байт данные и 17 байт индексы = 62 байтаЧто-то не сходится. Прямым подсчетом получается 8+4+1+1+4+4=22 байта на запись в таблице и 4+8=12 байт на запись в индексе. Конечно, накладные расходы присутствуют, но не в два же раза.
Если в таблице удалялось много записей, то попробуйте сделать ей OPTIMIZE TABLE.
...
Рейтинг: 0 / 0
Подбор железа под MySQL Сервер
    #39124400
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
unutcon MephiИ по поводу "холодных" и "горячих" данных не совсем понятно. Т.е. холодные, те что хранятся в БД, но используются редко или давно,а горячие это актуальные?. Если это так, то как можно это использовать?Например, у нас, есть таблица с документами/накладными/счетами. Обычно наши сотрудники работают с документами, сделанными в последние несколько дней. Документы старее недели нужны уже редко, обычно для разбора каких-то косяков. Старее месяца документы уже почти никого не интересуют и используются только в какой-нибудь статистике, которая обсчитывается ночью.
Физически это одна таблица, с точки зрения СУБД записи в ней ничем не отличаются друг от друга, но некоторые записи используются значительно чаще, чем другие. Вот это и есть "горячие данные". Поскольку быстродействие при работе с холодными данными никого не интересует, то для приемлемой работы пользователей достаточно выделить памяти на кэш только под "горячие данные". Т.е. в моем примере на документы за последнюю неделю-месяц.

Существуют методы раздельного хранения холодных и горячих данных, но обычно они применяются только в очень больших системах и когда деление данных вводится формально.
...
Рейтинг: 0 / 0
Подбор железа под MySQL Сервер
    #39124431
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
unutcon MephiДобрый день, уважаемые знатоки.

Необходим дельный совет по поводу подбора конфигурации железа сервера для MySQL( тип таблиц InnoDB).
К сожалению, дельной информации по этому поводу найти не удалось, поэтому вынужден обратиться сюда( за любые ссылки и пинки в какую-либо дельную сторону огромное спасибо)

Сервер будет выделенной машиной, к которой будут иметь доступ сотрудники отдела по локальной сети.
Предварительный объём хранимых данных 2-3ГБ.
Собственно , следуя тем данным которые я смог найти, а именно: оперативная память, процессор, жесткие диски; являются ключевыми в данном вопросе. ( в некоторых книжках написано что для комфортной работы необходимо около 30% ОП от объема данных. Также планируется использовать аппаратный RAID10.

Не могли бы вы дать советы по поводу данных комплектующих, чтобы этот вопрос можно было решить более рационально.

За любые ответы,советы,указания огромное спасибо и низкий поклон.

C железом под СУБД всё очень просто, оно должно удовлетворять только трём главным критериям:
Иметь быстрые процессоры

Иметь много оперативной памяти

Иметь хорошую подсистему ввода-вывода.


И всё.

Памяти тебе надо размер твоей БД, плюс под накладные СУБД, плюс под накладные операционки, плюс лог.
8Гб в твоём случае будет выше крышы. Может хватить и 4-х (но по современным меркам это -- несерьёзно для сервера).

Процы -- любые современные. Ультра супер пупер гигагерцы не нужны, нужен современный середнячёк.
Лучше, естественно, всё в серверных вариантах, плата, процы, и т.п. Т.е. Xeon или аналоги. Ни в коем случае нельзя использовать
мобильные и энергоэкономные платы и процы (хотя, может и они потянут).

Диски -- как можно быстрее.

Вот и всё...
...
Рейтинг: 0 / 0
Подбор железа под MySQL Сервер
    #39124435
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
unutcon Mephimiksoft,netwind
Прошу прощения за глупейшую ошибку. Только сейчас увидел что написал про обьёмы в 2-3 ГБ
На самом деле Речь идет о 2-3 ТБ. Извиняюсь

Блин, вот это фейл....

Ну, такие объёмы в память не лезут по определению, поэтому там уже нужно глядеть по задаче,
обычно у задач есть т.н. рабочий набор данных, который сидит в кэше, и именно под него нужно
иметь память.

Но это естественно ты только решишь...
...
Рейтинг: 0 / 0
Подбор железа под MySQL Сервер
    #39124439
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
unutcon Mephinetwind,

Я правильно понял, вы советуете посмотреть в сторону BigData?

Неправильно.
...
Рейтинг: 0 / 0
Подбор железа под MySQL Сервер
    #39124483
unutcon Mephi
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Miksoft, netwind ,MasterZiv.

Спасибо Вам большое.
...
Рейтинг: 0 / 0
34 сообщений из 34, показаны все 2 страниц
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Подбор железа под MySQL Сервер
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]