Рубрика «хранение данных» - 13

Современные накопители очень быстры, но плохие API это не учитывают - 1

Почти десять лет я проработал в компании, создающей довольно специализированный продукт — высокопроизводительные системы ввода-вывода. Я имел возможность наблюдать за быстрой и решительной эволюцией технологий хранения данных.

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

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

Вот самые распространённые примеры таких заблуждений:

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

Однако если изучить спецификации современных NVMe-устройств, то мы увидим, что даже в потребительском классе это устройства с задержками, измеряемыми в единицах микросекунд, и пропускной способностью в несколько ГБ/с, поддерживающие несколько сотен тысяч произвольных IOPS. Так в чём же нестыковка?Читать полностью »

ZFS: архитектура, особенности и отличия от других файловых систем - 1

Frozen cells by arbebuk

Я, Георгий Меликов, являюсь контрибьютором проектов OpenZFS и ZFS on Linux. Также я занимаюсь разработкой IaaS в команде облачной платформы Mail.ru Cloud Solutions. Хотя в продакшене нашего подразделения мы и не используем ZFS, но хозяева подкаста SDCastЧитать полностью »

В статье перечислены особенности двух популярных форматов сериализации, которые следует учитывать архитектору, выбирая один из них.

Размер и скорость

В сети можно найти сравнительные тесты форматов сериализации. Не стоит придавать значение конкретным числам, так как скорость сериализации/десериализации, как и размер получающихся двоичных данных, зависит от конкретной схемы данных и от реализации сериализатора. Отметим лишь, что авро и протобаф занимают лидирующие позиции в подобных тестах.

Преимущество aвро в том, что поля записи сохраняются одно-за-другим, без разделителей. Но, имея дело с авроЧитать полностью »

Как определить, что в жестком диске применена технология SMR - 1

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

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

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

Но если диск уже попал к вам в руки, определить использование технологии SMR можно достаточно просто. Далее я расскажу о том, как это сделать.
Читать полностью »

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

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

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

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

В этом повествовании будет рассказана история жесткого диска из ноутбука Hitachi HTS547575A9E384, который прошел достаточно длинный путь, прежде чем вернуть данные своему владельцу.

Хождение по рукам или грустные реалии рынка услуг восстановления данных - 1

Рис. 1 Hitachi HTS547575A9E384 обычно выглядит так.
Читать полностью »

image

«УРАЛХИМ» делает удобрения. № 1 в России — по производству аммиачной селитры, например, входит в топ-3 отечественных производителей аммиака, карбамида, азотных удобрений. Выпускаются серные кислоты, двух-трёхкомпонентные удобрения, фосфаты и многое другое. Это всё создаёт агрессивные среды, в которых выходят из строя датчики.

Мы строили Data Lake и заодно охотились на те датчики, которые замерзают, выходят из строя, начинают давать ложные данные и вообще ведут себя не так, как должны себя вести источники информации. А «фишка» в том, что невозможно строить матмодели и цифровые двойники на базе «плохих» данных: они просто не будут правильно решать задачу и давать бизнес-эффект.

Но современным производствам нужны Data Lake'и для дата-сайентистов. В 95 % случаев «сырые» данные никак не собираются, а учитываются только агрегаты в АСУТП, которые хранятся два месяца и сохраняются точки «изменения динамики» показателя, которые вычисляются специально заложенным алгоритмом, что для дата-сайентистов снижает качество данных, т. к., возможно, может пропустить «всплески» показателя… Собственно, примерно так и было на «УРАЛХИМЕ». Нужно было создать хранилище производственных данных, подцепиться к источникам в цехах и в MES/ERP-системах. В первую очередь это нужно для того, чтобы начать собирать историю для дата-сайенса. Во вторую очередь — чтобы дата-сайентисты имели площадку для своих расчётов и песочницу для проверки гипотез, а не нагружали ту же самую, где крутится АСУ ТП. Дата-сайентисты пробовали сделать анализ имеющихся данных, но этого не хватило. Данные хранились прореженные, с потерями, часто неконсистентные с датчиком. Взять датасет быстро не было возможности, и работать с ним тоже было особо негде.

