Як я можу досягти максимальної стійкої продуктивності послідовного запису на диск?


-1

Мені потрібні швидкості запису даних у розмірі ~ 1 ГБ / сек, підтримуваних ~ 1 годину. Дані надходять через цей каркас PCIe x4 . Мені потрібно передавати повну пропускну здатність на диск.

Я не маю досвіду роботи з RAID, але, як я найкраще можу сказати, відповідь RAID 0 з якомога більше високими RPM-дисками. Я також вважаю, що дискретні RAID-контролери набагато швидші та надійніші, ніж будь-які вбудовані материнські плати.

Задля конкретної вихідної точки для конкретних відповідей, я спочатку припускаю, що наступне обладнання буде хорошою системою для цього завдання:

  • RAID-контролер: LSI MegaRAID 9280-16i4e
  • Жорсткі диски: 11x Western Digital Black Caviar 2 TB SATA III 7200 RPM 64 Мб
  • Кабелі: 3ware CBL-SFF8087OCF-10M SFF-8087 Serial ATA Breakout Cable
  • Материнська плата: Gigabyte GA-Z77X-UD3H LGA 1155 Intel Z77
  • Блок живлення: Silverstone Strider Gold Evolution SST-ST1200-G 1200W v2.3 80 PLUS GOLD
  • Корпус: Корпус Rosewill RSV-L4411 4U 12 відсіків гарячої заміни

Моє питання: як досягти максимальної стійкої продуктивності послідовного запису на диск?

Хороша відповідь стосуватиметься наступного:

  • Які функції / характеристики потрібно шукати в контролері RAID та на жорсткому диску для найшвидших послідовних записів?
  • Чи буде швидкість запису незалежною від процесора? (IE, як я можу забезпечити використання DMA?) Чи існує спосіб, щоб шлях даних навіть обійшов ОЗУ? Чи має значення квадратична та двоканальна ОЗУ?
  • Чи є якісь вузькі місця, на які слід звернути увагу на материнській платі, тобто мости північ / південь? Якщо так, то як би я виявив / уникнув такої проблеми?
  • Чи є у послідовному послідовному записі релевантні кеші (на контролері, жорсткому диску, процесорі тощо)?
  • Як я можу забезпечити адекватність блоку живлення для всіх цих накопичувачів? Я розумію, що, можливо, доведеться щось непокоїти з приводу розтягування амперажу на рейках? Чи виявляться тут недоліки як проблеми з продуктивністю / випадкові збої чи це просто явно спрацює / вийде з ладу?
  • Те саме питання, що і вище, щодо охолодження.
  • Чи не буде переваги використання зовнішнього корпусу накопичувача? Чи нав'язує підключення до них вузьке місце?
  • Які налаштування BIOS важливі для цієї програми? AHCI тощо?
  • Яка файлова система найкраща? Драйвери для камери / кадрування - це все Windows, тому я застряг у win7. Я припускаю, що 64 проти 32 біт покращить пропускну здатність?
  • Яку настройку я повинен очікувати, щоб зробити?

Попередня версія цього питання була видалена за те , що «занадто широкі»:

"Є або занадто багато можливих відповідей, або хороших відповідей буде занадто довгим для цього формату. Будь ласка, додайте деталі, щоб звузити набір відповідей або виділити питання, на яке можна відповісти в декількох абзацах."

