Метка «хранение данных» - 2

При современном уровне развития ИТ отрасли, всё более критическим фактором становится производительность серверов и систем хранения. Заказчики готовы вкладывать всё большие средства, для достижения максимальных показателей. В большинстве случаев, использование накопителей, работающих на базе флэш-памяти позволяют значительно увеличить производительность высоконагруженных приложений, таких как базы данных, OLTP, OLAP и т.д.
В середине этого года, компания IBM представила линейку FlashSystem которая и включает в себя продукты, использующие флэш-память. В линейку вошли 4 модели: FlashSystem 710/720, 810/820. В моделях 710/720 используется SLC, а в 810/820 более надёжная eMLC память. Отвлёкшись от изучения, любимых нами, PCIe SSD, в распоряжении нашей тестовой лаборатории ненадолго оказался демо-экземпляр модели FlashSystem 820, объёмом 10Тб для более детального знакомства.

Тестирование IBM FlashSystem 820

Читать полностью »

Код статьи можно посмотреть здесь.

Чем так хорош Lua?

Когда-то я разрабатывал свою игру и задался вопросом: а какой формат данных лучше использовать?
Разработчики используют разные форматы: одни используют JSON, другие — XML, либо другие форматы данных. Ну а некоторые вообще хранят данные в .txt файлах или пишут свои парсеры. После рассмотрения различных форматов я остановился на Lua.

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

Вот, что выделяет Lua на фоне других форматов:

  • Lua легко использовать без дополнительных зависимостей (кроме одной библиотеки Lua и трёх .h файлов).
  • В Lua файлах данные можно инициализировать с помощью математических выражений или функций, написанных на Lua. Например:
    some_variable = math.sqrt(2) * 2
    some_variable2 = 64 * 16 - 32
    

  • Lua — очень быстрый язык, который к тому же не занимает много памяти.
  • У Lua лицензия MIT, которая позволяет использовать этот язык как в бесплатных, так и в коммерческих проектах, причём без всякой возни с бумагами. Как написано на сайте: «просто скачайте и пользуйтесь».
  • Lua комплируется практически везде, т.к. он написан на чистом C без использования дополнительных библиотек.
  • Данные можно хранить и сортировать в приятном глазу виде. Их легко читать и модифицировать в любом текстовом редакторе.

Начнём с простого примера, а затем я перейду к реализации класса.
Читать полностью »

Один лишний ватт потребляемой мощности — это много или мало?
Если речь идет о единственном диске, установленном в стационарном компьютере, питающемся от сети, то, пожалуй, говорить не о чем.
Если же мы рассматриваем информационно-вычислительный центр коллективного пользования, где находятся 25 000 серверов с 12 дисками в каждом, то за 5 лет разница в потребленной электроэнергии составит более 13 гигаватт-часов. При стоимости одного мегаватт-часа в 1000 рублей избыточные затраты превысят 13 млн. рублей!
Мы в HGST прекрасно понимаем, как важны эти ватты, и разрабатываем решения, которые позволяют экономить деньги, не экономя на производительности – одним словом, работаем на оптимизацию фактора общей стоимости владения (TCO). Так, например, SAS-диски HGST Ultrastar 7K4000 потребляют 7,6 Вт мощности при отсутствии ввода-вывода и 10,9 Вт при чтении/записи. От емкости диска потребляемая мощность не зависит. Таким образом, использование дисков повышенной емкости (например, 4-терабайтовых вместо 2-терабайтовых) в больших вычислительных центрах дает существенную экономию на электроэнергии, но не только: благодаря уменьшению числа дисковых систем сокращается занимаемая площадь, уменьшается количество сетевого оборудования, снижаются затраты на охлаждение и на резервное электропитание.Читать полностью »

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

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

Читать полностью »