Теперь вернёмся к тому, что делать, если датчик «гонит».
Читать полностью »

Создание зашифрованного диска с «двойным» дном с помощью Veracrypt - 1

VeraCrypt — свободный форк TrueCrypt используемый для сквозного шифрования в Windows, Mac OSX и Linux, и позволяет шифровать системный диск, отдельный внутренний или внешний диск или создавать виртуальные диски с использованием файлов-контейнеров.

В этой статье мы рассмотрим интересную возможность VeraCrypt для создания зашфированного диска со скрытым разделом, этот метод, так же называемый методом «двусмысленного шифрования», обеспечивает возможность правдоподобного отрицания наличия второго тома, т.к. не обладая нужным паролем, доказать существование скрытого тома не представляется возможным.Читать полностью »

“Всем знаком закон Мура, описывающий уменьшение размеров транзисторов в логических схемах. Для того, чтобы он продолжал работать, технологам приходится идти на все новые и новые ухищрения, однако их работу несколько усложняет то, что все чипы очень разные по структуре. А что было бы, если бы можно было оптимизировать технологию под конкретный дизайн микросхемы? Ответ на этот вопрос может дать динамическая память.”

Классический пример работы закона Мура — ячейка статической памяти. Ее схема давно известна и широко используется, занимая десятки процентов площади современных микропроцессоров и систем на кристалле. Именно площадь ячейки статической памяти стали использовать как мерило плотности упаковки новых технологий, когда стало понятно, что длина канала транзистора больше не может быть эталоном проектных норм. Учитывая важность статической памяти, технологи стараются подбирать параметры процессов так, чтобы не только в принципе увеличивать плотность упаковки элементов на кристалле, но и заботиться конкретно о статической памяти. Однако, на чипе всегда есть множество других схем, и если очень сильно упираться в оптимизацию именно памяти, это может выйти боком. Но что было бы, если бы технологию можно было полностью подчинить нуждам схемотехники? Ответ на этот вопрос может дать динамическая память.
Что под капотом чипа DRAM, этапы развития технологии - 1
Читать полностью »

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

Мы не могли обойти эту тему и финансировали исследование, проведённое независимой исследовательской компанией IDC. Результаты получились любопытные и впервые в Рунете мы их публикуем именно на Хабре.

Бизнес без данных — деньги на ветер - 1


Эта милая олдскульная картинка не имеет ничего общего с миром данных, в котором мы живём. Сейчас данные — это не длинная комната с ящиками, это просто вся планета Земля
Читать полностью »

Я, исследуя устойчивость хранения данных в облачных системах, решил проверить себя, убедиться в том, что понимаю базовые вещи. Я начал с чтения спецификации NVMe для того чтобы разобраться с тем, какие гарантии, касающиеся устойчивого хранения данных (то есть — гарантии того, что данные будут доступны после сбоя системы), дают нам NMVe-диски. Я сделал следующие основные выводы: нужно считать данные повреждёнными с того момента, как отдана команда записи данных, и до того момента, как завершится их запись на носитель информации. Однако в большинстве программ для записи данных совершенно спокойно используются системные вызовы.

В этом материале я исследую механизмы устойчивого хранения данных, предоставляемые файловыми API Linux. Кажется, что тут всё должно быть просто: программа вызывает команду write(), а после того, как работа этой команды завершится, данные будут надёжно сохранены на диске. Но write() лишь копирует данные приложения в кеш ядра, расположенный в оперативной памяти. Для того чтобы принудить систему к записи данных на диск, нужно использовать некоторые дополнительные механизмы.

Устойчивое хранение данных и файловые API Linux - 1

В целом, этот материал представляет собой набор заметок, касающихся того, что я узнал по интересующей меня теме. Если очень кратко рассказать о самом важном, то получится, что для организации устойчивого хранения данных надо пользоваться командой fdatasync() или открывать файлы с флагом O_DSYNC. Если вам интересно в подробностях узнать о том, что происходит с данными на пути от программного кода к диску, взгляните на эту статью.
Читать полностью »


https://ajax.googleapis.com/ajax/libs/jquery/3.4.1/jquery.min.js