Але моє запитання є дуже конкретним, загальним інтересом, і я надав деталі, які дозволяють ефективно відповісти в одному абзаці, а не "цілій книзі". Усі мої детальні запитання просто гарантують, що відповіді є вичерпними щодо потенційних вузьких місць, з якими хтось повинен хвилюватися у цій одній проблемі: швидко триває послідовне записування. Нікому не було б корисно розбивати це питання на 32 окремі питання, як запропонував користувач 50-3 . Ось приклад відповіді, який показує форму того, що я очікую (я не маю уявлення, чи фактична інформація правильна, це найкраща здогадка):

  • RAID 0 з високими RPM-дисками - це справді спосіб досягти найшвидшого постійного послідовного запису (якщо припустимо, що ви використовуєте режим "потоку" кадрувальника кадру). SSD-диски для цього не гарні, оскільки вони різко сповільнюють час запису з використанням завдяки обробці, необхідній для "нівелювання" (запобігаючи використанню будь-якого одного місця більше, ніж інші).
  • Щоб підтримувати 1 Гб / сек безстроково, вам потрібно> 3 7200RPM 6 Гбіт / сек SATA-накопичувачі (6 Гбіт / сек * 1/8 ГБ / Гб = .75 ГБ / сек / диск без пробілу). Більше накопичувачів лінійно покращить пропускну здатність, але наситить ширину даних вашої шини (32 або 64).
  • SATA - найвигідніша технологія жорсткого диска, SAS не має помітних переваг для швидких послідовних записів. SAS краще шукати час до випадкових локацій та надійності. Більш швидкий RPM в SAS збільшує послідовну швидкість запису, але протидіє меншій щільності / ємності.
  • Будь-які пристойні драйвери для захоплення кадрів / RAID-карт використовують DMA (те, про що ви згадуєте), тому процесор не має значення. Шлях даних завжди буде включати системну пам'ять. Запис на диск буде набагато повільніше, ніж ваша ОЗУ, тому нічого екзотичного вам не потрібно (будь-який DDR3 чудово). Обсяг оперативної пам’яті (і розмір кеш-пам'яті на контролері, жорсткому диску, процесорі) не має значення, оскільки буфери швидко заповнюються під час постійних записів.
  • Міст на північ та південь на будь-якій материнській платі PCIe 2.0 не буде вузькими місцями. Все, що вам потрібно, - це дискретний RAID-контролер> = PCIe 2.0, який має достатньо з'єднань SATA для ваших накопичувачів. Зовнішні підключення до корпусу - це вузьке місце лише в тому випадку, якщо використовуються розширювачі, які спричиняють спільну пропускну здатність накопичувачів. Ви хочете, щоб картка з більшою смугою PCIe, ніж 4 на захопленні кадру, щоб шина PCIe не була вузьким місцем. 9280 буде добре, але це багато зайвого для вашої мети; 9240 8i був би меншим, ніж удвічі меншим, і адекватним. Контролери LSI є одними з найдорожчих, але, як правило, швидше / надійніше / менше клопоту під час відновлення помилок, ніж більш дешеві марки Highpoint / Areca.
  • Вам потрібен блок живлення з достатньою потужністю для всіх ваших приводів і контролер (9280 використовує 15 Вт, а кожен WD використовує 10 Вт). Кожен накопичувач має піковий розрив струмом ~ 1А і вам потрібно обмежити кількість у кожній схемі ("рейці") блоку живлення. 1200G має одну рейку зі 100A, тому у вас не буде проблем. Перевищення покажеться як випадкові жорсткі збої (можливо, пошкодження накопичувачів та інших компонентів), однакові для перегрівів.
  • Охолодження, вбудоване у корпус, виконаний із 12 відсіками гарячої заміни, має бути адекватним для майже постійних навантажень непослідовних зчитувань, які виробляють більше тепла, ніж ваш послідовний запис. Щоб упевнитись, що вам не потрібно додаткове охолодження, слідкуйте за темп (google HDDTemp) після багатьох хвилин тривалої записи.
  • AHCI - єдине налаштування BIOS, що стосується швидких послідовних записів (увімкніть також SMART). Перед встановленням Windows встановіть обоє .
  • Файлова система NTFS для Windows буде чудово (альтернативи все одно немає).
  • У вас буде краща продуктивність послідовного запису з програмою win64 проти win32, оскільки пропускна здатність DMA до рейдового контролера буде вдвічі більшою.
  • Вам не потрібно було робити жодної настройки; стандартний розмір блоку тощо, встановлений вашим рейдовим контролером, повинен бути адекватним Більші блоки будуть швидшими, але більш чутливими до корупції та непотрібності.

Якщо ви все ще вважаєте це питання "занадто широким", будь ласка, вкажіть, чому саме та запропонуйте, як його можна звузити, при цьому все ще надайте ґрунтовну відповідь людям, зацікавленим у досягненні максимальної стійкої послідовності запису. Це питання належить на Superuser більше ніж Serverfault, оскільки воно не стосується корпоративних ІТ.


Характеристики для цієї картки на PCIe x4 згадують передачу даних на хост-ПК до 850 Мбіт / с і кажуть "Це дозволяє передавати дані вихідного зображення та додаткової інформації та результатів". Двічі перевірте, скільки даних ви будете ставити на диск.
Брайан