Первый украинский SSD диск или вторая жизнь швейцарского компьютераК сожалению, огромное количество предприятий в Украине работают на устаревшем промышленном оборудовании, изготовленном пару десятков и более лет назад. После развала Союза и распродажи на металл станков местной разработки оставшиеся на плаву предприятия начали приобретать на западе подержанные станки с числовым программным управлением: плазморезы, дерево-, металлообрабатывающие станки, гравировальное оборудование и т.п. Но относительно невысокая стоимость такого железа имеет и обратную сторону – простои из-за отказов, недоступности запчастей, полного отсутствия поддержки.
Этот пост о том, как простая замена винчестера в деревообрабатывающем станке потребовала создания собственного твердотельного диска, и с какими трудностями мы столкнулись при его разработке. Кому интересно, как создавался первый украинский «винчестер-SSD», прошу под кат.

Читать полностью »

У меня дома, как и большинства тут присутствующих, валяется куча CD и DVD дисков. Этакий чемодан без ручки – и хранить без толку, и выбросить жалко. Какие-то бекапы, загрузочные и live СD, старые игрушки (в которые собираюсь лет десять как поиграть, только разгребусь с делами), пара десятков музыкальных альбомов (давно обосновавшихся в плеере). В общем, не мне вам рассказывать.

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

Итак, идея. Моя жена по утрам делает зарядку. Во время занятий она использует небольшие гантели по 2-3 кг каждая (уж не знаю почему, но в женском фитнесе используются малые веса). В общем, я подумал, почему бы не подвесить на гантели банки с дисками? Весят они подходяще. Пусть уж пользу приносят, чем без дела пылиться. Да и просто, должно получится смешно.

UPD: хабрасоседи, если вы минусуете, то можно хотя бы объяснить почему? Это же шутка, неужели непонятно?

DIY: гантели как способ хранения DVD дисковЧитать полностью »

Во время разработки одного проекта возникла необходимость хранить множество файлов (более 4 млн. штук). И их количество продолжало расти. Когда файлов стало более 6 млн., работать с ними стало затруднительно. Даже если разложить их по каталогам и создать разветвлённое дерево, обход даже части этих каталогов занимал часы. Разумеется, вначале никто не задумывался над тем, как все это хранить, и мы использовали обычный винт и ext4. В какой-то момент скорость чтения с этого раздела снизилась до 9MB/sec. Это слишком медленно. Экспериментальный переход на btrfs поднял скорость до 13MB, но такие показатели тоже не впечатляют. SSD для этого никто не собирался использовать да и объём уже перевалил за 1TB. Т.е. всё шло к использованию RAID'ов. Поскольку коммерческий успех проекта был под сомнением, то стоимость нужно было свести к минимуму. Следовательно, реализация должна была быть программной.

Итак, нужно небольшое хранилище — на одном сервере или компьютере, т.е. не более четырех дисков. Хранить нужно небольшие файлы — по 1-3Mb каждый.
Читать полностью »

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

Решаемая задача. Исходные данные

Итак, имеем сервер БД, с которым работают клиенты, и резервный сервер, на который надо настроить репликацию с основной базы данных.
В моём случае используется PostgreSQL 9.2.1, который установлен на обоих серверах и поддерживает потоковую репликацию. Предположим что база данных на основном сервере развернута и работает, на резервном только установлен, но не настроен PostgreSQL. Для примера возьмем IP-адрес 192.168.1.1 за адрес основного сервера, IP-адрес 192.168.1.2 — за адрес резервного.
Читать полностью »

Системы хранения данных: как медленно, но верно они отвязываются от железа
Авария в первом дата-центре и автоматический перезапуск сервисов в другом

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

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

К примеру — скорость света становится реальным физическим барьером, который не даёт заказчику поставить второй ЦОД дальше 40-50, а то и меньше, километров от первого.

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

HP StoreEasy – легкое хранение неструктурированных данных

HP в декабре обновила свою линейку NAS-систем младшего класса, и на смену ранее выпускавшимся NAS серии X (X1000, X3000 и X5000) пришли HP StoreEasy1000, 3000 и 5000. Разумеется, изменения по сравнению с предшественниками, не ограничиваются только новым брендом. Прежде всего — аппаратной основой новых систем стали выпущенные нынешней весной серверы HP ProLiant Gen8.
Читать полностью »


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