Big Data: Backup делать нельзя работать без него

«Золотое» правило всех администраторов баз данных – не делай ничего серьезного с базой данных, если у тебя нет бэкапа. Если ты собрался серьезно изменить параметры базы данных, провести операции по техническому обслуживанию базы данных и т.п. – то всегда перед этим надо выполнить операцию резервного копирования. Этот принцип достаточно долго работал и оправдывал себя, и даже в нескольких случаях помогал восстановить базу данных на определенный момент времени.

Недавно перед нами была поставлена задача – разработать процедуру резервного копирования хранилища данных размером в 20 Терабайт. Используя наработанные практики резервного копирования, я попытался разработать такую процедуру и уложиться в то же время в рамки RPO (recovery point objective) и RTO (recovery time objective). Обе эти характеристики измеряются во времени и представляют собой следующее: RPO – допустимый объем возможных потерь данных, RTO – допустимое время простоя или за какое время база данных должна восстановиться. Вот тут-то и началось самое интересное – как бы я не прикидывал и не рассчитывал, но разработанная процедура резервного копирования никак не желала укладываться в эти рамки – слишком большой объем данных надо было забэкапить. В самом лучшем случае, с многочисленными оговорками и условиями база данных восстанавливалась за несколько часов, а такого бизнес себе позволить не мог. Хотя, у Сбербанка на этот счет несколько иное мнение и они считают, что клиенты могут и подождать. Но тут был не Сбербанк. В обычной же ситуации, когда на базу данных не налагались серьезные ограничения и условия, восстановление заняло бы несколько дней. Это усугублялось тем, что невозможно «снять» бэкап за приемлемое время – это также занимало несколько дней и создавало большую нагрузку на базу данных. Сразу оговорюсь, что эта база данных не поддерживает инкрементальный бэкап в текущей версии. Возможно, если бы мы могли получить инкрементальность, то игра и стоила бы свеч, и традиционная процедура резервного копирования имела бы право на жизнь в этом случае.

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

Инкрементальность

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

Репликация

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

«Двойной» ETL

Как правило, перед тем, как попасть в хранилище данных, данные проходят через ETL или ELT процедуры. Сама аббревиатура ETL говорит нам, что данные перед тем, как попасть в хранилище данных соответствующим образом преобразовываются, а лишние данные отсекаются. Этот процесс можно распараллелить – т.е. сделать загрузку данных не в одно хранилище данных, а в два или несколько. Таким образом, у нас будет столько копий хранилища данных, сколько нам потребуется. Но, несмотря на это, такой подход обладает существенным недостатком – зачастую копии не идентичны, так как в процессе загрузки данных возникают ошибки и несоответствия. Не всегда понятно, какая из копий является более правильной. Может быть, какой-то бизнес и может допустить такое несоответствие, но если речь идет о финансовых компаниях, то тут такое допущение не имеет право на существование. Можно разработать сложную процедуру верификации и исправлении ошибок, но, как правило, это лишь затрудняет и замедляет весь процесс. Подводя итог этому подходу, можно сказать, что он применим в ограниченном количестве случаев.

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

Оригинал: [здесь]

Landing Page или как опознать кормильца?

Технические проблемы c проектором на крайней лекции по курсу «Современные Web-технологии» ускорили написание и завершение этого опуса, прежде всего, необходимого для демонстрации живых ссылок с иллюстрацией тезисов. Надеюсь, что это первая, т.е. не последняя, статья из серии материалов, посвященных одностраничным сайтам. Что это такое и для какой такой своей пользы необходимо и обязательно заниматься этим вопросом студентам Бизнес-информатики? В популярном «требнике» Wikipedia это явление называется «Целевая страница» — почитайте, это займет всего-то пять сек.

I. Прежде чем пытаться ответить на поставленный вопрос посмотрите герою дня в лицо. Типичные примеры:

Пример одностраничного сайта