2
Не важливо, якщо ви використовуєте 3 або 6 Гбіт / с SATA. Навіть WD-велоцираптор 10000 RPM зазвичай не записує більше ніж 110 Мбіт / с . Який формат даних кадрувальників? Якщо він сирий, чому б не стиснути його до того, як він потрапить на диск? Це повинно зменшити вимоги.
Roland Smith

2
Основна проблема, з якою я маю це запитання, полягає в тому, що ви задаєте занадто багато запитань одночасно, все це з великим схилом. Або ви знаєте, що ви робите (як такі, люди, здатні насправді відповісти на це, знаходяться в невеликій кількості), або ви нічого не знаєте і просто кричите терміни, ІМХО. Це призведе до відповідей, які для вашої конкретної проблеми будуть за своєю суттю занадто довгими та не надто широкими. Досить, будь ласка, сміливі, що, на вашу думку, є найбільш релевантними частинами питання.
Doktoro Reichard

@Brian - на сторінці захоплення кадрів написано "Швидкість передачі DMA до 900 МБ / с" - де ви бачите 850? у будь-якому випадку, я вказав це як «~ 1 Гб / сек», який округлюється лише трохи, щоб дати помірний простір. також питання стосується максимальної швидкості послідовного запису в цілому.
користувач1441998

@Roland Smith - це питання про використання RAID 0 для запису набагато швидше, ніж будь-який окремий диск. повинна бути якась різниця між 3/6 Гбіт / с SATA - як це може бути неактуальним? Я використовую комерційну камеру із супутнім програмним забезпеченням, створеним для роботи з цим захоплювачем кадрів ( pco.de/categories/scmos-cameras/pcoedge-42 ). вони контролюють формат / обробку, хоча я вважаю, це RAW. при цих швидкостях даних я не вірю, що стиснення може бути досить швидким, щоб витримати тривалу трансляцію, і в цілому, можливо, не буде надмірностей даних.
користувач1441998

Відповіді:


4

Ви склали дуже довгий список, на який я не збираюся відповідати по черзі. Однак я хочу зробити це дуже зрозумілим:

1) PCI не може підтримувати ці швидкості. PCI express can, це зовсім інша технологія, яка має точкові посилання (так звані смуги) замість загальної шини. Картка, з якою ви пов’язані, - "PCIe x4". Додатковий eдуже актуальний.

2) Смуги (RAID 0, RAID10 тощо) цілком можливі. Або з десяток високопродуктивних дисків. Або ви можете використовувати звичайні диски. Офісний магазин, кутовий стандарт 7200 RPM SATA накопичувач зробить близько 100 МБ / сек. Тож вам знадобиться хоча б десяток таких (оскільки речі ніколи не бувають досить ідеальними).

3) Працюватимуть як HW RAID, так і програмний RAID та підроблений RAID (програмне забезпечення RAID з підтримкою BIOS, наприклад, Intel IRSST).

Програмне забезпечення RAID не рекомендується, якщо ви не робите багато розрахунків (наприклад, RAID6) і потребуєте високої продуктивності або маєте повільний процесор.

Апаратний RAID буде різним. Гарна HID RAID-карта чудова. Погана може бути досить поганою порівняно з хорошим рішенням SW RAID. Хороший HW RAID часто потребує кеш-пам’яті або спалаху, що підтримується батареєю, щоб забезпечити швидкий режим

4) SATA II або III (3,0 або 6,0 ГБ / сек) або SAS 3 ГБТ / сек, SAS 6 ГБИТ SEC, ... не має значення. І окремий спінінг-диск не наситить жодне з цих посилань. Поточний споживач SATA виганяє максимум близько 100 Мб / сек. Компактні накопичувачі SAS високого класу можуть отримати до 200 МБ / сек. Обидві швидкості нижче 3,0 Гб / сек.

5) RAID0 не дуже безпечний. Якщо один диск виходить з ладу, ви втрачаєте всі. Це може бути прийнятним, якщо вам просто потрібно перевірити речі та зберегти дані. І вони негайно зберігають його десь у безпеці від обробки. Однак чим більше дисків ви використовуєте, тим більше дисків може вийти з ладу.

RAID зазвичай стосується надмірності. RAID0 це не так, це стосується виключно продуктивності .

