Издаётся с 2008 года · Цифровое издание · 19 Июнь 2026

SMB IT Journal

Информационно-технологический ресурс для малого бизнеса

Русский
Системы хранения

История разделения массивов

Большая часть устоявшихся знаний в IT-отрасли, особенно в сегменте SMB, сложилась в самом конце 1990-х годов под влиянием целого ряда факторов. Главными из них стали: стремительная компьютеризация всё более мелкого бизнеса; достижение Windows NT 4 такого уровня стабильности, что она стала стандартной основой для всего SMB-IT; окончательное утверждение эпохи интернета; и запуск Microsoft программ сертификации и обучения, кардинально изменивших распространение знаний в отрасли. Вместе всё это породило как потребность в новых методиках и лучших практиках, так и мощный всплеск новых идей, публикаций, документации, обучающих материалов, правил, эвристических рекомендаций и т. д.

В течение нескольких лет практически вся отрасль обучалась на одном и том же небольшом массиве знаний, и многие эвристические правила стали де-факто стандартами. Значительная часть знаний того времени передавалась путём зубрёжки и от наставника к стажёру в цикле, который перенёс большой пласт технических знаний 1998 года в непреложные, высеченные в камне процессы 2012-го. Тогда это было эффективно, поскольку практики оставались актуальными, но с тех пор прошло пятнадцать лет, и технологии, экономика, сценарии использования и знания изменились значительно.

Одним из лучших примеров стала знаменитая рекомендация Microsoft SQL Server: RAID 1 для операционной системы, RAID 5 для файлов базы данных и ещё один RAID 1 для журналов. Эта конфигурация просуществовала почти весь жизненный цикл продукта и была настолько широко распропагандирована, что распространилась практически на все аспекты проектирования серверов в SMB-пространстве. Использование RAID 1 для операционной системы и RAID 5 для данных настолько повсеместно, что его нередко просто принимают как само собой разумеющееся, не задумываясь о причинах, по которым оно было рекомендовано в своё время.

