|
|
|
Подбор железа под MySQL Сервер
|
|||
|---|---|---|---|
|
#18+
Добрый день, уважаемые знатоки. Необходим дельный совет по поводу подбора конфигурации железа сервера для MySQL( тип таблиц InnoDB). К сожалению, дельной информации по этому поводу найти не удалось, поэтому вынужден обратиться сюда( за любые ссылки и пинки в какую-либо дельную сторону огромное спасибо) Сервер будет выделенной машиной, к которой будут иметь доступ сотрудники отдела по локальной сети. Предварительный объём хранимых данных 2-3ГБ. Собственно , следуя тем данным которые я смог найти, а именно: оперативная память, процессор, жесткие диски; являются ключевыми в данном вопросе. ( в некоторых книжках написано что для комфортной работы необходимо около 30% ОП от объема данных. Также планируется использовать аппаратный RAID10. Не могли бы вы дать советы по поводу данных комплектующих, чтобы этот вопрос можно было решить более рационально. За любые ответы,советы,указания огромное спасибо и низкий поклон. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2015, 18:13:40 |
|
||
|
Подбор железа под MySQL Сервер
|
|||
|---|---|---|---|
|
#18+
unutcon Mephi, в отрыве от реальных задач это не решают. Ну возьмите типовую современную рабочую станцию. Поставьте памяти 16 гб и SSD поприличней . И можно, считать самый общий сервер БД у вас есть. Может и сервер и не справится, но, во всяком случае, хотя бы куда-нибудь в офис приткнете компьютер. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2015, 19:11:15 |
|
||
|
Подбор железа под MySQL Сервер
|
|||
|---|---|---|---|
|
#18+
netwind, я прекрасно понимаю о чём вы говорите. К сожалению это военно-промышленное предприятие, апгрейт сервера ,после тестов работоспособности и быстродействия стандартной машины, будет весьма проблематичен в связи с внутренней политикой предприятия( постоянные служебные записки, ожидания разрешений на изменение чего-либо и т.д.) 16 гб ОП, 7 камень, 4гб видеокарта и ЖД на 1 ТБ это стандартная комплектация обычного рабочего ПК , которая сейчас предоставляется даже студентам для выполнения НИР. Поэтому и вызывает сложность подбор конфигурации , т.к. цель начального этапа это не установка стандартной машины ,а попытка, обладая весьма скудными начальными условиями, подобрать какой-то типовой вариант для конкретной задачи, ориентируясь на высокий объём хранимых данных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2015, 19:55:08 |
|
||
|
Подбор железа под MySQL Сервер
|
|||
|---|---|---|---|
|
#18+
unutcon MephiПредварительный объём хранимых данных 2-3ГБ.Оперативка сейчас дешевая. Ставьте столько, чтобы в innodb_buffer_pool_size влезали все таблицы и индексы с запасом на рост на пару-тройку лет. На все остальное - очень грубо говоря, еще примерно столько же. Итого 16 ГБ для начала пойдет. Но это плюс/минус порядок. Точнее сказать нельзя, не зная характера нагрузки и данных. unutcon MephiТакже планируется использовать аппаратный RAID10.Для копеечных данных, которые можно практически полностью закэшировать в оперативке??? абсолютно бессмысленно, имхо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2015, 19:57:33 |
|
||
|
Подбор железа под MySQL Сервер
|
|||
|---|---|---|---|
|
#18+
miksoft,netwind Прошу прощения за глупейшую ошибку. Только сейчас увидел что написал про обьёмы в 2-3 ГБ На самом деле Речь идет о 2-3 ТБ. Извиняюсь ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2015, 19:59:11 |
|
||
|
Подбор железа под MySQL Сервер
|
|||
|---|---|---|---|
|
#18+
unutcon MephiНа самом деле Речь идет о 2-3 ТБ.Теоретически, конечно, моя рекомендация остается в силе, но, боюсь, это будет уже совсем не бюджетно. Описывайте задачу, характер данных, характер основных запросов, требования к их быстродействию и т.д. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2015, 20:03:00 |
|
||
|
Подбор железа под MySQL Сервер
|
|||
|---|---|---|---|
|
#18+
miksoft, Хранимые данные - характеристики АФАР.( грубо говоря АФХ антенны). Каждая АФАР состоит из нескольких блоков подрешеток, которые состоят из N числа элементов(от 256-384 в текущей задаче) Для каждого элемента могут быть произведены измерения с различными температурами, датами, местами измерений(различные заводы), сотрудниками и на разных точках. В результате основной обьём занимает таблица Значение Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Т.е. характер данных - огромный объём float значений. Характер запросов следующий : 1) На загрузку формируется при помощи интерфейса управления( MFC C++) текстовый файл на каждую таблицу ( 4 таблицы пока используется, если необходимо приведу DDL), и эти файлы последовательно загружаются в БД при помощи LOAD DATA. 2) Все остальные запросы на данный момент это выборки без JOIN и группировок, с использованием индексов. Т.е. из родительских таблиц получаем id_afx и по этому значению из таблицы "Значение" получаем необходимые данные. Требования к быстродействию определенно- "оптимальные". Конкретных значений никто сказать не может, но хотелось бы иметь мощную машину, которая сможет обрабатывать подобные объёмы и проводить выборки достаточно быстро. Прошу прощение за большой объём текста, постарался ответить на все вопросы как смог, если чего-то не хватает для ясности картины прошу дать знать. Спасибо большое за участие. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2015, 20:21:32 |
|
||
|
Подбор железа под MySQL Сервер
|
|||
|---|---|---|---|
|
#18+
авторХранимые данные - характеристики АФАР.( грубо говоря АФХ антенны). Вот почему раньше не было понятия bigdata, а сейчас есть ? Потому что диски на терабайты стали доступы кому попало. Ну не храните там характеристики АФАР. Интенсивные физические расчеты - не конек SQL. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2015, 20:43:03 |
|
||
|
Подбор железа под MySQL Сервер
|
|||
|---|---|---|---|
|
#18+
netwind, Я правильно понял, вы советуете посмотреть в сторону BigData? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2015, 20:46:06 |
|
||
|
Подбор железа под MySQL Сервер
|
|||
|---|---|---|---|
|
#18+
unutcon Mephi, ни в коем случае. Физик не должен вестись на маркетинговые понятия. Тут все зависит от конкретных алгоритмов обработки. Обычные приложения мы еще привыкли оценивать на глазок - там одни и те же люди кнопки жмут. 1 оператор - одна кнопка в секунду - 1 условный байт в секунду. Но расчеты с датчиков все разные. Может там любой расчет потребует поднять все 1 тб данных ? Я не возьмусь даже ничего прогнозировать. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2015, 20:56:17 |
|
||
|
Подбор железа под MySQL Сервер
|
|||
|---|---|---|---|
|
#18+
netwind, Передо мной изначально поставили задачу "Разработки реляционной БД", поэтому я и выбрал MySQL( изначально требования к хранимым данным были в районе 1 ТБ). Т.к. мне пришлось изучать эту сферу с нуля, я не могу сказать что осознаю рациональность поставленной задачи и не уверен в ее физической реализации. Работа конечного пользователя с БД основана на : 1) Добавлении характеристик в БД( что тоже весьма щепетильный вопрос, т.к. я не имею представления о поведении БД при загрузке новых значений в таблицу, размер которой уже составляет 700ГБ-1ТБ и реакции на обновление индексов). 2) Получении характеристик для конкретного БП ( порядка 1-2 миллиона строк), которые загоняются в динамические массивы и обрабатываются непосредственно интерфейсом управления БД. Я также понимаю, что такие проекты выполняются не одним сотрудником выступающим в роли разработчика, программиста и администратора, но на данный момент выбора у меня нету. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2015, 21:14:37 |
|
||
|
Подбор железа под MySQL Сервер
|
|||
|---|---|---|---|
|
#18+
unutcon Mephi, Имеют ли обособленный смысл отдельные значения? Я бы подумал над тем, нельзя ли их хранить большими пачками (например, в BLOB-е). Не исключено, что вообще данные хранить в БД не надо, вместо этого хранить их в файлах (вместо тех же BLOB-ов), а в БД хранить только каталог экспериментов/замеров со ссылками на файлы. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2015, 23:03:23 |
|
||
|
Подбор железа под MySQL Сервер
|
|||
|---|---|---|---|
|
#18+
miksoft, А если использовать тип данных BLOB , то будут ли работать для таблицы "Значение" с DDL представленным выше запросы вида: SELECT faza FROM znachenie WHERE id_afx = x AND kod_fazi = X; Ну или другие условия выборки?? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2015, 23:20:50 |
|
||
|
Подбор железа под MySQL Сервер
|
|||
|---|---|---|---|
|
#18+
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 получится. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 06.12.2015, 23:55:27 |
|
||
|
Подбор железа под MySQL Сервер
|
|||
|---|---|---|---|
|
#18+
Arm79, Спасибо за подробный ответ. В контексте задачи БД выступает в роли хранилища. Измерения проводятся довольно часто, с различными условиями(температуры, номера точек, различные места измерений, режимы работы антенны и т.д) Т.е. один БП может иметь в таблице "Значение" большое число различных АФХ(1-2 млн записей каждая). Предполагается, что БД может дать возможность в нужный момент просмотреть характеристики, которые были измерены и загружены 2 месяца назад, и таким образом накапливать различные измерения в "одном месте". Имеет смысл анализ как и всего БП, так и отдельных элементов. В любой момент пользователь должен иметь возможность посмотреть АФХ для текущего элемента на другой измеренной температуре(либо измеренной в другом месте). Arm79Или это нормальная ситуация, когда один клиент запросом берет значение элемента в одном блоке, следующим запросом смотрит на элемент из другого блока и так далее? Такой рендомный access получится. Это является нормальной ситуацией. Не совсем понимаю по поводу "рендомный access". По поводу самого железа огромное спасибо, как раз то что нужно. Arm79Нужно понимать, какие именно запросы идут к таблицам. Но я не понимаю, это что получается, вы храните всю историю значений по каждому конкретному элементу? А все расчеты у вас только по последним измерениям? Если да, то грандиозный объем оперативки не нужен. Хранится в БД вся история значений для каждого БП, которому соответствует N элементов. Для каждого БП может быть проведено несколько измерений. Расчеты могут быть по любым измерениям, вне зависимости от даты. Но тут основная роль БД предоставить собственно требуемые пользователем характеристики, затем эти данные заносятся в динамические массивы,а результат запроса очищается. И все дальнейшие операции над данными проделывает интерфейс управления. Постарался ответить на основные вопросы, если что-то не так, дайте знать.Спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2015, 00:29:03 |
|
||
|
Подбор железа под MySQL Сервер
|
|||
|---|---|---|---|
|
#18+
авторПо поводу самого железа огромное спасибо, как раз то что нужно. И что, так у нас весь ВПК ? Хорошо, что еще не посоветовали "сервер килограмм на 15". ТС просто нужно читать, думать, экспериментировать самому. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2015, 01:49:51 |
|
||
|
Подбор железа под MySQL Сервер
|
|||
|---|---|---|---|
|
#18+
авторПо поводу самого железа огромное спасибо, как раз то что нужно.Вы там не торопитесь, прочитайте внимательней: Arm79Мне почему то кажется , что 128 оперативки, 4 ядра и raid 10 на 2-4 терабайта (не обязательно SSD) должно хватитьТри неуверенности в одно предложении. Три! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2015, 08:32:15 |
|
||
|
Подбор железа под MySQL Сервер
|
|||
|---|---|---|---|
|
#18+
tanglir, ясно дело )))) откуда уверенность то, не зная ни характера нагрузки, ни типа запросов. Есть только мои фантазии, основанные на скудном описании ТС. Под них все подходит ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2015, 10:40:40 |
|
||
|
Подбор железа под MySQL Сервер
|
|||
|---|---|---|---|
|
#18+
netwind, tanglir. Netwind, по поводу ВПК выражение "то что нужно" звучало в контексте "спасибо за приблизительный ответ по конкретному вопросу, ради которого топик и создавался". Я прекрасно понимаю, что задача вовсе не типовая , и просить точную конфигурацию цели не было. Чтобы экспериментировать в любом случае нужен сервер, заявку на который нужно отправлять в ближайшее время, т.к. вопрос будет решаться в течение пол года-год. Нет возможности установить в качестве сервера любую стандартную машину, запрещено корпоративной политикой. Tanglir, по поводу читать, я бы с радостью, но видимо моих навыков серфинга в интернете не хватило, чтобы найти туториалы по подобным вопросам или подобные темы, поэтому и обратился сюда. Если есть какая-нибудь информация, прошу поделиться, где этот вопрос можно изучить более детально. По поводу "неуверенности" Arm, пока что это единственная информация по поводу диапазона характеристик самого железа. Мне собственно для закрытия данного вопроса и нужен приблизительный диапазон характеристик, относительно которого дальше и выделять ориентир дальнейшей работы. С моей колокольни с ВПК на данный момент все в порядке, обосновывать публично такую позиция не имею разрешения:) Спасибо ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2015, 12:09:38 |
|
||
|
Подбор железа под MySQL Сервер
|
|||
|---|---|---|---|
|
#18+
unutcon Mephiс ВПК на данный момент все в порядкеТогда предлагаю итерационный подход. Сейчас берёте сервер без излишней крутизны - односокетный Xeon с самой высокой частотой, какой есть в пределах доступности (количество ядер роли пока не играет), побольше оперативки (ее вообще много не бывает) и RAID-10 на обычных HDD (серверный SSD такого объема для первого этапа будет неразумно дорог). Гоняете этот сервер, отлаживаете структуру БД (да и вообще структуру хранения) и запросы, а потом, по мере получения практического опыта эксплуатации системы (в т.ч. обнаружения узких мест), принимаете решение - жить с ним дальше или купить новый, а этот вывести в статус девелоперского/резервного. Если система окажется долгоживущей и будет расти по нагрузке, то итерацию повторить. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2015, 12:27:51 |
|
||
|
Подбор железа под MySQL Сервер
|
|||
|---|---|---|---|
|
#18+
miksoftТогда предлагаю итерационный подход.Сейчас берёте сервер без излишней крутизны - односокетный Xeon с самой высокой частотой, какой есть в пределах доступности (количество ядер роли пока не играет), побольше оперативки (ее вообще много не бывает) и RAID-10 на обычных HDD (серверный SSD такого объема для первого этапа будет неразумно дорог). Гоняете этот сервер, отлаживаете структуру БД (да и вообще структуру хранения) и запросы, а потом, по мере получения практического опыта эксплуатации системы (в т.ч. обнаружения узких мест), принимаете решение - жить с ним дальше или купить новый, а этот вывести в статус девелоперского/резервного. Если система окажется долгоживущей и будет расти по нагрузке, то итерацию повторить. Miksoft, большое спасибо. Можно только вас спросить по поводу примерного диапазона ОП для первой итерации, с расчетом на 1-2ТБ данных?) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2015, 12:33:38 |
|
||
|
Подбор железа под MySQL Сервер
|
|||
|---|---|---|---|
|
#18+
unutcon MephiМожно только вас спросить по поводу примерного диапазона ОП для первой итерации, с расчетом на 1-2ТБ данных?)я, например, так и не понял, сколько данных за раз предполагается выгребать. Существует ли разделение данных на "холодные" (очень редко используемые) и "горячие" (очень часто используемые, например, за последний день/эксперимент/замер)? Если да, то желательно, чтобы innodb_buffer_pool_size покрывал объем горячих данных. Другой момент - будете ли вы просто читать/писать данные или будет пытаться обработать их в SQL. Если второе, то желательно запастись памятью и под соответствующие буфера. Если запросы будут порождать временные файлы на диске, от которых нельзя избавиться, но которые нужно ускорить и потенциально влезают в ОП (т.е их объем не изменяется терабайтами), то еще нужно добавить ОП для Tmpfs. Поскольку вы вряд ли это все знаете сейчас, то берите те же 128 ГБ, только попросите не размазывать на много мелких модулей, а берите модулями максимально доступного размера, чтобы занять поменьше слотов и побольше оставить на случай расширения. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2015, 12:52:25 |
|
||
|
Подбор железа под MySQL Сервер
|
|||
|---|---|---|---|
|
#18+
miksoft, На холодные и горячие данные ( на данный момент") делить не планируется. Обрабатывать средствами SQL не планируется, все реализует интерфейс. От БД требуется только предоставлять данные, выбранные по различным условиям. Максимальный объём горячих данных может достигать 1-2 ГБ, не более(это и так гиперутрированное значение). Спасибо вам большое. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2015, 12:59:30 |
|
||
|
Подбор железа под MySQL Сервер
|
|||
|---|---|---|---|
|
#18+
unutcon MephiНа холодные и горячие данные ( на данный момент") делить не планируется.я говорил не столько о физическом разделении (например, по таблицам или по партициям таблиц), сколько о логическом (какие-то записи могут использоваться намного чаще других). В таких случаях не обязательно запасаться кэшем на всю таблицу, достаточно, чтобы влезали блоки с "горячими" записями. unutcon MephiМаксимальный объём горячих данных может достигать 1-2 ГБ, не более(это и так гиперутрированное значение).Тогда, может, и 32 ГБ хватит. Только не берите мелкими модулями, иначе при апгрейде они останутся не у дел. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2015, 13:41:40 |
|
||
|
Подбор железа под MySQL Сервер
|
|||
|---|---|---|---|
|
#18+
miksoftНе исключено, что вообще данные хранить в БД не надо, вместо этого хранить их в файлахНаткнулся тут по другому поводу на ссылку http://www.mysql.com/products/enterprise/backup.html Спланируйте заранее, как вы будете бэкапить и восстанавливать БД в 2-3 ТБ. Иначе, если исходить пропорционально из данных по этой ссылке, то восстанавливать БД придется месяц. Тогда как в случае с файлами диапазон инструментов, да и вообще вариантов, возрастает многократно. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 07.12.2015, 19:26:05 |
|
||
|
|

start [/forum/topic.php?fid=47&msg=39122140&tid=1832392]: |
0ms |
get settings: |
10ms |
get forum list: |
17ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
27ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
53ms |
get tp. blocked users: |
2ms |
| others: | 255ms |
| total: | 380ms |

| 0 / 0 |
