Pull to refresh

Comments 27

Хорошо изложено. Да еще с живым примером- в каждом абзаце по досадной опечатке, то есть λ=1.
Спасибо. Честно говоря, не понял, где опечатки.
Например,
Он будет Если к моменту времени t работоспособность сохранило N изделий, то за оценку λ(t) можно принять


и так далее, сами перечитайте))
Вот в этом месте есть загвоздка:

> если в период от t до t+dt откажет n изделий, то интенсивность отказов будет примерно равна
λ(t)=n/(N*dt).

Например, у жёстких дисков порядка 1% отказов в год. У отдельных электронных компонентов — ещё меньше. За ограниченное время тестирования ограниченной по размеру тестовой выборки может быть 0 отказов. Поэтому n/N — не очень хороший способ оценивать λ.

Вместо этого лучше Байеса привлекать, например, (n+2)/(N+4) как рекомендует Алан Агрести. Если есть лучше априорное распределение, то формула будет другой, но смысл тот же — ноль отказов в тесте не означает нулевую вероятность отказа.
Действительно, так делают редко (но иногда делают). Гораздо более простой способ следует из определения MTTF=среднее время до отказа. Пусть у нас есть серия из N изделий. Мы дожидаемся, пока все они откажут, и записываем время, когда произошел каждый отказ Ti. Очевидно, оценка MTTF=(среднее по Ti)=(суммаTi)/ N.

Есть и другие методы, учитывающие статистику по партии изделий, часть из которых отказала в известные моменты времени, а часть — работает (FRACAS, анализ Вейбулла). Основаны они на том, что оцениваем мы одно число, а статистику имеем кое-какую.

К слову, приведу пример моделирования Монте-Карло отказов партии из N=100 штук. (Показана гистограмма распределения отказов по времени и аппроксимация экспоненциальной плотностью вероятности).
> N изделий. Мы дожидаемся, пока все они откажут

Та же проблема. Очень долго придётся ждать, чтобы из партии в 100 изделий с вероятностью отказа 1% в год отказали все.
«пока все откажут» — конечно, для наглядности. В реальности, делают не так, а следят за партией из N изделий. Пусть за год отказали 5 винчестеров (времена отказов фиксированы), а N-5 работают. Из этих данных и получают оценку λ. Чем дольше наблюдаем — тем лучше оценка.
Действительно, так делают редко (но иногда делают). Гораздо более простой способ следует из определения MTTF=среднее время до отказа. Пусть у нас есть серия из N изделий. Мы дожидаемся, пока все они откажут, и записываем время, когда произошел каждый отказ Ti. Очевидно, оценка MTTF=(среднее по Ti)=(суммаTi)/ N.
Только обычно всё-таки делают цензурирование. Т. к. ждать отказ всех устройств в партии может быть слишком дорого. Т. е. выбирают распределение (экспоненциальное, Вейбулла, Гомпертца-Мейкхама), и собирают статистику до наступления какого-то момента времени или выбывания определенного количества устройств.

А дальше используют методы, которые рассчитаны на работу с цензирированной (неполной) выборкой. Например, процедуру Каплана-Мейера.
Есть еще два нюанса:
1. Плотность вероятности во времени в релаьности совершенно не обязана быть экспоненциальной, а может быть какой угодно. Особенно у сложных устройств.
2. Было бы интересно узнать как реально проводиться расчет времени наработки на отказ. Если бы их испытывали миллионами штук в течение нескольких лет — мы бы долго ждали пока их выпустят на рынок. Скорее всего есть очень много упрощений.
1. Конечно. Если нарисовать типичный график интенсивности отказов, то будет что-то такое:



— Сначала идет приработка изделия — отказов много. бычно в этот период делают испытания — тупо заставляют изделия работать определенное время. Те, что не отказали — идут в продажу.
— Потом — долгий период примерно постоянной интенсивности отказов. Для него экспоненциальное распределение хорошо работает
— Последняя фаза старения — отработавшие изделия отказывают часто. (Но для производителя это несущественно — ему же надо просчитать издержки на гарантийный сервис — вы же понимаете, для чего все эти расчеты — для оптимизации сервиса)

2. Есть специальные методы и специальный софт. Самое простое соображение — нарисовать структурную схему изделия и, зная λ-характеристики комплектующих, вычислить оценку λ для всего изделия.
Прелесть экспоненциального распределения в том, что для получения этой оценки надо просто сложить λ комплектующих (про это будет следующая статья про надежность).

1. Зависимость интенсивности отказов от времени описывает так называемая bathtub curve, похожая на ванну с плоским дном. Постоянная интенсивность — разумное первое приближение, по крайней мере в пределах гарантийного срока службы.