Давайте изучим историю и разберёмся, почему конфигурация R1/5/1 была хороша в 1998 году и почему сегодня она не должна применяться. Важно сохранять перспективу: разрыв между временем появления этих рекомендаций (начиная с 1995 года) и сегодняшним днём огромен. Мысленно вернитесь в 1995 год и подумайте об аналогичном временном разрыве на тот момент. Это было бы всё равно что применять в эпоху раннего интернета рекомендации, основанные на потребностях домашних вычислений первых владельцев Apple ][! Эпоха 8-битного домашнего компьютера только-только начиналась в 1978 году. До выпуска Commodore первого домашнего компьютера (VIC-20) оставалось ещё два года; компания успеет пройти через целые эпохи Commodore и Commodore Amiga, обанкротиться и исчезнуть — и всё это до 1995 года. До выхода Apple ][+ оставался ещё год. Люди были на пороге использования аналоговых кассетных накопителей. COBOL и Fortran были единственными языками, применявшимися в серьёзном бизнесе. По существу, разрыв колоссален. Всё меняется.

Прежде всего необходимо рассмотреть факторы, существовавшие в конце 1990-х годов, которые и обусловили нашу историческую конфигурацию.

  1. Диски были маленькими, очень маленькими. Большой массив базы данных мог состоять из четырёх SCSI-дисков по 2,1 ГБ в R5-массиве, давая всего около 6 ГБ используемого пространства на одном массиве. Область отказа для parity RAID была крошечной (по сравнению, например, с вероятностью ошибки чтения URE).
  2. Технологии подключения дисков были параллельными и медленными. Жёсткие диски того времени были лишь немного медленнее, чем сегодня, однако технологии подключения представляли собой значительное узкое место. Разделение трафика применялось для снижения нагрузки на шину.
  3. Технология SCSI была единственной, использовавшейся для серверов. Применение PATA (IDE, как его тогда называли) в сервере было немыслимым.
  4. Диски были дороги в пересчёте на гигабайт, поэтому экономия при сохранении ёмкости была ключевым вопросом для практически любого бизнеса.
  5. Файловые системы были хрупкими и отказывали чаще, чем диски.
  6. Аппаратный RAID был обязателен, и широко доступны были только базовые уровни RAID 1 и RAID 5. RAID 6 и RAID 10 стали доступны большинству предприятий лишь спустя годы. RAID 0 не рассматривается, поскольку не обеспечивает избыточности.
  7. Системы хранения практически никогда не были общими между серверами, поэтому доступ почти всегда был выделенным для одной очереди запросов.
  8. Кэш хранилищ был крошечным или отсутствовал, что означало прямое влияние ограничений доступа к дискам на операционную систему. Это требовало использования разных массивов с разными характеристиками для разных соотношений операций чтения/записи или случайного/последовательного доступа.
  9. Отказ дисков был частым явлением и главной проблемой при проектировании систем хранения.
  10. Размер дискового массива нередко ограничивался физическими ограничениями, поэтому решения о разделении массивов зачастую принимались по необходимости, а не по выбору.
  11. Сочетание вышеперечисленных факторов означало, что RAID 1 лучше всего подходил для тех частей системы, где допустим малый размер, а доступ носил преимущественно последовательный или интенсивно-записывающий характер, тогда как RAID 5 был предпочтительнее там, где ёмкость важнее надёжности, а доступ был преимущественно случайным и интенсивно-читающим.

За почти два прошедших десятилетия с момента выпуска первоначальных рекомендаций все эти факторы изменились. В некоторых случаях изменения носят каскадный характер: переход от повсеместного использования RAID 5 к повсеместному использованию RAID 10 привёл к тому, что два прежде распространённых типа массивов — RAID 1 и RAID 10 — стали иметь схожие характеристики доступа, и необходимость или желание выбирать между ними в зависимости от типа нагрузки исчезла.

  1. Диски теперь огромны. Вместо того чтобы с трудом умещать на них всё необходимое, у нас, как правило, есть избыток ёмкости. Одиночные диски объёмом более терабайта обычны даже в серверах. Области отказа для parity огромны (по сравнению с такими факторами, как вероятность URE).
  2. Подключения дисков теперь последовательные и быстрые. Соединения дисков больше не являются узким местом.
  3. SATA теперь широко используется на серверах, что создаёт потенциальные риски URE, которых ранее не существовало.
  4. Ёмкость сейчас дёшева, а производительность и надёжность стали ключевыми факторами при оценке затрат.
  5. Файловые системы сегодня весьма надёжны, и их отказы представляют собой лишь «фоновый шум» на фоне общей надёжности массива.
  6. Аппаратный и программный RAID — оба доступны сегодня, а доступные уровни RAID включают множество вариантов; наиболее важно то, что RAID 10 стал повсеместно доступен.
  7. Системы хранения широко используются совместно, что делает последовательный доступ ещё менее распространённым.
  8. Кэш хранилищ широко используется и зачастую весьма велик. Кэш объёмом 512 МБ и 1 ГБ сегодня считается нормой — таким образом, многие массивы 1995 года сегодня целиком помещаются в память RAID-контроллера. Учитывая стремительный рост кэша по сравнению с ёмкостью хранилищ и недавнее появление SSD в качестве кэша второго уровня в хранилищах за последние два года, вполне реально, что даже у небольшого бизнеса базы данных и другие производительно-критичные приложения работают полностью из кэша.
  9. Отказ дисков стал редкостью и имеет тривиальное значение для проектирования системы хранения (по сравнению с другими типами отказов).
  10. Размер дискового массива редко ограничивается физическими ограничениями.
  11. Использование RAID 1 и RAID 10 в качестве основных типов массивов сегодня означает, что нет никакого смысла использовать разные уровни RAID для настройки производительности.

Эти факторы наглядно объясняют, почему система разделённых массивов 1995 года была полностью оправдана в своё время и почему она не имеет смысла сегодня. OBR10 — нынешний стандарт — в то время был недоступен и экономически нецелесообразен. RAID 5 был относительно безопасен в 1995 году, но не сегодня. Практически каждый фактор, участвующий в принятии решений, кардинально изменился за последние семнадцать лет и продолжит меняться по мере распространения SSD, развития автоматического тайеринга, появления ещё больших кэшей и систем хранения на чистом SSD.

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

Нынешний переход от однопоточных к многопоточным архитектурам — ещё одно подобное значимое изменение, требующее от IT-отрасли полного пересмотра подходов к проектированию систем.

Меткиarrays

Реклама

SMB IT Journal — the IT resource for small business