Pull to refresh

Comments 65

Сравнение конечно «доя самых маленьких». А почему латентность не поменяли? Кому нужна эта скорость без латентности ). Не удивлюсь что тестовая машина размещена на отдельном тестовом луне, чтобы исключить влияние других машин.

Нет, тестовая машина не размещалась на отдельном луне, а была заказана абсолютно штатным образом. И про латентность: вряд ли этими приложениями можно изменить латентность, поскольку определяется она физическими характеристиками накопителя.

И про латентность: вряд ли этими приложениями можно изменить латентность, поскольку определяется она физическими характеристиками накопителя.

Кек. Не стыдно не уметь использовать стандартные счетчики?

$diskReadLatency = Get-Counter -Counter "\PhysicalDisk(_Total)\Avg. Disk Read Latency"
$diskWriteLatency = Get-Counter -Counter "\PhysicalDisk(_Total)\Avg. Disk Write Latency"
$diskReadLatency.CounterSamples | Select-Object -Property InstanceName, CookedValue
$diskWriteLatency.CounterSamples | Select-Object -Property InstanceName, CookedValue

https://learn.microsoft.com/en-us/answers/questions/1339120/disk-latency

Размещалась на отдельном луне...

Ну давайте немного подушню.
Начнем с того, что лун (LUN) - это вообще способ адресации в системе SCSI. А вы скорее всего имели в виду том, а не лун.
Далее, том может быть тонким и делить дисковые группы с другими томами в пуле.

Нет в русском языке слово "латентность" в отрыве от "латентный гомосексуалист", а в случае СХД употребляется не "латентность", а "задержки".

И определяются задержки не физическими характеристиками накопителя, а дисковы стеком ОС, гипервизора, сетью хранения, производительностью контроллеров СХД, задержками в сети хранения между контроллерами, кэшами, софтом СХД, общей нагрузкой на СХД и в последнюю очередь физическими характеристиками накопителя (диска)

А почему латентность не поменяли? Кому нужна эта скорость без латентности )

Вы имели в виду «не померили»? Особой нужды в этом нет, задержки/iops/пропускная способность при фиксированных размере блока и глубине очереди связаны друг с другом и могут быть выведены одно из другого (например, при qd1 и блоке 1МБ задержка в 1мс даст 1000 iops и 1000МБ/с)

Ну-ка, расскажите, как вы выведете латентность из пропусконой способности, если вам нужно прочитать один единственный блок (в котором лежит индекс БД, например)?

Вы внимательно прочитали то, на что отвечаете?
Я писал, что в тестах зачастую не нужно измерять три показателя — задержку, iops, пропускную способность, достаточно одной, а две остальные можно вычислить.

нельзя в отрыве от профиля нагрузки. Причем из трех важны только две, а третья теряет смысл, а зачастую вообще упирается в одну.

Например при случайном доступе малым блоком вообще бессмысленно считать МБ/с. А при последовательном задержки.
Если у вас при этом идет поток большой и не совсем синхронный, то задержка в 1мс вам даст 1000 IOPS на один поток, но общая производительность может быть 100 000 IOPS.

нельзя в отрыве от профиля нагрузки

ещё раз, я говорю про измерение показателей в синтетике.
пусть для определённости random read, 4k, qd1.
тогда при задержках чтения в 100мкс мы получаем за секунду 1e6/100=10e3 чтений, то есть 10k iops, а пропускная способность 10e3*4=40e3 КБ/с, то есть 40 МБ/с
все эти показатели жёстко связаны друг с другом.

CrystalDiskMark и ATTO Disk Benchmark.

еще лет 5, и освоите DISKSPD ?

и глубиной очереди 256.

зачем?

в MySQL, PostgreSQL, MongoDB и других системах управления БД.

Это теперь системы управления БД? И SQL Server Management Studio (SSMS) или pgAdmin - это у вас база данных?

Поскольку NVMe-накопители обеспечивают высокую пропускную способность и низкую задержку, они идеально подходят для хранения и обработки данных