2. Потребительские устройства редко разрабатываются с нуля, поэтому можно использовать данные гарантийных ремонтов от предыдущих поколений. Для систем, где нужна более точная и формальная оценка вероятности отказа (самолёт, ядерный реактор) есть весьма трудоёмкие способы её считать из вероятностей отказов отдельных компонентов. Но для этого нужно, чтоб кто-то предусмотрел и ввёл все возможные отказы и взаимосвязи.
А что мы делаем с устройствами, которые не подчиняются этим кривым и распределениям?
На то есть специальные методы. Основное развитие они получили в последние 20 лет, когда компьютеры стали мощные, и почти все, что угодно, можно посчитать по Монте-Карло. В наши дни никакой проблемы нет посчитать надежность, если есть исходные данные. Я использую вот этот софт.

Беда в том, что очень редко, когда для изделий (и/или комплектующих) есть что-то большее, чем число λ. Уже хорошо, когда оно есть.
Вот я про это. Закладываемся на одно, а оно начинает дохнуть по функции F(λ,t, L), где t — время, а L — объём обработанных данных.

По моим наблюдениям (эмпирическим) использовать FTBF и всё остальное имеет смысл только для немеханической электроники без ресурса (CPU, RAM, HBA, может быть PSU, может быть MB). Самое о чём все радеют — это HDD/SSD, подчиняются закономерностям, которые не становятся ясными, пока из данной партии не перемрёт достаточно много экземпляров.
Это значит, что износ не описывается однопараметрическим (как экспоненциальное) распределением и MTBF просто недостаточные данные для оценки реального ресурса. И в реальном кейсе вам придется ждать пока подохнет достаточное количество экземпляров в каждой группе с похожей нагрузкой.

Например, HDD, используемые для преимущественно рандомного доступа, и те же самые диски, используемые для более-менее линейной записи/чтения (WAL или что-нибудь такое) могут иметь ощутимый разброс по статистике отказов. Или имеющие периодическое фоновое чтение и не имеющие. Или установленные в СХД, которое подвергалось или не подвергалось вибрации (например, перемещалось).
Наряду с наиболее простым экспоненциальным на практике используется двухпараметрическое распределение Вейбулла.

О зависимости от объема данных. В теории надежности говорят о наработке (время — что в статье — ее частный случай). Для авто наработка скорее измеряется в км, а для винчестера — вполне возможно, в объеме обработанных данных или числе циклов включения-выключения. Вполне возможно, что удастся подобать такую единицу наработки, для которой отказы будут экспоненциальными.
Это все равно не решает главного ужаса индустрии: дохнущей партии. Например, по времени и примерно в одно и то же время. Или через указанный аптайм (подряд, без ребутов). Или к указанной дате. Все расчёты надёжности идут лесом.
От этого никто не застрахован. Статистика, всё же, оперирует общим распределением характеристик. А «удачная» партия — это черный лебедь, если масштаб не очень большой.

А если большой и события такого плана закладываются в риски (как, скажем, в авионике), то покупаются компоненты от разных производителей, через разных поставщиков и т. п. Чтобы уменьшить вероятности получить одновременный отказ.
Именно в свете подобного становится куда как менее интересно читать про всякие теории отказа. Теории теориями, а вылетающая полным комплектом стойка жёстких дисков — неприятно.
А просто любопытно — когда она вылетает? После того, как гарантия кончилась?
Как попало. Если вы хотите драмы в стиле «железки под окончание гарантии планируются» — нет, не этот случай. В условиях ДЦ основным фактором становится либо естественный износ, либо неудачное положение (например, из-за близости к вентилятору или верху/низу стойки большая вибрация, горячие/холодные соседние диски), либо просто нормальные отказы.

В условиях тысяч и десятков тысяч жёстких дисков, их замена — ежедневная рутина.

Если только это не залётный дятел с массовыми отказами.
Используем статистические методы, которые не делают таких предположений о вероятности отказа, а оперируют голой статистикой и более слабым предположением, что вероятность отказа является кусочно-постоянной. Как те же медики с 70-х годов.
А какое оборудование вы отслеживаете?
Я имел ввиду просто статистические подходы к оценке выживаемости. У меня нет в работе систем, где это можно было бы активно применять, а масштабы арендуемого оборудования маловаты для каких-либо оценок.
Ну, по практике работы в хостерах, этот вопрос (обычно в контексте «сколько держать резерва») решается экспериментально. Не хватает — делается больше. Хватает и избыток — чуть уменьшается.
Ну да. Не угадали или плохая партия — факап или дополнительные затраты на срочную закупку. А если остаток достаточен — повезло. ТАУ оно всегда такое. Риски — одно слово))
Sign up to leave a comment.