|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Что работает на данный момент: Обычный компьютер i7 8 ядер 3.4ГГц / 16 Гб ОЗУ / БД на быстром SSD / Win7 БД (Firebird 2.5.5 classic) размером 55 Гб, 100-150 коннектов, 20-40 Мб памяти на коннект Какие показатели при работе: Занятая память: 5-8Гб Обычная нагрузка процессоров (суммарная): 10-20% Пиковая нагрузка процессоров (длится 3-4 часа в день непрерывно, примерно через 1 час после начала работы с БД при длительности рабочего дня 12 часов): 40-80% - это меня больше всего напрягает Нагрузка на HDD и LAN - минимальная: HDD в пике 20 МБ/с, обычно 0-4 МБ/с; LAN в пике 40 МБит/с, обычно 2-10 МБит/с. БД каждую ночь бэкапится\ресторится на старое место. Перед этим делается четырехкратная проверка (начиная с DDL, заканчивая данными) на восстановимость; рестор идет в другое место, и если все хорошо, то рабочая база заменяется и т.п. - в общем не суть. Т.е. в итоге: коннектов ночью к БД нет, с утра БД всегда без мусора. За рабочий день происходит около 300 тыс. транзакций. В итоге видимое узкое место - это процессор. Как это сказывается: При пиковой нагрузке, когда около 60-80 операторов создают новые заявки (1 заявка - это INSERT по 20-100 записей в 5-10 таблиц огромного размера + привязанная в этому бизнес-логика на 15-20 триггеров и около 20-30 ХП, меняющих еще 10-15 таблиц) и эта заявка сохраняется (в толстом клиенте, но вся бизнес-логика выполняется на стороне сервера) до 5-7 секунд. Это много. Считаю нормой - максимум 2 секунды. Кроме этого у пользователей есть достаточно сложные отчеты, которые могут формироваться до 1-2 минут. Хотелось бы все это ускорить. Поскольку процессор на обычном бытовом компьютере апгредить уже нет смысла, то пора переходить на серверное железо (не исключая оптимизации DDL и запросов). С серверным железом практической работы не имел. Поэтому прошу совета по следующим вопросам: 1) Даст ли ощутимый прирост производительности переход на процессоры Xeon Gen9 или Gen10 Silver c 16 ядрами но частотой 2.1-2.4ГГц (вместо i7 8 ядер 3.4ГГц) или же требуется увеличить кол-во ядер при сохранении примерно той же частоты что у i7 3-4 ГГц? На Gen10 цена сильно кусается, хотелось бы что-то поэкономичней. 2) Насколько сильно влияет размер кэша процессора на производительность при работе с БД Firebird? 3) Даст ли ощутимый прирост производительности переход FB с 2.5.5 на 3.х? Если да, то выбирать SuperServer? 4) Влияет ли на производительность то, что сейчас сервер БД работает под Windows7, а не под нормальной серверной ОС? Больше никаких функций кроме сервера БД этот компьютер не выполняет. 5) Будет ли какой-то эффект по производительности от перевода ОС сервера с Win на Linux? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2019, 11:00 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
ДаниилНагрузка на HDD и LAN - минимальная: HDD в пике 20 МБ/с, обычно 0-4 МБ/с; LAN в пике 40 МБит/с, обычно 2-10 МБит/с.не смотри на мегабайты смотри на иопсы и очередь. ДаниилБД каждую ночь бэкапится\ресторится на старое место.Баловство, заменить на раз месяц. Мы вообще делаем примерно раз в год, приурочивая к смене версии самого фб. ДаниилВ итоге видимое узкое место - это процессор.терзают меня на сей счет смутные сомнения. ДаниилЗанятая память: 5-8ГбДаниилБД (Firebird 2.5.5 classic) размером 55 Гб, 100-150 коннектовнестыковка какая-то. Даниил1) Даст ли ощутимый прирост производительности переход на процессоры Xeon Gen9 или Gen10 Silver c 16 ядрами но частотой 2.1-2.4ГГц (вместо i7 8 ядер 3.4ГГц) или же требуется увеличить кол-во ядер при сохранении примерно той же частоты что у i7 3-4 ГГц? На Gen10 цена сильно кусается, хотелось бы что-то поэкономичней.вряд ли. Даниил2) Насколько сильно влияет размер кэша процессора на производительность при работе с БД Firebird?меньше чем дисковые иопсы и нехватка ОЗУ. Даниил3) Даст ли ощутимый прирост производительности переход FB с 2.5.5 на 3.х? Если да, то выбирать SuperServer?Если запрограммировать хорошо прикладную логику то, да , влияет весьма положительно. Нагрузку держит лучше. Даниил4) Влияет ли на производительность то, что сейчас сервер БД работает под Windows7, а не под нормальной серверной ОС? Больше никаких функций кроме сервера БД этот компьютер не выполняет.скорее всего пох, хотя мне судить трудно сервер на винде для меня скорее экзотика. Даниил5) Будет ли какой-то эффект по производительности от перевода ОС сервера с Win на Linux?на линуксе фб работает вполне себе отлично. Я бы начал с внятных замеров перфмоном дисковой активности и расхода ОЗУ, памяти на первый взгляд мало очень. Каждое утро разогрев файлового кэша заново, выделение места под новые странички тоже заново. надо ли каждый раз подменят базу ? Как по мне так свипа вполне достаточно (проверить на наличие зависших транзакций предварительно). На линукс стОит рыпаться, только если умеете с ним работать. Как по мне так линукс да, приятней в работе. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2019, 11:28 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
авторБД каждую ночь бэкапится\ресторится на старое место. Не понял... База затирается при восстановлении??? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2019, 11:32 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Даниил, > не исключая оптимизации DDL и запросов вот с этого бы и начинали... и как выше сказали - помониторьте сисьтему, чтоб не получилось, что решал проблему, которой нет ... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2019, 11:46 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
ДаниилБД каждую ночь бэкапится\ресторится на старое место. Перед этим делается четырехкратная проверка (начиная с DDL, заканчивая данными) на восстановимость; рестор идет в другое место, и если все хорошо, то рабочая база заменяется и т.п. - в общем не суть. Т.е. в итоге: коннектов ночью к БД нет, с утра БД всегда без мусора. За рабочий день происходит около 300 тыс. транзакций. Вы фигнёй там страдаете. Нормально спроектированная система не нуждается в постоянном b/r. С транзакциями надо работать правильно. Для транзакций которые оборвались по Rollback есть sweep. Даниил1) Даст ли ощутимый прирост производительности переход на процессоры Xeon Gen9 или Gen10 Silver c 16 ядрами но частотой 2.1-2.4ГГц (вместо i7 8 ядер 3.4ГГц) или же требуется увеличить кол-во ядер при сохранении примерно той же частоты что у i7 3-4 ГГц? На Gen10 цена сильно кусается, хотелось бы что-то поэкономичней. увеличение количества ядер даст прирост, если только ваши 100-150 коннектов реально активны, а не просто ожидают Даниил2) Насколько сильно влияет размер кэша процессора на производительность при работе с БД Firebird? не думаю что сильно Даниил3) Даст ли ощутимый прирост производительности переход FB с 2.5.5 на 3.х? Если да, то выбирать SuperServer? Скорее всего даст. Выбирать SS. Но только не стоит ожидать, что достаточно сделать b/r и всё будет в ажуре. Там дело не только в общем кэше. Sweep в 3.0 намного более щадящий. Фоновая сборка мусора в SS позволяет убрать то, что в классике не убирается в принципе (удалённые записи которые никогда не читаются). Есть много нового в SQL/PSQL которое позволит переписать старый код и значительно ускорить/упростить некоторые вещи, но этим надо заниматься отдельно и долго. Даниил4) Влияет ли на производительность то, что сейчас сервер БД работает под Windows7, а не под нормальной серверной ОС? Больше никаких функций кроме сервера БД этот компьютер не выполняет. если ты сравниваешь Windows 7 и всякие Windows Server xxxx, то влияет отчасти. Просто в десктопных осях по умолчанию приоритет отдаётся настольным приложениям, а не службам, но это можно изменить. Ну и плюс по умолчанию в десктопных ОСях много чего лишнего включено. В серверные обычно компоненты ОСи устанавливаются более избирательно под задачу. Даниил5) Будет ли какой-то эффект по производительности от перевода ОС сервера с Win на Linux? Не факт. Всё зависит от радиуса кривизны рук и знания конкретного дистрибутива Linux. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2019, 12:02 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
ДаниилПеред этим делается четырехкратная проверка (начиная с DDL, заканчивая данными) на восстановимость; рестор идет в другое место, и если все хорошо, то рабочая база заменяется и т.п. - в общем не суть. Т.е. в итоге: коннектов ночью к БД нет, с утра БД всегда без мусора. За рабочий день происходит около 300 тыс. транзакций. Первое предложение не понял совсем. Единственный способ проверить восстановимость бакапа - выполнить контрольный рестор. Выполнять эту процедуру еженощно - это комильфо это даёт уверенность в завтрашнем дне и обеспечивает своевременную диагностику фатальных проблем. А вот заменять основную базу результатом - уже излишество. Даниил(1 заявка - это INSERT по 20-100 записей в 5-10 таблиц огромного размера + привязанная в этому бизнес-логика на 15-20 триггеров и около 20-30 ХП, меняющих еще 10-15 таблиц) и эта заявка сохраняется (в толстом клиенте, но вся бизнес-логика выполняется на стороне сервера) до 5-7 секунд. А на этих "ещё 15-20 таблиц" свои триггера, которые в своём теле, пусть даже при конкретных значениях данных при вставке заявки не отрабатывающем по веткам if-ов, содержат упоминания других объектов, на которых, в свою очередь... В итоге в особо тяжёлом случае по каждому чиху на препаре проверяются права пользователя на 90% объектов в базе, что не так чтоб смертельно затратно, но и не дёшево. Насчёт разницы в стоимости этого дела в 2.х и 3.х я не в курсе. Я не утверждаю, что структура и бизнес логика спроектированы через... мнэээ..., но подумать в этом направлении стоит. По крайней мере для начала сопоставить время препаре и выполнения этой внутрисерверной колбасы при вставке заявки. Если проблема таки в выполнении, надо а) Проверить селективность индексов и характер их заполнения, нет ли имеющих явный пик на паре-тройке значений. Даже инсёрт приводит к перестройке индексов, в основе чего лежит сортировка, которая при большом объёме дубликатов нещадно тормозит. Возможно, от некоторых из них стоит отказаться. бе) Определить узкие места в серверном коде, сначала на уровне объектов (триггера-процедуры), затем на уровне запросов внутри подозрительных и привести в чувство индексы и планы этих запросов. ве) Проанализировать конфиг FB на предмет соответствия задачам. Кстати, особо "удачные" решения в конфигурации оси тоже случаются. С файловым кешем, например. И вот когда это всё не поможет, можно начинать думать о железе. Я так думаю (С). ... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2019, 14:15 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Старый плюшевый мишкаНасчёт разницы в стоимости этого дела в 2.х и 3.х я не в курсе.Была разница, самолично наступал на эти грабли. В версии 3.0.5 исправлено. Старый плюшевый мишкаИ вот когда это всё не поможет, можно начинать думать о железе.У меня в десктопе больше памяти, у тут вполне себе серверок. Добить планками памяти сколько способна вытянуть платформа будет явно не лишним. Таки да, от вдумчивого программирования эффект будет куда веселей. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2019, 14:51 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Ivan_Pisarevsky, Смотрел PerfMon'ом: Обращения к диску/с Среднее: 85000 Максимальное: 412000 Средняя длина очереди диска Среднее: 0.051 Максимальное: 0.443 % загруженности процессора Минимум: 6.4 Среднее: 46 Максимальное: 100 ... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2019, 15:12 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Определённо надо апгредить процессор в черепе разработчика базы. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2019, 15:26 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Старый плюшевый мишкаПервое предложение не понял совсем. Единственный способ проверить восстановимость бакапа - выполнить контрольный рестор. Выполнять эту процедуру еженощно - это комильфо это даёт уверенность в завтрашнем дне и обеспечивает своевременную диагностику фатальных проблем. А вот заменять основную базу результатом - уже излишество. Возможно, я не совсем понятно выразился. Поскольку БД большая и в случае каких-либо проблем с ней для экономии времени сначала делается бэкап без данных. Если все хорошо, то восстановление (без данных). Если на первых двух этапах все прошло хорошо, то то же самое повторяем уже с данными. Если на каком-либо этапе что-то пошло не так - отказываемся от замены рабочей БД. Если на всех 4 этапах все хорошо, то подменяем рабочую БД (предварительно ее скопировав на всякий случай просто как обычный файл) на последнюю отресторенную БД (таким образом ежедневно проверяется БД и чистится мусор). Про такой способ где-то когда-то прочитал (возможно на ibase.ru), сделал и не трогаю уже много лет. Уже более 10 лет ни одной проблемы зафиксировано не было. Старый плюшевый мишкаЕсли проблема таки в выполнении, надо а) Проверить селективность индексов и характер их заполнения, нет ли имеющих явный пик на паре-тройке значений. Даже инсёрт приводит к перестройке индексов, в основе чего лежит сортировка, которая при большом объёме дубликатов нещадно тормозит. Возможно, от некоторых из них стоит отказаться. бе) Определить узкие места в серверном коде, сначала на уровне объектов (триггера-процедуры), затем на уровне запросов внутри подозрительных и привести в чувство индексы и планы этих запросов. ве) Проанализировать конфиг FB на предмет соответствия задачам. Кстати, особо "удачные" решения в конфигурации оси тоже случаются. С файловым кешем, например. И вот когда это всё не поможет, можно начинать думать о железе. Я так думаю (С).Про оптимизацию понял и периодически анализом долгих запросов (правда, в основном тех, которые используются в отчетах) занимаюсь. У меня превышение загрузки процессора происходит при интенсивной работе. Если работают 20-40 пользователей, то те же самые заказы "вставляются" за время менее 2 секунд (отслеживаю по логам) и загрузка процессора при этом небольшая. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2019, 16:04 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
а чо про конфиг никто не спрашивает? или я пропустил? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2019, 17:29 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Мимопроходящий, автор#RootDirectory = #DatabaseAccess = Full #ExternalFileAccess = None #UdfAccess = Restrict UDF #TempDirectories = #LegacyHash = 1 #Authentication = native #AuditTraceConfigFile = #MaxUserTraceLogSize = 10 DefaultDbCachePages = 384 #DatabaseGrowthIncrement = 134217728 #FileSystemCacheThreshold = 65536 #FileSystemCacheSize = 0 #RemoteFileOpenAbility = 0 TempBlockSize = 2048576 TempCacheLimit = 77108864 #CompleteBooleanEvaluation = 0 #DeadlockTimeout = 10 #MaxUnflushedWrites = 100 #MaxUnflushedWriteTime = 5 #BugcheckAbort = 0 #OldColumnNaming = 0 #OldSetClauseSemantics = 0 #RelaxedAliasChecking = 0 #ConnectionTimeout = 180 #DummyPacketInterval = 0 #RemoteServiceName = gds_db #RemoteServicePort = 3050 #RemoteAuxPort = 0 #TcpRemoteBufferSize = 8192 #TcpNoNagle = 1 #RemoteBindAddress = LockMemSize = 7048576 #LockGrantOrder = 1 #LockAcquireSpins = 0 LockHashSlots = 30011 #EventMemSize = 65536 #CpuAffinityMask = 1 #UsePriorityScheduler = 1 #PrioritySwitchDelay = 100 #PriorityBoost = 5 #GCPolicy = combined #GuardianOption = 1 #ProcessPriorityLevel = 0 #IpcName = FIREBIRD #RemotePipeName = interbas #Redirection = 0 ... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2019, 18:09 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovОпределённо надо апгредить процессор в черепе разработчика базы. Разработчик - это я и есть. Кроме оптимизации DDL и запросов с клиентов где по вашему мнению у меня прям ужас ужасный? Большой объем БД при малом расходе оперативы можно объяснить тем, что значительную часть БД занимают несколько таблиц с большим количеством записей, в которых блобы по 2-3 Мб. Я принял решение не хранить их вне БД, поскольку доступ к ним (точнее к файлам в этих блобах) у меня должен регулироваться правами пользователя. А надежный способ делать это на отдельной от БД файлопомойке, куда необходимо будет давать доступ с каждого клиентского компьютера вне зависимости от операционки, залогиненного пользователя и т.п. не придумал. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2019, 18:17 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
ДаниилОбращения к диску/с Среднее: 85000 Максимальное: 412000не кисло так, однако. давай порознь, отдельно чтение, отдельно запись. классику нужно чтобы в файловом кэше была активная часть БД, ему кое-как удалось закешировать 9 гиг из 55 гигов базы, есть подозрение, что этого может быть мало. что там в хидере базы? gstat -h DefaultDbCachePages = 384 Как-то не очень много, я бы поставил от тысячи до двух. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2019, 18:21 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
ДаниилКроме оптимизации DDL и запросов с клиентов где по вашему мнению у меня прям ужас ужасный? 1. Неспособность посмотреть и проанализировать статистку БД. 2. Неспособность выяснить чем занят процессор когда он занят. Отсюда вангуются: 1. Кривое управление транзакциями. 2. Пложение версий записей сверх необходимости. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2019, 18:28 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Ivan_Pisarevskyчто там в хидере базы? gstat -h авторDatabase "e:\db\db.fdb" Database header page information: Flags 0 Checksum 12345 Generation 321901 Page size 16384 ODS version 11.2 Oldest transaction 319361 Oldest active 319362 Oldest snapshot 319362 Next transaction 319470 Bumped transaction 1 Sequence number 0 Next attachment ID 2423 Implementation ID 26 Shadow count 1 Page buffers 0 Next header page 0 Database dialect 3 Creation date Mar 13, 2019 22:49:37 ... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2019, 19:16 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Даниил на последнюю отресторенную БД (таким образом ежедневно проверяется БД и чистится мусор) ага. делать так можно, но особого смысла нет, и кто так делает, обычно не может дать этому вменяемого объяснения. Особенно про "чистится мусор". Мусор правда есть? Почему он накапливается? не проще gfix -sweep по расписанию запускать? ДаниилПро такой способ где-то когда-то прочитал это не способ. База 55 гиг - не такая уж большая. Вот если бы она была 300-400 гиг, то тогда этот "способ" вам бы пришлось выкинуть. ДаниилDatabase "e:\db\db.fdb" как я понимаю, в базе sweep interval 20000, так что срабатывания автосвипа вполне возможны. Ну и про конфиг - зачем приводить дефолтные (закомментированные) параметры? Лениво было их вырезать? DefaultDbCachePages = 384 маловато как-то. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2019, 19:36 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
kdvкак я понимаю, в базе sweep interval 20000, так что срабатывания автосвипа вполне возможны. С какой версии автосвип начал протоколироваться в firebird.log? Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2019, 19:42 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakov, не помню, но в 2.5.8 уже есть. Прикол в другом - у вновь созданной БД дефолтный свип интервал по gstat -h не выводится, то есть, его как бы нет, на самом деле он есть и равен тем самым 20000. Как пресловутый суслик. ... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2019, 20:37 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
[quote автор] Нагрузка на HDD и LAN - минимальная: HDD в пике 20 МБ/с, обычно 0-4 МБ/с; LAN в пике 40 МБит/с, обычно 2-10 МБит/с./quote] Откуда такая нагрузка на SSD, если вся база закеширована в памяти? Случайно нету длинных транзакций RW, мешающих сборке мусора в сочетании с часто срабатывающим sweep? ... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2019, 22:21 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
kdvПрикол в другом - у вновь созданной БД дефолтный свип интервал по gstat -h не выводится И даже не в этом прикол, а в том, что ты априори утверждаешь, что он запускается, хотя не видно ни свидетельств этого, ни даже предпосылок. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
14.03.2019, 23:11 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
DmSerОткуда такая нагрузка на SSD, если вся база закеширована в памяти? откуда она там возьмется kdvDefaultDbCachePages = 384 маловато как-то. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2019, 06:37 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Ivan_PisarevskyДаниилОбращения к диску/с Среднее: 85000 Максимальное: 412000не кисло так, однако. давай порознь, отдельно чтение, отдельно запись. Обращений чтения к диску/с Среднее: 1561 Максимальное: 17999 Обращений записи на диск/с Среднее: 72456 Максимальное: 796978 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2019, 07:50 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
kdvкак я понимаю, в базе sweep interval 20000, так что срабатывания автосвипа вполне возможны. DefaultDbCachePages = 384 маловато как-то. Я не полностью выложил текст gstat. Sweep у меня отключен: авторVariable header data: Sweep interval: 0 Про рекомендацию от двух человек по DefaultDbCachePages понял. Почитаю более подробнее и в начале следующей недели увеличу. kdvНу и про конфиг - зачем приводить дефолтные (закомментированные) параметры? Лениво было их вырезать?Посчитал, что так будет понятнее, что большинство настроек - по дефолту. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2019, 08:09 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Типовое добавление заказа, выполняется в одной ХП: 81 record(s) was(were) updated in TABLE1 3 record(s) was(were) updated in TABLE2 7 record(s) was(were) deleted from TABLE3 81 record(s) was(were) inserted into TABLE4 1 record(s) was(were) inserted into TABLE5 25 record(s) was(were) inserted into TABLE6 3 record(s) was(were) inserted into TABLE7 7 record(s) was(were) inserted into TABLE8 81 record(s) was(were) inserted into TABLE9 ------ Performance info ------ Prepare time = 0ms Execute time = 6s 178ms Current memory = 13 368 928 Max memory = 15 332 664 Memory buffers = 384 Reads from disk to cache = 97 067 Writes from cache to disk = 1 248 Fetches from cache = 116 444 Query Time ------------------------------------------------ Prepare : 0,00 ms Execute : 6 178,00 ms Avg fetch time: 0,00 ms Memory ------------------------------------------------ Current: 13 368 928 Max : 15 332 664 Buffers: 384 Operations ------------------------------------------------ Read : 97 067 Writes : 1 248 Fetches: 116 444 Marks : 2 603 Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23.
... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2019, 08:33 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Даниил, ужас!!! Если реально добавление одного заказа занимает 6 секунд всю эту фигню надо срочно переписать. Оно должно длится не более одной десятой секунды. Название таблиц TABLE_N просто умиляет. Это ORM что ли? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2019, 08:39 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Даниил, вам надо оперативной памяти нарастить и увеличить размер страничного кеша для начала, но не более чем до 2048 страниц (это для классика). Перейдёте на 3.0 SS там можно кеш задрать посущественней. У вас там на вставку одного заказа только 97 067 дисковых чтений!!! ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2019, 08:43 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Симонов ДенисДаниил, ужас!!! Если реально добавление одного заказа занимает 6 секунд всю эту фигню надо срочно переписать. Оно должно длится не более одной десятой секунды. Название таблиц TABLE_N просто умиляет. Это ORM что ли? Нет, в реальности названия таблиц вполне осмысленные. В статистике подчистил на всякий случай. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2019, 08:48 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Симонов ДенисУ вас там на вставку одного заказа только 97 067 дисковых чтений!!!Для каждой позиции подтягивается свой прайс, где цена рассчитывается по нескольким параметрам (в т.ч. агрегациям по 2 немаленьким таблицам) и подтягиваются правила добавления для каждой позиции (у разной добавляемой позиции может быть различный механизм добавления сопутствующих параметров в одну/несколько таблиц (разные сущности). Про оптимизацию понял. Пересмотрю, что можно переделать на хранимые агрегации и число чтений уменьшить. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2019, 08:59 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Симонов Денисвам надо оперативной памяти нарастить и увеличить размер страничного кеша для начала, но не более чем до 2048 страниц (это для классика). все равно не поможет, если 1.5 гига с диска поднимается ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2019, 09:19 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovДаниилКроме оптимизации DDL и запросов с клиентов где по вашему мнению у меня прям ужас ужасный? 2. Неспособность выяснить чем занят процессор когда он занят. Можете подсказать, каким инструментом это можно посмотреть? Я могу посмотреть только имя и ID процесса и не понимаю как это можно использовать. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2019, 09:22 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
ДаниилДля каждой позиции подтягивается свой прайс, где цена рассчитывается по нескольким параметрам (в т.ч. агрегациям по 2 немаленьким таблицам) и подтягиваются правила добавления для каждой позиции (у разной добавляемой позиции может быть различный механизм добавления сопутствующих параметров в одну/несколько таблиц (разные сущности). Про оптимизацию понял. Пересмотрю, что можно переделать на хранимые агрегации и число чтений уменьшить. Вот с этого и надо начинать. Агрегировать каждый раз при добавлении позиции это онанизм какой-то. Во-первых прайсы так обычно не пересчитывают, хотя бы потому что плавающая цена в течении дня это не очень хорошо. Я не знаю что там у вас за бизнес правила, но скажу что делал я одного оптовика фарм препаратов. У них розничный прайс пересчитывается на оприходовании, а оптовый раз в неделю. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2019, 09:37 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
ДаниилОбычный компьютерЕсли не экономить на комплектующих, то сервер не всегда обязателен. Даниил16 Гб ОЗУ Занятая память: 5-8ГбМало. Ради дискового кеша нужно больше. Даниил / БД на быстром SSD / Ширпотребный SSD не для сервера. Enterprise SSD (SLC/MLC) имеют большую цену, а ширпотребные TLC/MLC- мусор с заранее неизвестным качеством и сроком жизни. Особенно, с OLTP нагрузкой. К тому же, один ширпотребный SSD плохо держит параллельную нагрузку. Лучше аппаратная плата RAID1 на 2 HDD или RAID10 на 4. Тогда будет до 4 потоков на чтение и до двух на запись. Винчестеры лучше выбирать классом повыше. ДаниилWin7Если настроить и поотключать всё лишнее, то это лучше ненужного сервера. При таких объёмах серверная операционная система- лишняя трата денег на ненужный функционал. ДаниилНагрузка на HDD и LAN - минимальная: HDD в пике 20 МБ/с, обычно 0-4 МБ/с; LAN в пике 40 МБит/с, обычно 2-10 МБит/с.Сетевую карту лучше поставить отдельную, встроенный Realtek слабоват. Он имеет б О льшие буфера для входящего трафика- нужно наоборот. На отдельной сетевой карте увеличить исходящие буфера до максимума. ДаниилВ итоге видимое узкое место - это процессор.Так всегда кажется, но чаще всего узким местом является программный стек. ДаниилПри пиковой нагрузке, когда около 60-80 операторов создают новые заявки (1 заявка - это INSERT по 20-100 записей в 5-10 таблиц огромного размера + привязанная в этому бизнес-логика на 15-20 триггеров и около 20-30 ХП, меняющих еще 10-15 таблиц) и эта заявка сохраняется (в толстом клиенте, но вся бизнес-логика выполняется на стороне сервера) до 5-7 секунд. Это много. Считаю нормой - максимум 2 секунды.Количество залогиненных пользователей не так важно. Нужно смотреть на количество одновременно выполняющихся запросов за одну секунду. Оно не должно быть существенно больше количества ядер процессора. Пики возможны, но не должны быть длительными. ДаниилКроме этого у пользователей есть достаточно сложные отчеты, которые могут формироваться до 1-2 минут.Нельзя ли настроить репликацию или что-то подобное на отдельный компьютер? OLTP и отчётная (или OLAP) нагрузки плохо совместимы, начиная с определённого уровня. Отчёты можно держать на readonly базе, если софт умеет- иногда это улучшает производительность. ДаниилПоскольку процессор на обычном бытовом компьютере апгредить уже нет смысла, то пора переходить на серверное железоСмысл зависит от многого. Если дадут денег, то можно. Однако, серверное железо и софт будут существенно дороже. Нужно много вложить, чтобы получить сходную производительность. Серверное железо не для производительности, а для большего количества обслуживаемых клиентов и "гарантированной" безотказности. Даниил (не исключая оптимизации DDL и запросов).В первую очередь. Может, не понадобится сервер. Даниил1) Даст ли ощутимый прирост производительности переход на процессоры Xeon Gen9 или Gen10 Silver c 16 ядрами но частотой 2.1-2.4ГГц (вместо i7 8 ядер 3.4ГГц) или же требуется увеличить кол-во ядер при сохранении примерно той же частоты что у i7 3-4 ГГц?Смотрите на число одновременно выполняющихся запросов. Плюсы серверного процессора: ядер больше, кеш больше. Минусы: частота либо существенно меньше, либо несущественно, но с огромным ценником и кондиционированная серверная нужна- шумит и греется. Обычно, для серверов и память медленная, но чуть надёжнее. Если в базе много алгоритмической работы, то может требоваться большая частота. Мощные десктопные процессоры в некоторых случаях лучше: Если одновременных запросов меньше, то предпочтительнее частота: i7-7700k i7-7740x Если одновременных запросов больше, то предпочтительнее греющиеся ядра и L2 кеш: i7-7820x i7-9800x ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2019, 10:33 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
ДаниилМожете подсказать, каким инструментом это можно посмотреть? WinDbg, Process Explorer. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2019, 12:45 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2019, 12:48 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
tunknownВидимо, Process Monitor Нет, монитор годится для выяснения "чем занят диск/сеть/реестр". Для процессора нужны стэки нагруженных потоков из эксплорера или отладчика. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2019, 12:51 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Дегтярев ЕвгенийDmSerОткуда такая нагрузка на SSD, если вся база закеширована в памяти? откуда она там возьмется kdvDefaultDbCachePages = 384 маловато как-то. База в ОЗУ в файловом кэше ОС. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2019, 13:12 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Дегтярев ЕвгенийСимонов Денисвам надо оперативной памяти нарастить и увеличить размер страничного кеша для начала, но не более чем до 2048 страниц (это для классика). все равно не поможет, если 1.5 гига с диска поднимается ну может хоть верхние уровни индексов оставаться будут ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2019, 13:17 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Симонов ДенисДаниилДля каждой позиции подтягивается свой прайс, где цена рассчитывается по нескольким параметрам (в т.ч. агрегациям по 2 немаленьким таблицам) и подтягиваются правила добавления для каждой позиции (у разной добавляемой позиции может быть различный механизм добавления сопутствующих параметров в одну/несколько таблиц (разные сущности). Про оптимизацию понял. Пересмотрю, что можно переделать на хранимые агрегации и число чтений уменьшить. Вот с этого и надо начинать. Агрегировать каждый раз при добавлении позиции это онанизм какой-то. Во-первых прайсы так обычно не пересчитывают, хотя бы потому что плавающая цена в течении дня это не очень хорошо. Я не знаю что там у вас за бизнес правила, но скажу что делал я одного оптовика фарм препаратов. У них розничный прайс пересчитывается на оприходовании, а оптовый раз в неделю. Цена на 1 позицию берется из прайса клиента на определенную дату, далее высчитывается скидка на эту позицию (по своему алгоритму выдачи возможной скидки на каждую из позиций) исходя из общей накопленной суммы за незакрытый период (месяц) и сравнивается, укладывается ли вся ненакопленная сумма незакрытого периода в ограничение по клиенту и далее ветки действий по каждому возможному случаю. Все это должно быть "онлайн" без дискретных периодов пересчета (день-неделя-месяц). ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2019, 13:21 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
tunknownЛучше аппаратная плата RAID1 на 2 HDD или RAID10 на 4. Тогда будет до 4 потоков на чтение и до двух на запись. Винчестеры лучше выбирать классом повыше. ДаниилНа механических винчестерах оно будет тупить настолько безбожно, что можно даже не начинать. HDD это опечатка? Даниилкаким инструментом это можно посмотреть?Смотреть надо на вкладку "перфонанс аналитика" а эксперте. Не забивай голову всякой хренью тпа "чем занят проц" и так ясно, что он агрегирует данные и это надо вынести в хранимый агрегат и подновлять его в фоне. Немного нивелировать проблему может помочь переход на 3 ss и разгон закэшированных страниц до примерно половины ОЗУ. Добавление памяти до 64 гб (в десктоп врядли влезет больше), когда не хватит 64 купите полноценную серверную железку. Отдельно ПРОЦ менять нет НИКАКОГО смысла. Из того, что можно сделать быстро, это сгонять в магазин и купить 4 планки по 16 гиг. Если бы была маркировка матплаты можно было сказать точнее. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2019, 14:47 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
tunknownДаниил16 Гб ОЗУ Занятая память: 5-8ГбМало. Ради дискового кеша нужно больше. Есть смысл стремится к тому, чтобы весь объем БД влезал в ОЗУ? tunknownДаниил / БД на быстром SSD / Ширпотребный SSD не для сервера. Enterprise SSD (SLC/MLC) имеют большую цену, а ширпотребные TLC/MLC- мусор с заранее неизвестным качеством и сроком жизни. Особенно, с OLTP нагрузкой. К тому же, один ширпотребный SSD плохо держит параллельную нагрузку. Лучше аппаратная плата RAID1 на 2 HDD или RAID10 на 4. Тогда будет до 4 потоков на чтение и до двух на запись. Винчестеры лучше выбирать классом повыше. Сейчас мы меняем SSD планово раз в год. Но сейчас под БД заготовлен нормальный RAID с батарейкой на 5 дисках. Проводил замеры скорости пока просто копированием файла - примерно одинаково (SSD = RAID). Как будет при реальной нагрузке пока не знаю. tunknownКоличество залогиненных пользователей не так важно. Нужно смотреть на количество одновременно выполняющихся запросов за одну секунду. Оно не должно быть существенно больше количества ядер процессора. Пики возможны, но не должны быть длительными. Как это посмотреть? Посчитать по MON$TRANSACTIONS? Но там только активные будут. tunknownДаниилКроме этого у пользователей есть достаточно сложные отчеты, которые могут формироваться до 1-2 минут.Нельзя ли настроить репликацию или что-то подобное на отдельный компьютер? OLTP и отчётная (или OLAP) нагрузки плохо совместимы, начиная с определённого уровня. Отчёты можно держать на readonly базе, если софт умеет- иногда это улучшает производительность.Репликацию силами самого Firebird это можно будет сделать только в 4й версии сервера? tunknownДаниилПоскольку процессор на обычном бытовом компьютере апгредить уже нет смысла, то пора переходить на серверное железоСмысл зависит от многого. Если дадут денег, то можно. Однако, серверное железо и софт будут существенно дороже. Нужно много вложить, чтобы получить сходную производительность. Серверное железо не для производительности, а для большего количества обслуживаемых клиентов и "гарантированной" безотказности.Т.е. для 100-150 клиентов покупать серверный xeon на более десятка ядер при нормально спроектированной и оптимизированной БД не имеет смысла? tunknownДаниил (не исключая оптимизации DDL и запросов).В первую очередь. Может, не понадобится сервер.Да, до меня это уже дошло. Даниил1) Даст ли ощутимый прирост производительности переход на процессоры Xeon Gen9 или Gen10 Silver c 16 ядрами но частотой 2.1-2.4ГГц (вместо i7 8 ядер 3.4ГГц) или же требуется увеличить кол-во ядер при сохранении примерно той же частоты что у i7 3-4 ГГц?Смотрите на число одновременно выполняющихся запросов. Про процессоры понял. Серверная есть и она более-менее нормально устроена. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2019, 15:46 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Ivan_PisarevskyНа механических винчестерах оно будет тупить настолько безбожно, что можно даже не начинать. HDD это опечатка?Зависит от нагрузки. Если отдаётся много мелких непоследовательных наборов данных, то RAID 10/4 HDD не будет быстрее. Если отдаются большие последовательные данные, то 4 медленных потока могут стать лучше одного быстрого. Запись тоже имеет свои особенности. Не учитывая этого можно вынести бюджет TBW за месяц. Но держать OLTP базу на SSD- это либо нонсенс, либо предмет гордости администратора, что у него все процессы не хуже Tier 3 и есть горячий резерв с гарантированным простоем не больше минут. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2019, 15:54 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Ivan_PisarevskyНа механических винчестерах оно будет тупить настолько безбожно, что можно даже не начинать. Я уже почти собрался менять SSD на RAID5 или RAID10 на механических HDD (есть в наличии, на другом мало используемом сервере). Раньше все такие рейды были, чем плохи? Лучше по вашему выбрать вариант RAID на SSD? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2019, 15:58 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
15.03.2019 15:58, Даниил пишет: > Лучше по вашему выбрать вариант RAID на SSD? денех не хватит. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2019, 16:02 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
ДаниилТ.е. для 100-150 клиентов покупать серверный xeon на более десятка ядер при нормально спроектированной и оптимизированной БД не имеет смысла? Имеет. Но если только купить новый сервер и ничего не переделывать результат может разочаровать. Ожидание всё должно работать в 5 раз быстрее, на деле оказывается в 2. А сервер то дорогой. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2019, 16:05 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
ДаниилЕсть смысл стремится к тому, чтобы весь объем БД влезал в ОЗУ?Не уверен, что используемая версия СУБД имеет собственное полноценное кеширование, как ведёт себя ОС- отдельный вопрос. Всегда существуют части, котором обязательно нужно сбросится на диск. И размер данных не всегда позволяет. ДаниилКак это посмотреть? Посчитать по MON$TRANSACTIONS? Но там только активные будут.Что-то подобное fbprofiler , вероятно, будет полезным. ДаниилТ.е. для 100-150 клиентов покупать серверный xeon на более десятка ядер при нормально спроектированной и оптимизированной БД не имеет смысла?Если количество одновременных запросов превышает в полтора раза количество ядер под СУБД более 2-3% рабочего времени или это происходит подряд или попадает на какое-нибудь закрытие смены, то проблему придётся решать. Сервер на нескольких W-3175X - это самое дешёвое решение в смысле усилий программиста. Например, если при открытии документа на редактирование тянется куча редкоизменяемых справочников и эти справочники обновляются не их основными потребителями, то их можно положить на отдельный компьютер под репликацией. Пусть приложение ходит на 2 сервера. Или кешировать в локальный, например, sqlite. Тем более, что софт самописный. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2019, 16:21 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
15.03.2019 16:21, tunknown пишет: > то их можно положить на отдельный компьютер под репликацией. вася, шел бы ты отсюда... Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2019, 16:23 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
ДаниилRAID5Лучше не стоит. Зеркала или RAID 10 вполне достаточно. ДаниилЛучше по вашему выбрать вариант RAID на SSD?И будут они жить долго и счастливо, пока не умрут в один день или раньше, от кривизны в прошивке. Или придётся следить за графиком ротации, следить за деградацией и подтягивать процессы к Tier 3. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2019, 16:25 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
ДаниилТ.е. для 100-150 клиентов покупать серверный xeon на более десятка ядер при нормально спроектированной и оптимизированной БД не имеет смысла?Серверное железо это не только "дорого" и "много ядер/памяти", это еще и мониторинг, ЕСС память, ипми, сдвоенные БП и т.п. ДаниилЯ уже почти собрался менять SSD на RAID5 или RAID10 на механических HDD (есть в наличии, на другом мало используемом сервере). Раньше все такие рейды были, чем плохи?механический диск выдает на гора примерно 100 операций в секунду, если повезет до 200. тем и плохи рэйди старые они медленные, посмотри сколько ты ты уже укушал иопсов и сравни с чиселкой 100. Да рэйд за счет кэширования в самом контроллере может выдавать куда интересней циферки, но как только пошел обмен именно с блинами, а не с ТББУ то см. выше про 100. tunknownНо держать OLTP базу на SSD- это либо нонсенстак и запишем - теоретег. ДаниилЛучше по вашему выбрать вариант RAID на SSD?мы сейчас упаковали свои серверы интеловыми ссдшками 4610 в зеркало+хотспар на адптеке получилось вполне себе шустро. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2019, 16:50 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
tunknownИ будут они жить долго и счастливо, пока не умрут в один день или раньше, от кривизны в прошивке.прислать наложенным платежом дюжину-другую дохлых ХДД? диски что хдд, что ссд это расходный материал, да за ними надо планово следить и планово заменять. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2019, 16:53 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Ivan_Pisarevskyмы сейчас упаковали свои серверы интеловыми ссдшками 4610 в зеркало+хотспар на адптеке получилось вполне себе шустро.Если это 64-Layer 3D TLC NAND , то при наличии админов- это не проблема. Ёмкое устройство на сомнительных моделях микросхем. Следите, чтобы readonly для них не случился слишком рано. Ivan_Pisarevskyприслать наложенным платежом дюжину-другую дохлых ХДД? диски что хдд, что ссд это расходный материал, да за ними надо планово следить и планово заменять.Что SSD, что HDD- видел. Но в случае с SSD лотерея несколько лотерейнее. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2019, 17:39 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Мимопроходящий15.03.2019 16:21, tunknown пишет: > то их можно положить на отдельный компьютер под репликацией. вася, шел бы ты отсюда... Я тож поржал. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2019, 18:22 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
tunknownЁмкое устройство на сомнительных моделях микросхем.да 37 серия мне понравилась больше, ресурс больше, ни одного отказа за 5 лет и исчерпание ресурса мизерное, несмотря на постоянную долбежку, посмотрели по факту на расход ресурса и взяли менее ресурсные, по идее должно хватить на расчетный срок. Хотя я бы и взял 37, но у поставщика были в наличии только 46, а бюджет как обычно "горит". :) ... |
|||
:
Нравится:
Не нравится:
|
|||
15.03.2019, 18:28 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Сегодня перед работой поднял DefaultDbCachePages до 1536. Получилось следующее:Обращения к диску/с Среднее: 115 Максимальное: 1170 Обращений чтения с диска/с Среднее: 2.3 Максимальное: 58 Обращений записи с диска/с Среднее: 114 Максимальное: 1164 Средняя длина очереди диска Среднее: 0.047 Максимальное: 0.303 % загруженности процессора Минимум: 5.6 Среднее: 22 Максимальное: 68 Ранее средняя загрузка процессора была 46%. Памяти стало чуть больше занимать - 7 Гб вместо 5Гб. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.03.2019, 08:59 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Если недорогой RAID 1 (увеличение скорости не нужно, увеличение надежности нужно) рассматривать на 2 SSD, то что лучше в плане надежности: 1) аппаратный Adaptec/Intel + 2 SATA/SAS/U.2 - диска или 2) программный RAID на 2 PCi (у них скорость чтения/записи лучше чем у SATA/SAS/U.2 , но аппаратных рейдов для таких плат не видел)? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.03.2019, 09:07 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
ДаниилПамяти стало чуть больше занимать - 7 Гб вместо 5Гб. А теперь покажи результат fb_lock_print. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
19.03.2019, 13:19 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
ДаниилЕсли недорогой RAID 1 (увеличение скорости не нужно, увеличение надежности нужно) рассматривать на 2 SSD, то что лучше в плане надежности: 1) аппаратный Adaptec/Intel + 2 SATA/SAS/U.2 - диска или 2) программный RAID на 2 PCi (у них скорость чтения/записи лучше чем у SATA/SAS/U.2 , но аппаратных рейдов для таких плат не видел)? изучение теории надежности (Опасность и Безнадежность). в системе с аппаратным рэйдом и двумя дисками три элемента, один из которых не имеет резервирования. диск из программного рэйда можн прочитать на соседнем компе. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.03.2019, 14:01 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
pastorдиск из программного рэйда можно прочитать на соседнем компе.диск(и) из аппаратного не менее успешно читается на аналогичном контроллере. Т.к. инфа о том, членом какого массива оный является записана на каждом диске массива. софт рэйд очень весело разваливается при пропадании питания. УПС с обратно связью надеюсь, подразумевается? ... |
|||
:
Нравится:
Не нравится:
|
|||
19.03.2019, 14:13 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Ivan_Pisarevskypastorдиск из программного рэйда можно прочитать на соседнем компе.диск(и) из аппаратного не менее успешно читается на аналогичном контроллере . Т.к. инфа о том, членом какого массива оный является записана на каждом диске массива. софт рэйд очень весело разваливается при пропадании питания. УПС с обратно связью надеюсь, подразумевается? т.е. при наличии резервирования оного контроллера. софт рэйд также быстро восстанавливается :). наличие УПС сильно положительно сказывается на стабильности соединения с сервером. в далекой молодости ставили сервера с резервированными блоками питания. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.03.2019, 14:46 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
19.03.2019 14:46, pastor пишет: > в далекой молодости ставили сервера с резервированными блоками питания. оные и по сей день применяются и выпускаются. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
19.03.2019, 14:53 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
pastorсофт рэйд также быстро восстанавливается :).Счет идет на часы. А если вовремя не заметили? pastorпри наличии резервирования оного контроллера.Да, да фары дворники и тормоза придумали трусы! И хотспаре диски тоже. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.03.2019, 15:04 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Ivan_Pisarevskypastorсофт рэйд также быстро восстанавливается :).Счет идет на часы. А если вовремя не заметили? pastorпри наличии резервирования оного контроллера.Да, да фары дворники и тормоза придумали трусы! И хотспаре диски тоже. софт рейд восстановится. не намного дольше, чем аппаратный. автор топика спрашивает о сравнении надежности одиночного аппаратного рэйда с двумя дисками и просто двумя дисками, особо оговаривая при этом, что производительность не беспокоит . я всего лишь указал на уязвимость одинокого контроллера, который сводит всю надежность к надежности одной платы. у нас достаточно много заказчиков, которые могут себе позволить 30 минут простоя, но не могут позволить полной потери данных. после эксгумации сервера, диск с базой втыкается в комп кассы и молотит там пока не привезут новый. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.03.2019, 15:21 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
pastor производительность не беспокоит .Первый пост в топике говорит немного об обратном. pastorя всего лишь указал на уязвимость одинокого контроллера, который сводит всю надежность к надежности одной платы.дисков дохлых видел реально много, дохлого адаптека или LSI до сих пор не приходилось видеть ни разу. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.03.2019, 16:41 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Ivan_Pisarevskypastor производительность не беспокоит .Первый пост в топике говорит немного об обратном. Это о производительности системы в штатном режиме. Про время допустимого простоя - нет. Возможно, это мои домыслы. Я художник, я так вижу :) Регенерация программного рэйда идет на ходу, так же как и аппаратного. и тоже с потерей производительности. Ivan_Pisarevskypastorя всего лишь указал на уязвимость одинокого контроллера, который сводит всю надежность к надежности одной платы.дисков дохлых видел реально много, дохлого адаптека или LSI до сих пор не приходилось видеть ни разу. я видел. не раз. на большом однотипном парке - терпимо. на одиночном объекте - фатально. Критерий один - цена часа простоя. Если она превышает стоимость запасного сервака - то надо его ставить. Нет - так и пес с ним. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.03.2019, 17:07 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovА теперь покажи результат fb_lock_print. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2019, 13:52 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Ivan_Pisarevskypastor производительность не беспокоит .Первый пост в топике говорит немного об обратном. Сформулирую свою мысль более развернуто. Мне необходима достаточная производительность всего сервера в целом. Так же мне необходима и достаточная для моего случая надежность (ниже опишу что я под этим понимаю) Для себя из всего обсуждения наметил следующий порядок действий (в порядке приоритета): 1) Более плотно подойти к оптимизации БД. Провести оценку структуры, индексов (избыточность), триггеров (расчет агрегаций), запросов. Цель: уменьшить количество обращений к диску, снизить нагрузку на процессор. 2) Увеличить память до 64Гб. После этого посмотреть еще раз на производительность. Возможно, процессор станет справляться с нагрузкой. 3) Поменять 1 SSD на RAID из SSD. И тут 3 пункт для меня пока не очень понятен. С одной стороны в Firebird_Hardware_Guide говорится, что FB достаточно критичен к скорости хранилища БД. С другой стороны скорости 1 SSD вроде бы (?) достаточно, но его надежность под большим сомнением. Поэтому оставив ту же производительность хочу поставить RAID 1, который даст некую уверенность. Относительно разумных денег будут стоить 2 SSD на PCI, которые дадут еще бОльшую производительность относительно SATA/SAS/U.2 SSD дисков, но для них нет аппаратных контроллеров. Либо, выбрав на хороших SATA/SAS/U.2 SSD дисках аппаратный RAID-контроллер даже с батарейкой, при выходе его из строя - я теряю всю БД (восстановление бэкапа рассматриваем как крайний случай - это дополнительное время и потеря новых данных с последнего бэкапа). Если при выходе из строя железа сервера с программным RAID-ом есть надежда, что подоткнув один из SSD дисков в резервный сервер можно быстро запустить работу, то с аппаратным контроллером это будет значительно сложнее. Держать в резерве еще один контроллер я не готов. Питание сервера сейчас такое: здание подключено по 2й категории, время переключения на 2й кабель (от другого трансформатора) 10 минут, ИБП Eaton Powerware с двойным преобразованием выдерживает 40 минут. В принципе, можно подсоединить еще 1-2 доп.батареи и увеличить время работы от ИБП часов до 2-3. ... |
|||
:
Нравится:
Не нравится:
|
|||
20.03.2019, 14:30 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
ДаниилDimitry SibiryakovА теперь покажи результат fb_lock_print. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13.
... |
|||
:
Нравится:
Не нравится:
|
|||
22.03.2019, 06:57 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
ДаниилИБП Eaton Powerware с двойным преобразованием выдерживает 40 минут. В принципе, можно подсоединить еще 1-2 доп.батареи и увеличить время работы от ИБП часов до 2-3.Дело не во времени работы, надо чтобы система сервер-УПС корректно погасла при пропадании питания. Даниилвосстановление бэкапа рассматриваем как крайний случай - это дополнительное время и потеря новых данных с последнего бэкапапосмотри внимательней на утилиту nbackup и возможность работы с инкрементарным бэкапом. потери можно свести до нескольких минут. В тройке ее работа подверглась серьезной оптимизации. ДаниилЛибо, выбрав на хороших SATA/SAS/U.2 SSD дисках аппаратный RAID-контроллер даже с батарейкой"батарейка" и соответственно райтбэк кеширование на ССД уже дает столь драматического прироста производительности как на хдд, надо просто свежий скоростной контроллер, который сможет пробросить через себя требуемые ИОпсы. ... |
|||
:
Нравится:
Не нравится:
|
|||
22.03.2019, 09:43 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
ДаниилПодскажите, на какие цифры смотреть? Единственное на что можно повлиять с предсказуемыми результатами это "Hash slots: 30011, Hash lengths (min/avg/max): 0/ 1/ 6", но у тебя и так hash slots задраны до небес. Уменьшение слишком большого числа слотов может дать прирост производительности, но незначительный, гораздо меньший, чем увеличение в случае если бы их не хватало. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
22.03.2019, 13:10 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Подниму свою старую тему по поводу попытки увеличения производительности. На данный момент настраиваю сервер FB на новом железе. Решил, что экспериментировать с переходом с 2.5 на 3.0 пока рано, поставил последнюю версию сервера ветки 2.5 (2.5.9.27139). С целью экономии остановился на варианте быстродействующего персонального компьютера вместо серверной платформы. Цена вопроса: 200 тыс.руб. (на i9) вместо 1200 тыс. (на Xeon Gold). Пока что провел тестирование только дисковой подсистемы с помощью backup'а. БД размером 57 Гб бэкапится в 35 Гб за 12 минут (50 Мб/с). Судя по статье ( http://www.ibase.ru/backupspeed3/) - это хорошие показатели. К сообщению приложил скриншот тестов дисков для DB и backup-а CrystalDiskMark'ом. Сейчас хочу оптимально выставить настройки сервера для максимальной производительности. Подскажите, правильно ли я подобрал параметры? Исходные данные такие: Размер БД: 57 Гб. Из них оперативные данные - это не более 5-10 Гб. Все остальные - архивные данные, которые редко читаются и практически никогда не изменяются. Firebird 2.5.9.27139 Classic. OC WIndows 2016std. Объем ОЗУ: 64 Гб (с возможностью нарастить до 128Гб, но пока не понятна целесообразность, пусть будет 64). Количество одновременно работающих пользователей: 120-140. БД расположена на отдельном от системного диска SSD. Так же в firebird.conf выделен отдельный HDD для TempDirectories (тот, что для используется для ежедневных бэкапов). Использую один и тот же диск исходя из логики, что таблицы сортировки серверу будут не нужны, когда все пользователи отключены и запущен gbak. А затем файл с бэкапом потихоньку забирается с этого быстрого но небольшого диска (запас диска от текущего размера бекапа - шестикратный) на большой медленный диск и далее на сетевые хранилища. Исходя из статей по оптимизации настроек и размера ОЗУ, прописал в firebird.conf (для Page size 16384) следующее: DefaultDbCachePages = 1536 # Пока поставил немного менее 2048 FileSystemCacheThreshold = 8192 # Должен быть больше CachePages. На сколько больше? Достаточно ли ограничения в 128Гб? LockMemSize = 23040000 # LockMemSize >= Cache_pages * max_connections_count * 100 (Посчитал для 150 пользователей) FileSystemCacheSize = 25 # Отдаем 16 Гб памяти под кэш ОС. Или не надо это явно ограничивать? TempCacheLimit = 8192M # Отдаем 8Гб памяти для сортировок TempBlockSize = 64M # По совету dimitr (TempBlockSize я бы советовал выставлять не более 5% от TempCacheLimit и не менее 1МБ (дефолтное значение)) LockHashSlots = 30011 # Из оптимизированного конфига с ibase.ru ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2019, 15:41 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
ДаниилFileSystemCacheThreshold = 8192 # Должен быть больше CachePages. На сколько больше? Достаточно ли ограничения в 128Гб? эту настройку можно было вообще не трогать. Там и так большое значение по умолчанию Для классика полюбас подойдёт. Как гигабайты насчитал? ДаниилTempCacheLimit = 8192M # Отдаем 8Гб памяти для сортировок для классика многовато будет. Этот параметр общий в SS и SC, но не в классике. Надеюсь буковку M не оставил. Это работает начиная с 3.0. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2019, 16:37 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
ДаниилРазмер БД: 57 Гб. Из них оперативные данные - это не более 5-10 Гб. Все остальные - архивные данные, которые редко читаются и практически никогда не изменяются. Firebird 2.5.9.27139 Classic. OC WIndows 2016std. Объем ОЗУ: 64 Гб (с возможностью нарастить до 128Гб, но пока не понятна целесообразность, пусть будет 64). Количество одновременно работающих пользователей: 120-140. БД расположена на отдельном от системного диска SSD. Так же в firebird.conf выделен отдельный HDD для TempDirectories (тот, что для используется для ежедневных бэкапов).Плохая идея. В C:\ProgramData\firebird расположены lock-файлы, для которых (тоже) нужен быстрый доступ. И для сортировок. В вашем раскладе легко получить 100% загрузки системного диска с огромной очередью и огрестись тормозами "вообще всего". Если не хотите размещать систему на SSD целиком, то "откусите" от SSD диска несколько гигабайт, создайте отдельный раздел и подмонтируйте его к пустому C:\ProgramData\firebird. Всё это можно проделать "онлайн" и остановка FB потребуется только для того, чтобы очистить ProgramData/firebird и смонтировать туда подготовленный раздел. Чтобы переместить на SSD fb_table, fb_sort и прочие временные файлы FB, установите глобальную переменную FIREBIRD_TMP (setx /m или аплет sysdm.cpl) в отдельный (существующий) каталог SSD-диска. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2019, 17:41 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Даниил Код: plaintext 1. 2. 3.
Причём от соответствующей версии, а не от произвольной: Код: plaintext 1. 2. 3. 4.
В пропущенном тоже немало интересного. Предельный размер буфера сортировок SuperClassic'а (общий на все подключения) должен быть менее 2ГБ. ... |
|||
:
Нравится:
Не нравится:
|
|||
27.08.2019, 17:52 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Симонов ДенисДаниилFileSystemCacheThreshold = 8192 # Должен быть больше CachePages. На сколько больше? Достаточно ли ограничения в 128Гб? эту настройку можно было вообще не трогать. Там и так большое значение по умолчанию Для классика полюбас подойдёт. Как гигабайты насчитал? Как я понял из https://ib-aid.com/download/webinar/memory_usage_in_firebird1.pdf 8192 - это максимальный размер кэша ОС, который может использовать FB при необходимости, измеряется в количестве страниц Поэтому 8192*16384=134217728=128Гб Симонов ДенисДаниилTempCacheLimit = 8192M # Отдаем 8Гб памяти для сортировок для классика многовато будет. Этот параметр общий в SS и SC, но не в классике. Надеюсь буковку M не оставил. Это работает начиная с 3.0. Вообще-то оставил, но пока на обсуждаемом конфиге не запускал. Комп сейчас свободный стоит, пока все хотя бы первоначально не настрою. Про ошибку свою понял. Про память для сортировок читал http://www.ibase.ru/files/firebird/Firebird_Hardware_Guide_2015_rus.pdf и https://ib-aid.com/download/webinar/memory_usage_in_firebird1.pdf но в итоге посчитал кэш общим для всех процессов (как в FB 3.0). Скачанный с www.ibsurgeon.com конфиг для Firebird 2.5 64-bit Classic содержит значение для TempCacheLimit = 77108864 и TempBlockSize = 2048576. Сделаю их такими. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2019, 07:16 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Basil A. SidorovДаниилРазмер БД: 57 Гб. Из них оперативные данные - это не более 5-10 Гб. Все остальные - архивные данные, которые редко читаются и практически никогда не изменяются. Firebird 2.5.9.27139 Classic. OC WIndows 2016std. Объем ОЗУ: 64 Гб (с возможностью нарастить до 128Гб, но пока не понятна целесообразность, пусть будет 64). Количество одновременно работающих пользователей: 120-140. БД расположена на отдельном от системного диска SSD. Так же в firebird.conf выделен отдельный HDD для TempDirectories (тот, что для используется для ежедневных бэкапов).Плохая идея. В C:\ProgramData\firebird расположены lock-файлы, для которых (тоже) нужен быстрый доступ. И для сортировок. В вашем раскладе легко получить 100% загрузки системного диска с огромной очередью и огрестись тормозами "вообще всего". Если не хотите размещать систему на SSD целиком, то "откусите" от SSD диска несколько гигабайт, создайте отдельный раздел и подмонтируйте его к пустому C:\ProgramData\firebird. Всё это можно проделать "онлайн" и остановка FB потребуется только для того, чтобы очистить ProgramData/firebird и смонтировать туда подготовленный раздел. Чтобы переместить на SSD fb_table, fb_sort и прочие временные файлы FB, установите глобальную переменную FIREBIRD_TMP (setx /m или аплет sysdm.cpl) в отдельный (существующий) каталог SSD-диска. Firebird 2.0 Administrators ManualUse the TempDirectories parameter to specify where the server will create temporary sort files. Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ Борри ХеленПеременная окружения FIREBIRD_TMP (В версии 1.0.x - INTERBASE TMP) задает пользовательское размещение для файлов сортировки Firebird. Доступны также другие способы определения размещения этих файлов. Конфигурирование параметра TempDirectories Зачем мне тогда указывать FIREBIRD_TMP? Или параметр TempDirectories в конфиге задает место для сортировок, а системная переменная FIREBIRD_TMP не только сортировки, но еще и другие файлы? Не нашел этого в инструкциях. Диск для ОС у меня на самом деле точно такой же модели как для файла сортировок и еженочных оперативных бэкапов - SSD SAMSUNG 970 EVO Plus MZ-V7S250BW 250Гб, M.2 2280, PCI-E x4, NVMe. Это достаточно быстрый диск. Тормозов "вообще всего" быть не должно. А файл базы лежит на еще более быстром диске - зеркале из двух SSD INTEL Optane 900P SSDPED1D280GASX 280Гб, PCI-E AIC (add-in-card), PCI-E x4, NVMe Их скорости я выкладывал вчера. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2019, 07:41 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Basil A. SidorovДаниил Код: plaintext 1. 2. 3.
Причём от соответствующей версии, а не от произвольной: Код: plaintext 1. 2. 3. 4.
В пропущенном тоже немало интересного. Предельный размер буфера сортировок SuperClassic'а (общий на все подключения) должен быть менее 2ГБ. Про FileSystemCacheThreshold ошибку свою понял, а с FileSystemCacheSize в чем проблема? В оригинальном .conf написано, что его не надо дель меньше 10%, а рекомендуемое значение - это 30%. Я сделал 25%. От 64Гб ОЗУ это = 16Гб. Должно быть достаточно для ОС. Никаких других задач кроме сервера БД, этот компьютер выполнять не будет. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2019, 07:49 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
ДаниилСимонов Денис эту настройку можно было вообще не трогать. Там и так большое значение по умолчанию Для классика полюбас подойдёт. Как гигабайты насчитал? Как я понял из https://ib-aid.com/download/webinar/memory_usage_in_firebird1.pdf 8192 - это максимальный размер кэша ОС, который может использовать FB при необходимости, измеряется в количестве страниц Поэтому 8192*16384=134217728=128Гб ну что за привычка придумывать что-то от себя. В конфиге в комментарии к этому параметру всё написано. авторПараметр FileSystemCacheThreshold устанавливает порог использования системного файлового кэша сервером Firebird. Системный файловый кэш используется, если размер страничного кэша (установленного явно в заголовке базы данных или через параметр конфигурации DefaultDbCachePages) меньше чем значение FileSystemCacheThreshold. Параметр имеет целочисленный тип. Единица измерения – страница базы данных. По умолчанию параметр имеет значение — 65536 страниц. Если значение параметра FileSystemCacheThreshold равно 0, то сервер не будет использовать системный файловый кэш. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2019, 08:16 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Даниил, у меня ощущение что с английским у вас не очень. А ведь этот материал есть на русском языке. Причём он изначально на нём был, и только потом переведён для зарубежных семинаров. http://www.ibase.ru/news/materialy-vebinara-effektivnoe-ispol-zovanie-pamati-subd-firebird/ ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2019, 08:27 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Симонов ДенисВы фигнёй там страдаете. Нормально спроектированная система не нуждается в постоянном b/r. Чушь. Даже если исключить физическое повреждение данных (чего исключать нельзя), то данные могут быть испорчены логически, ошибочно выполненной необратимой операцией. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2019, 09:43 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Alibek B., чушь у вас написана. Я не сказал что база данных не нуждается в backup. Он то как раз нужен всегда. restore нужен как раз только тогда когда вы обнаружили что БД повреждена, ну и для проверки бекапа. А вот ежедневный/недельный... backup/restore с заменой оригинальной БД — это как раз попытка спрятать мусор под ковёр — обойти кривые решения программистов и не умение работать с транзакциями. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2019, 10:04 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Всегда нужно проверять целостность полученного бэкапа. А лучший способ для этого — восстановить его. Все остальное — компромиссы, иногда вынужденные (например если база очень большая). Вот замена оригинальной БД — это действительно странно, тут соглашусь. Я обычно восстановленным бэкапом меняю тестовую базу. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2019, 10:17 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Alibek B.Всегда нужно проверять целостность полученного бэкапа. В какой момент по-Вашему этот должен испортиться? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2019, 10:25 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
KreatorXXI, этот бэкап должен испортиться? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2019, 10:28 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
ДаниилПоэтому 8192*16384=134217728=128Гб прикольно получилось: 8к страниц * 16к байт, равно 128 гигабайт :-) мегабайт, конечно. В общем, главное что разобрались. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2019, 10:42 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Даниилс FileSystemCacheSize в чем проблема?Не трогай его. Оставь 0 и забудь, что он есть. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2019, 11:07 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
KreatorXXI , в неожиданный, разумеется. Если бы отказы можно было бы предопределять, они бы не были отказами. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2019, 11:22 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Симонов ДенисДаниил, у меня ощущение что с английским у вас не очень. А ведь этот материал есть на русском языке. Причём он изначально на нём был, и только потом переведён для зарубежных семинаров. http://www.ibase.ru/news/materialy-vebinara-effektivnoe-ispol-zovanie-pamati-subd-firebird/ Как показали в предыдущем сообщении, у меня и с математикой аналогично) Спасибо за ссылку на вебинар, обязательно посмотрю (мне кажется, саму презентацию уже где-то видел). У меня пока знаний по настройке сервера на уровне "возьму рекомендуемый оптимизированный конфиг и посмотрю как будет работать", но хотелось бы конечно во всем разобраться. Спасибо всем за помощь. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2019, 11:54 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Alibek B. KreatorXXI , в неожиданный, разумеется. Если бы отказы можно было бы предопределять, они бы не были отказами. Если что-то отказывает, особенно в неожиданный момент, надо это лечить. Либо отказываться от такой системы. Тут же несколько вариантов. 1. Сбой gbak. Тогда претензия к разработчикам ФБ. 2. Файловый сбой. Меняем железо. И т.д. Не понимаю, когда "Система крайне ненадёжна. Приходиться ставить кучу костылей." И продолжать работать в таком режиме. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2019, 11:58 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
KreatorXXI, В Firebird до 3.0 можно выполнить такой запросик Код: sql 1.
Если в таблице были данные и после этого запроса не сделали update для field1, то с restore будут проблемы. Это с одной стороны косяк разработчика БД, с другой сама СУБД не проконтроллировала. Но я бы не назвал такой бекап невосстановимым. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2019, 12:06 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Alibek B.Всегда нужно проверять целостность полученного бэкапа. А лучший способ для этого — восстановить его.А худший способ восстановления - перезаписать исходную базу. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2019, 12:22 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
KreatorXXIЕсли что-то отказывает, особенно в неожиданный момент, надо это лечить. Откровения теоретика? Если что-то отказало, то лечить может быть уже поздно. А отказать может что угодно и когда угодно. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2019, 13:00 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Alibek B.Если что-то отказало, то лечить может быть уже поздно. Ну да, если не заниматься профилактикой и полагаться исключительно на бэкап, то пушной зверёк всегда приходит неожиданно. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2019, 13:04 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Проверка целостности бэкапа рестором — и есть профилактика. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2019, 14:14 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Alibek B.Проверка целостности бэкапа рестором — и есть профилактика. Нет. Поздно пить боржоми бэкап делать если база побита. Профилактика это сервер с ECC, RAID, SMART, Hot Swap и прочими страшными аббревиатурами. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2019, 14:26 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakovполагаться исключительно на бэкапВ бинарном транспортном формате, который генерируется утилитой gbak, то Dimitry Sibiryakovпушной зверёк всегда приходит неожиданно.Возможности бэкапа не исчерпываются одной утилитой. Dimitry SibiryakovПрофилактика это сервер с ECC, RAID, SMART, Hot Swap и прочими страшными аббревиатурами.+онлайн УПС с обратной связью и с настроенным алгоритмом гашения сервера. дополнил ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2019, 15:01 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Ivan_Pisarevsky+онлайн УПС с обратной связью и с настроенным алгоритмом гашения сервера. Два. По одному на каждый из дублированных блоков питания. Лет 20 назад мы такое чудо пользовали. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2019, 16:37 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
/me всегда с интересом слушает байки операторов карьерных самосвалов в кафешке, где собрались водители газелей и газонов ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2019, 16:56 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Dimitry Sibiryakovсервер с ECC Бывает сервер без ECC? Вы его с ПК в стоечном корпусе не путаете? Dimitry SibiryakovRAID, SMART, Hot Swap и прочими страшными аббревиатурами. Я аббревиатур тоже много знаю, например SAN, FC, ISCSI. Только какое это имеет отношение к логическим ошибкам, когда не файлы БД повреждаются, а данные в БД портятся или удаляются? ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2019, 17:09 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Alibek B.например SAN, FC,зело полезная весчь для сервера БД, правда в контексте: "заменили сервак на продвинутый десктоп" обсуждать санку как-то странно. Айскази в боевом режиме не шшупал, ничего сказать не могу. Dimitry SibiryakovДва. По одному на каждый из дублированных блоков питания. Лет 20 назад мы такое чудо пользовали.почему чудо? почему лет 20? у нас и сейчас головной сервак так запитан, на периферийных, правда сэкономили, грешным делом. Автору, выше была картинка про диски, мегабайты в секунду для БД нафиг не интересны, смотри на ИОпсы! чем больше тем лучше. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2019, 18:18 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Alibek B.Только какое это имеет отношение к логическим ошибкам, когда не файлы БД повреждаются, а данные в БД портятся или удаляются? Никакого. Если, конечно, не считать того, что бэкап и в этом случае делать уже поздно. Тут нужен PITR, коий выкатить, конечно, можно, но толпы инвесторов я чегой-то не наблюдаю. Posted via ActualForum NNTP Server 1.5 ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2019, 18:45 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Dimitry SibiryakovЕсли, конечно, не считать того, что бэкап и в этом случае делать уже поздно. Лишний бэкап лишним не бывает. Логические ошибки он не предотвратит, но зато минимизирует потери (времени). Да и в любых других случаях свежий бэкап поможет больше, чем бэкап месячной давности. ... |
|||
:
Нравится:
Не нравится:
|
|||
28.08.2019, 20:02 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
Ivan_PisarevskyАвтору, выше была картинка про диски, мегабайты в секунду для БД нафиг не интересны, смотри на ИОпсы! чем больше тем лучше. Померял сейчас с помощью Iometer файлик размером 64Гб (примерно как БД). Настройки и результат - на скриншоте. ... |
|||
:
Нравится:
Не нравится:
|
|||
29.08.2019, 12:49 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
авторShadow count 1 А это и по сей день там есть?.. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2019, 09:26 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
... это я про ответ на Иваново Ivan_Pisarevskyчто там в хидере базы? gstat -h ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2019, 09:28 |
|
Помогите с подбором процессора для сервера
|
|||
---|---|---|---|
#18+
o_v_aавторShadow count 1 А это и по сей день там есть?..На рабочем сервере - да, пока есть теневая копия на отдельном ssd. Но на новом, где 2 pci-e ssd объединены в зеркало, я shadow уже делать не буду. ... |
|||
:
Нравится:
Не нравится:
|
|||
30.08.2019, 11:18 |
|
|
start [/forum/topic.php?all=1&fid=40&tid=1560591]: |
0ms |
get settings: |
7ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
35ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
92ms |
get tp. blocked users: |
1ms |
others: | 11ms |
total: | 173ms |
0 / 0 |