Я так понимаю, выносить tempDB на NVME у вас не умеют.

I

в MySQL, PostgreSQL, MongoDB и других системах управления БД. 

Это теперь системы управления БД?

А что не так? Даже интересно стало…

А что не так? Даже интересно стало…

Все так, если использовать автоперевод, где это все DBMS -

A database management system (DBMS) is a program used to create, update, and manage databases. RDBMS means a relational database management system, and it helps to create, update and manage relational databases. One of such RDBMS is Microsoft SQL server.

MS SQL Server Management Studio is a software which provides graphical interface to manage the underlying RDBMS, MS SQL Server. If you want to see what the databases in your MS SQL Server are, looking at those through MS SQL Server Management Studio is more visually comfortable and appealing. Furthermore, MS SQL Server Management Studio makes the administrative and troubleshooting activities of the databases easier.

Если же столкнуться вживую с установкой хотя бы MS SQL, где ставится с 15+ сервисов, начиная от SQL Server Database Engine и SQL Server Agent, https://learn.microsoft.com/en-us/sql/database-engine/configure-windows/configure-windows-service-accounts-and-permissions?view=sql-server-ver16
то может возникнуть желание называть менеджмент - менеджментом, а Database Engine - движком.

Тот случай, когда хотел выставить дураком другого, но что-то пошло не так..)

Тот случай, когда хотел выставить дураком другого, но что-то пошло не так..)

У автора HDD быстрее SSD, и то как он пишет стандартную пасту про SQL - всего лишь кукурузинка на тортике из говнеца.

Вот вы о чем…

А я что-то привык к устоявшейся трактовке термина. Именно как к обозначению совокупности всех компонентов.

А я что-то привык к устоявшейся трактовке термина. Именно как к обозначению совокупности всех компонентов.

Это часто встречающаяся проблема, когда у маркетологов, типа писателей типа текстов и прочих людей "около ит" - используется разная терминология. Это как с девопс - у кого то это кубер, у кого то мидл линукс администратор, у кого-то дженкинс

Когда в 1983 году мы у себя на заводе запускали АСУ Заказ с использованием СУБД Ока (IDMS от IBM, если не ошибаюсь) и системы телеобработки данных Кама, про маркетологов никто и слыхом не слыхивал. Так базами данных с тех пор и занимаюсь. И уж чего я только с того времени «вживую не ставил»… вот и привык к СУБД. Хотя наличие составных частей не отрицаю, и замену, скажем, средств администрирования и разработки на продукты других фирм очень даже приветствую. Oracle, например, ничем сходным по функциональности с Toad так и не порадовал.:-)

Так не надо использовать автоперевод, надо просто вспомнить аббревиатуру СУБД. Которая означает не то же, что DBMS, хотя вроде бы из тех же слов (с поправкой на перевод) сложена.

А в чём различие между СУБД и DBMS?

КристалДиск с 7й версии как минимум умеет измерять IOPS, и если не ошибаюсь, внутри содержит как раз diskspd.
Но чтобы мерять IOPS надо думать.

Зачем думать, когда надо просто фигачить статьи потоком?

Судя по картинке - NVMe ещё и без отказоустойчивости? :)

Это осознанное решение компании – писали о причинах тут и тут. Если коротко, при использовании NVMe в RAID скорость будет ниже, чем у SSD. Плюс из таких дисков невозможно собрать рейд-массив.

. Если коротко, при использовании NVMe в RAID скорость будет ниже, чем у SSD.

по первой ссылке - "мы что-то нарукожопили с драйверами и решили отложить до второй части".
Вторую вы, видимо, не читали -

Как только мы начали распределять виртуалки по NUMA-нодам, внезапно всё заработало с нужной скоростью.

Плюс из таких дисков невозможно собрать рейд-массив.

По второй же ссылке написано - возможно, НО скорость страдает.

Storage Space могут собрать рейд из чего угодно.

Кроме загрузочного диска.