Пример целевой страницы

Пример целевой страницы

Пример целевой страницы

Что отличает «кормильца»?

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

Чем выделяется типичный «кормилец»:

  • Состоит из всего одной страницы (логично следует из названия), выполненной, как правило, в HTML-коде с CSS, иногда, с JavaScript для драйва на стороне клиента без использования серверных скриптов или программ, баз данных и прочих сопутствующих инструментов;
  • Скромный дизайн, но качественные юзабилити, UI и простая, интуитивно-понятная, навигация на странице, подчеркиваю, на странице;
  • Агрессивный текст или попытка сделать текст таковым с «предложением, от которого невозможно отказаться», побуждающим посетителя к активным действиям без которых рухнет мир, вас ожидает большая беда, но вечное блаженство в противном случае;
  • Обилие красочных рисунков, шрифтов, цветов, заголовков и подзаголовков (зачастую гипнотически «глаз застит»), призванные произвести впечатление и надолго остаться в памяти посетителей;
  • Большая кнопка в стиле «Сделать заказ», «Не опоздай, регистрируйся», «Сделай это немедленно»;
  • Фотографии довольных посетителей, свершивших решающее деяние и ставших довольными клиентами с их восторженными отзывами;
  • Реже на теле кормильца имеются портреты создателя, автограф, биография;
  • Еще реже гарантии того, что вам не станет хуже от решительного нажатия кнопки;
  • Иногда одностраничник становится многоэкранником – текст занимает от 5 до 20 экранов, но html-файл при этом всегда один, но
  • Общая линейная схема построения так же всегда одна – яркий заголовок, слоган и от него вправо-вниз лента, как правило, с вертикальной прокруткой, на которой последовательно 1) обозначение проблемы и 2) единственного путь ее решения, 3) преимущества единственного решения, 4) восторженные отзывы тех, кто попробовал, 5) гарантии и 6) призыв к активным действиям. Навигация — вертикальная прокрутка по перечисленным пунктам. Грубо, но безотказно работает в сети для достижении поставленной цели — продажи.

III. Кому нужны одностраничники?

  • Прежде всего, торговцам одного товара;
  • Фрилансерам – для саморекламы, «себя не похвалишь, кто похвалит?», это сайт-визитка.
  • Организаторам мероприятий – для приглашения на одноразовое мероприятие (например, конференция, презентация или незабываемая свадьба).
  • Свежим выпускникам – для создания эффектного и простого резюме.
  • Жителям виртуального пространства, работающим над построением сайта – для создания временной страницы «Сайт находится в разработке».
  • Поклонникам принципов «меньше – это больше» под лозунгом «Краткость — сестра таланта».

Давайте предоставим сайтам-одностраничникам возможность говорить самим за себя или:

Источники для вашего вдохновения

  1. transferwindow
  2. Kit Kat
  3. HOW MUCH TO MAKE AN APP
  4. Angel Investor
  5. So you want to go to RISD
  6. Think Big
  7. Why should I subdue the world, if I can enchant it
  8. Social Snack
  9. Play dot to
  10. Kocha
  11. Adam Ruzki
  12. Adam Woodhouse
  13. Digital design conference
  14. Du 8 au 11 octobre, la ville de Nantes revit pour la 12ème fois au rythme du festival Intercult’ et cette année
  15. Kick My Habits
  16. My name is Nobuaki Honma
  17. Sam Markiewicz
  18. Nedgroup Investments
  19. Emma Galler
  20. Учимся делать одностраничные сайты (группа ВКонтакте)
  21. Живой ручей (пример одностраничника)
  22. Использовать одностраничные сайты в рунете можно и нужно. С умом и без слепого копирования
  23. Mokselle — Smart Marketing

В следующей статье сериала о рынке труда и зачем Вам нужен одностраничник.

Чуть-чуть философии

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

Вот несколько любимых цитат.