6) Нарешті, для повноти: SSD не є по суті поганим для цього. Для такої кількості даних вони будуть дорогими і, можливо, не потрібні, але SSD не потрібно гальмувати. Просто повністю витріть SSD (наприклад, видаліть усі розділи або захистіть їх), перш ніж додати його до масиву запису. Після повного наповнення він може сповільнитись. Але правильно підготуйте його та запустіть його на одному сеансі, і це повинно бути добре.

7)

AHCI - єдине налаштування BIOS, що стосується швидких послідовних записів (увімкніть також SMART).

Не можна вмикати чи вимикати SMART. Це завжди увімкнено. Опція в BIOS просто означає «читати диски SMART даних, коли ви відправляєте POST, і якщо є щось не так, попереджайте користувача. Зазвичай з одним рядком типу "SMART: DISK FAILURE IMMINENT". Натисніть F1, щоб продовжити! ". Це не впливає на продуктивність.

Перед встановленням Windows встановіть обоє.

Для постійної продуктивності: Встановіть ОС на власний диск. Зберігайте окремі томи для ОС та для даних.

8)

Щоб підтримувати 1 Гб / сек безстроково, вам потрібно> 3 7200RPM 6 Гбіт / сек SATA-накопичувачі (6 Гбіт / сек * 1/8 ГБ / Гб = .75 ГБ / сек / диск без пробілу).

Ні.

6-Гбіт / сек передачі даних SATA-накопичувач зможе перенести приблизно 300 Мбіт / с між диском та контролером / RAID-карткою. (6,0 ділиться на 8 для бітових байтів, але є також деякі накладні витрати, а а /10є більш реалістичним).

По-друге, накопичувач зможе отримувати дані досить швидко, але записувати їх на диск буде повільніше. Реалістичне значення для сучасного 7200 об / хв SATA-накопичувача - це запис з підтримкою 100 Мбіт / сек.

Це означає, що вам потрібно щонайменше 10 таких накопичувачів. І тільки якщо все масштабується ідеально.

Більше накопичувачів лінійно покращить пропускну здатність, але наситить ширину даних вашої шини (32 або 64).

Правда для PCI. Але, незважаючи на написання PCI, OP означав PCI-e, що набагато швидше. 4 смуги PCI-e v2 до 10 Гбіт / сек. Цього має бути достатньо (хоча запасів не так багато).


відредагований кадр-хапач згадувати, щоб вказати PCIe x4 в OP Software RAID не рекомендується, якщо ви не робите багато обчислень (наприклад, RAID6) , ви мали на увазі "НЕ рекомендується, якщо ви робите багато розрахунків?" якщо ні, то будь ласка, уточнюйте . Гарна карта HW RAID - це чудово. Погана може бути досить поганою порівняно з хорошим рішенням SW RAID. що, саме, відрізняє «хороше» від «поганого» HW RAID-карти? як розрізняти перед покупкою?
користувач1441998

Хороший HW RAID часто потребує кеш-пам’яті або спалаху, що підтримується батареєю, щоб увімкнути швидкі режими. Я не можу знайти документа так чи інакше для згаданого 9280. як я дізнаюся?
користувач1441998

SATA II або III (3,0 або 6,0 ГБ / сек) ... значення не має. Поточний споживач SATA накопичує максимум близько 100 Мб / сек. * Перевага 6 Гбіт / сек лише при використанні розширювачів / множників для ланцюжка ромашок більше одного диска на порту SATA? якщо мій розрахунок 750 Мб / сек правильний, то чи не буде погіршення продуктивності використання 6 приводів SATA III на одному порту? Крім того , ви тримаєте говорити «ГБ / сек» (гіга байт ), але не це «Гбіт / сек» (гіга бітну ), в 8 разів менше?
користувач1441998

Багато питань. Досить спробувати їх по черзі. 1) Швидкість SATA II / III не має значення для стійкої пропускної здатності. Він допомагає при помножувачах портів, і він допомагає, якщо дані знаходяться в кеші диска. Однак кеш не є великим, щоб містити всі (або більшість) ваших даних. Типовий розмір кешу на поточних накопичувачах становить 32MiB або 64MiB. Ніде немає кількості даних, які ви хочете отримати. 2) RAID6 / розрахунок виправив речення. 3) Зателефонуйте виробнику. Картка може мати обмеження (іноді штучні).
Геннес
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.