есть контроллеры для nvme, но можно обойтись и по крестьянско-пролетарски - собрать софтовый рейд. Например, по нашим тестам между одним NVME и двумя в S2D разницы нет (ну, кроме увеличения стоимости решения х2)

есть контроллеры для nvme, но можно обойтись и по крестьянско-пролетарски - собрать софтовый рейд.

с тем же VROC можно говна поесть просто лопатой.

Тут они правы. Даже SSD плохо в RAID собирается (скорость падает и время доступа пляшет), а с NVME совсем тоска-печаль. Есть некоторые модели NVME, где ситуация лучше, но там другие приколы.

Интересно, как же тогда работают AFA дисковые массивы? ???

Интересно, как же тогда работают AFA дисковые массивы? ???

Это не говоря о том,что есть и all-nvme и NVMe over Fabrics (NVMe-oF). Тут же "ни собираиицо"

Даже SSD плохо в RAID собирается (скорость падает и время доступа пляшет)

Отлично собирается, и отменно работает, если брать нормальные контроллеры

Проблема в том, что задержка доступа будет определяться задержкой самого медленного диска в массиве. А SSD и NVME любят выполнять фоновую работу, которая периодически увеличивает задержку. Когда вы работаете с одним диском, то не важно - средняя задержка всё равно остаётся низкой. А когда дисков несколько, тогда ой: то один, то другой, то третий увеличивает задержку из-за фоновой работы. В результате и колебаний задержки становится больше, и среднее значение растёт.
А ещё там NVME может начать копировать кэш, или обновлять содержимое ячеек. Это тоже фоновая работа, которая будет выполняться несихронно у дисков в массиве.
А если ещё и сами диски так себе, то у них и скорость записи начнёт расходиться и массив скатится до максимальной.
А если нужен частый или непрерывный TRIM, то совсем всё грустно становится, там задержки большие и разные. И вообще могут быть сложности с TRIM и RAID одновременно.
А если у вас ещё и NVME разные производителей, то всё становится совсем весело и непредсказуемо, можно реально упасть до очень низкой средней скорости

Короче, работать-то оно будет, но дрожание задержки доступа вырастет, как и сама задержка. И можно TRIM потерять. И очень много чудес из-за конкретных сочетаний железа/софта.

У RuVDS есть, кстати, статья о битве с NVME и RAID.

Это Linux software raid 10 на 4 x NVME, порезан на куски при помощи LVM, и проброшен в виртуалку с Windows под qemu/KVM.

Недостатки SSD проявляются при использовании RAID 5/6. При использовании RAID 0/1 они не так заметны. А, если количество зеркал в массиве не больше двух, то и проблема с "самым медленным SSD" не так заметна, т.к. это "самый медленный из пары". Но, это дороже.

Но, рынок диктует свое, и, NVM-E продаются без резервирования потому, что спрос есть. Для пользователей, которые хотят сами сделать поверх него собственный распределенный storage кластер, резервирование не нужно.

Вот так, кстати, измерять RAID не сильно смысл имеет. Нужно измерять колебания задержек. Средняя скорость, да, будет примерно такой, но время доступа в реальных задачах (и, соответственно, реальная скорость) может отличаться в разы.

еще один убогий меряет рейды кристалдиском по MB/s

Не стоит переходить на личности. Это не вежливо.

Кристалл диск тут использован исключительно по аналогии с автором оригинальной статьи, чтобы показать, что даже такой тест показывает, что у автора там что-то не так совсем.

Это не значит, что я не в курсе, что это далеко не самый подходящий инструмент для измерения скорости RAID массивов. И, что IOPS и Latency Percentiles гораздо практичнее.

Невежливо нести технически безграмотную чушь. Кто вам мешает взять кристал диск и переключить его в режим IOPS? Он это умеет минимум лет 5 как.

Если вы в курсе - так где у вас эти скриншоты ВМЕСТЕ с теми, где измеряются МБ/с?

Они у меня всегда были.

Просто, та часть, которая не актуальна в контексте разговора выше, была вырезана.