Понимание

  • Если Вы не можете объяснить просто, то не достаточно хорошо понимаете суть. (Альберт Эйнштейн)
  • Большинство фундаментальных идей в науке, по сути настолько просты, что, как правило, могут быть объяснены понятным всем языком. (Альберт Эйнштейн)
  • Единственно реальная ценность — интуиция. (Альберт Эйнштейн)
  • Все должно быть сделано наиболее просто, но не примитивно. (Альберт Эйнштейн)
  • Цель обработки данных — понимание, а не числа. (Ричард Хэмминг)
  • Вы можете узнать как называется птица на всех языках мира, но когда это произойдёт, то о птице не будете знать абсолютно ничего… так что давайте смотреть на птичку и видеть, что она делает — в этом суть. Я очень рано понял разницу между знанием и названием. (Ричард Фейнман)
  • Недостаточно лишь понять задачу, необходимо желание решить её. Без сильного желания решить трудную задачу невозможно, но при наличии такового возможно. Где есть желание, найдётся путь! (Дьёрдь По́йа)
  • Скажи мне и я буду слушать. Покажи мне и я буду смотреть. Но если ты позволишь мне испытать, я буду учиться. (Лао-Цзы)
  • У Вас есть пять лучших друзей: Что, Почему, Где, Когда и Как. Ни к кому не обращайтесь за нужным советом, кроме как к Что, Почему, Где, Когда и Как. Не верьте ничему и сомневайтесь только в том, что действительно вызывает сомнение. Найдя первый гриб или сделав первое открытие, осмотритесь вокруг, — они родятся пучками. (Дьёрдь По́йа)

Идеи и решения

  • Воображение важнее знания. (Альберт Эйнштейн)
  • Не стремитесь следовать по стопам мудрого. Искать то, что они уже нашли. (Мацуо Басе)
  • Если бы я слушал клиентов, то отдал бы им более быструю лошадь. (Генри Форд)
  • Отладка в два раза сложнее первоначального написания кода. Поэтому, если вы очень ловко пишете код, возможно, вы, по определению, не достаточно умны, чтобы его отладить. (Брайан Керниган)
  • Учениее — это разжигание костра, а не наполнение сосуда. (Сократ)
  • Когда вы убедились в правильности теоремы, то начинайте её доказывать. (Дьёрдь По́йа)
  • Моя цель — наилучшим и простым способом выразить на бумаге то, что я вижу и чувствую. (Эрнест Хемингуэй)

Истинные знания

  • Я ничего не знаю, кроме самого факта своего невежества. (Сократ)
  • Если я видел немного дальше, то только потому, что стоял на плечах гигантов. (Исаак Ньютон)

Межвузовский студенческий брифинг на английском языке «Возможности современных информационных ресурсов»

10 апреля в ЧЕЛГУ состоялся Межвузовский студенческий брифинг на английском языке «Возможности современных информационных ресурсов». Среди команд-участниц были представители вуза-организатора – ЧелГУ, ЮУрГУ, Русско-Британского института управления, и Челябинского института путей сообщения. ЮУрГУ представляли студенты кафедры «Информационные системы» факультета Экономики и предпринимательства Национального исследовательского Южно-Уральского государственного университета Пинтус Артур, Савицкий Артём, Сметанин Павел (все из группы ЭиП 212).
Читать далее «Межвузовский студенческий брифинг на английском языке «Возможности современных информационных ресурсов»»

Работаем со шрифтами на сайте

Экслюзивность сайта — это нестандартные шрифты

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

Ссылки по теме:
Шрифты Онлайн
The @font-face rule
Нестандартные шрифты на сайте
Cufon-font for the people

Идея двухлетней давности получила новое звучание в Швеции