MB/s, вообще, в IOPS легко пересчитываются. Так что, не ясно, в чем смысл таких подробностей, кроме удобства сравнения. И, в чем смысл претензий.

Проблема в том, что задержка доступа будет определяться задержкой самого медленного диска в массиве

Разумеется, нет. Задержка на запись будет определяться скоростью попадания в энерго независимый кеш. На чтение, впрочем, зачастую тоже.

А SSD и NVME любят выполнять фоновую работу, которая периодически увеличивает задержку.

Не в энтерпрайз-класс-сегмент дисках.

Короче, работать-то оно будет, но дрожание задержки доступа вырастет, как и сама задержка. И можно TRIM потерять. И очень много чудес из-за конкретных сочетаний железа/софта.

Опять же, смотря чего и из чего собирать. если на коленке из щепок и желудей, то да, могут быть проблемы.

"Проблема в том, что задержка доступа будет определяться задержкой самого медленного диска в массиве. "

Зачем я это прочитал?

Слушайте, если у вас есть экспертиза в САП - ну пишите вы о ней, рассказывайте. И читайте, учитесь по другим аспектам.

Что вас заставляет писать дикую чушь о том, в чем вы разбираетесь примерно никак?

Что вам сказало, что если вы прочитали о механизмах работы диска, то вы поняли как работает СХД?

Вы всё перепутали. Проблемы не в моделях накопителей, а в накладных расходах софтового рейда, которые на скоростях nvme становятся заметны (больше в синтетике, чем в реальной жизни, но всё равно)

Краткое содержание:

флеш быстрее жестких дисков

выбирать надо в зависимости от задач

Да тут тестов по сути и не получилось, все закэшировалось, что наглядно видно по atto и 4к блокам у жёстких дисков.

судя по тесту " Как видно, CrystalDiskMark демонстрирует преимущество в скорости при использовании на виртуальной машине NVMe-накопителя. " -
SSD еще и програл диску, и я сильно сомневаюсь, что там локальные 15к диски. И ведь кто-то плюсанул ЭТО

про diskspd уже сказали, но там куча разных параметров, можно подобрать неудачный паттерн, так что опустим это.

но и по Cristal Disk Mark тоже есть что сказать:
1. результаты какие-то слабые. Что за NVME, можете озвучить модель? Предположу, что в тестируемом сервере был PCI-E Gen3, но даже в этом случае тот же PM9A1 выдает результаты лучше (а раскрывается, конечно, на Gen4)

  1. у Cristal Disk Mark в настройках есть режим для NVME как раз. Там очереди глубже

  2. 1 ГБ размер тестирования - это маловато для SSD/NMVE.

Что как бы не отменяет того факта, что при работе с diskspd нужно его правильно настроить, ну да ладно))

Подушню. Не надо никак настраивать diskspd. Настраивать надо ВМ.
Например сделать агрегатный том из десятка виртуальных дисков.

А дискспд / фио надо просто запустить с правильными параметрами, чтобы результат тест был осмысленным. После чего надо правильно проинтерпретировать то, что показал дискспд / фио.

Дяденька, у вас очень сильно ус отклеился. А ещё у вас скорость SSD и HDD на небольших блоках и произвольном доступе равны, чего быть не может. А равны они потому, что у вас что-то совсем не то с SSD. И с NVME у вас тоже что-то совсем не то. Произвольный доступ на уровне 12 МБ/с это, как бы, вовсе не NVME.
А скорость HDD в ATTO равная 7,7ГБайт/с (!!!) вас вообще ни разу не смутила? И произвольный доступ HDD там же на уровне 64+ МБайт/с вас тоже не смутил? При таком HDD вам SSD и не нужен вовсе!
Причём SSD вам не нужен категорически и бесповоротно, так как он вас в этом тесте оказался в разы медленнее (!!!) HDD! Срочно выкидывайте все SSD и переходите на HDD!

Короче, при таких настройках виртуализации, как у вас, все ваши рекомендации не имеют никакого смысла. HDD быстрее SSD, NVME равный SSD, SSD со скоростью произвольного доступа, как у HDD и прочие чудеса.
Чем в таком случае нужно руководствоваться, чтобы выбрать нужное? Ничем. Только тесты гонять на конкретные задачи и по результатам выбирать в каждом конкретном случае.
Нет, оно понятно, что все так делают и при такой цене иначе (наверное) нельзя. Понятно, что если хочется хоть какой-то предсказуемости и "честности" в ресурсах, то нужно брать хотя бы VDS, а не VPS, но статья в результате получилась максимально бессмысленная.

Дааа... это, по-моему, палево конкретное.... RND4K Q1T1 у HDD и NVME почти одинаковый!

"HDD" слишком быстрый, задержка на уровне SSD. SSD слишком медленный. NVME на уровне обычного SSD.

Мне кажется, что у всех вариантов там внутри под капотом, - примерно одно и тоже, просто настроены разные политики и разные протоколы доступа торчат в виртуальную машину. А обозначения, - это всего лишь маркетинг.

Крутые в Ru-VDS сервера, у них даже скорость HDD превышает возможности SATA

На одно и то же не похоже. Скорее всего, там и правда NVME/SSD/HDD, но лимиты по IOPS настроены то ли одинаково, то ли криво. Я бы поставил на "криво" - например, одинаковые настройки лимитов и шейпера для SSD и NVME. В результате имеем то, что видим - чудеса чудесатые.

На одно и то же не похоже. Скорее всего, там и правда NVME/SSD/HDD, но лимиты по IOPS настроены то ли одинаково, то ли криво. Я бы поставил на "криво" - например, одинаковые настройки лимитов и шейпера для SSD и NVME. В результате имеем то, что видим - чудеса чудесатые.

тут интереснее другой вопрос. Понятно, что сервера живут на виртуализации. Но решений для адекватной гиперконвергенции - не так много, штук ну пять, и все они , естественно, работают с репликацией. Но в таком случае даже для как-бы-локального-нвме - получим задержку на репликацию, причем - учитывая прочие особенности - еще и может оказаться что без RDMA. Ну и , какой тут тогда профит NVME ?
Прямо хоть пили статью "рувдс, вот вы завели себе 20 ботов для игры в плюс-минус-слив кармы, может заведете нормального автора" ?

Когда скорость у NVME падает до 16 МБайт/сек, то никакими разумными задержками этого уже не объяснить.

А потом приходишь в Яндекс облако, а они троттлят IO так что SSD превращается в дискетку

иначе не заоверселлить сервера )

Тут на самом ничего интересного, но вот важный момент, который в комментариях они сами отметили - они не делают nvme в рейд и есть хорошее объяснение.

Так что тут скорее вывод о том, что лучше планируйте ваше потребление памяти :)

Тут на самом ничего интересного, но вот важный момент, который в комментариях они сами отметили - они не делают nvme в рейд и есть хорошее объяснение.

Все гораздо проще: нужна пересадка рук, знакомство с стандартными счетчика Windows, и внимательное чтение ссылок на тот же блог вдс,а точнее на комментарии амарао в нем

Не надо никакой пересадки рук. Я уверен, что автор вполне грамотный инженер.
Но у него нет мотивации делать правильно.

Нет имени и фамилии в подписи - нет репутации среди инженеров. Нет мотивации от руководства. А напротив, есть мотивация фигачить статьи пофиг на качество. За это премию платят.

Вот и имеем что имеем

SSD или NVMe

Не хочется быть занудой, но сокращение «sata ssd или nvme ssd» до «ssd или nvme» режет глаз

Ага. "Вам пепси или колу?"

сравните пож-та DDR3 DDR5 и DDR6
и
CPU и GPU в в ML

А вы не можете? Какая связь дисков и памяти в абстрактной сферической конфигурации непонятно чего?
При чем тут ML и память, как сравнить, универсальность, стоимость, производительность? При каких входных параметрах?

мне не зачем сравнивать, есть разные поколения технологий они не сравниваются...

так вот сравнение HDD SSD и NvME это разные поколения

Sign up to leave a comment.