Просматривая ленту Gizmag наткнулся на реализацию идеи, которая впервые была предложена полтора года назад в качестве задания на курсовое проектирование. Тема звучала так — «Трансляция в социальные сети оповещения о нападении». В результате было написано Техническое задание на разработку Java-приложения для мобильного телефона «Sony Ericson», который имеется в распоряжении автора, способное проводить аудио или видеотрансляцию о силовом давлении на владельца телефона непосредственно в Twitter и Facebook в надежде на то, что фалловеры потерпевшего, находящиеся в сети, немедленно на него откликнуться и смогут независимо попытаться оказать давление на причину опасности. Как известно, в качестве причины опасности для правозащитников, а в России и не только для правозащитников, могут выступать и силовые органы.

Однако, после серии успешных экспериментов и решения принципиальных задач step-to-step трансляции в социальные сети, но при прохладном отношении «заинтересованных лиц» труд был отложен в «дальний ящик стола». А теперь посмотрите, что сделали шведы (перевод статьи из Gizmag):

Борьба за права человека — благородное, но чрезвычайно опасное дело, когда становиться не просто абстракцией. Осознавая реальную возможность избиения, похищений и даже убийств, организация Civil Rights Defenders (Гражданские правозащитники) из Стокгольма запустила проект «Наталья». Проект, названный в честь Натальи Эстемировой, борца за права человека, похищенной и убитой в Чечне в 2009 году, основан на электронном браслете, для отправки запрограммированного тревожного сообщения по нажатию кнопки или его силовом срывании.

natalia-bracelet[1]

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

В Civil Rights Defenders немного туманно рассказывают о технологии, что вполне объяснимо. Однако, рассуждают о GPS и GSM, и о том, что в браслете запрограммированы «специальные протоколы безопасности». В дополнение к браслетам проект «Наталья» призывает людей подключиться к своему Twitter или Facebook для поддержки и еженедельных обновлений, а также для того, что бы стать частью глобальной сети оповещения.

По утверждению организации, письменное сообщение сигнала бедствия, прежде всего, рассылается расположенным поблизости добровольцам, а также в штаб-квартиру Civil Rights Defenders в Стокгольме. В этом сообщении содержится отметка времени и географические координаты места, полученные на основе триангуляции сигналов мобильного телефона. Сообщение о нападении, а так же рекомендуемые варианты действий будут отправлены по электронной почте, SMS, Facebook и Twitter тем, кто зарегистрирован в проекте. Есть надежда, что немедленная и широкая огласка о нападении позволит общественности оказывать давление от имени жертвы.

natalia-bracelet-6[1]

В Civil Rights Defenders надеются уже до конца текущего года сделать 30, а в 2014 году подключить уже 55 браслетов. Однако, пока средства есть только на один.

Видео с Интернет-площадки Civil Rights Defenders рассказывает о проекте «Наталья».
 

Источник: Civil Rights Defenders через Dvice

Прочитали? «Идей витает в воздухе», как говориться, главное, вовремя вдохнуть. Так вот, то что в задании на курсовой «круче», чем у шведов потому, что предусматривает трансляцию аудио и видео непосредственно с места события в real-time, ну точнее, почти в реальном времени, но «мелкими кусочками». А на таких материалах, которые сохраняются на независимом «облачном» сервере, по нашим законом уже может строиться доказательная база для суда.

Занятная задачка, как раз для «Умника» или «Старта»

Совсем недавно писал об идее использования социальных сетей для обеспечения собственной безопасности, которая относится к тем идеям, которые парят в воздухе и главное их вовремя «вдохнуть» для вдохновения. Как правило, такие идеи поражают тем, что «в самом деле, что за черт, вот же оно, как я то до этого не додумался, а Щастье было так рядом и возможно». Вот еще одно воплощение идеи, лежащей, как говориться, на поверхности. Но «у кого чего, болит, тот о том и говорит». Для меня их проблемы не актуальны, а вот программное временное дозирование лекарств в условиях амбулаторного лечения — действительно ценная мысль.
Читать далее «Занятная задачка, как раз для «Умника» или «Старта»»