Upload
yandex
View
1.441
Download
2
Embed Size (px)
DESCRIPTION
Насколько надёжным должно быть надёжное хранилище данных? Готова ли ваша система к выходу из строя дисков, серверов, целых дата-центров? Или это маловероятные события? В 2007 году вероятность глобального экономического кризиса была меньше 8 %. А через год в США произошла экономическая катастрофа, которая повлекла за собой проблемы мирового масштаба. Как подготовить систему к неожиданностям такого уровня? В докладе представлено хранилище данных Elliptics, которое решает подобные проблемы архитектурно. Помимо надёжности, рассмотрены такие его возможности, как асинхронная запись, географическая балансировка запросов, создание CDN, p2p-стриминг данных клиентам, вторичные индексы, распределённый кэш, server-side-обработка данных. Вы узнаете, как Elliptics используют в Яндексе и чем эта открытая система хранения данных может быть полезна вам.
Citation preview
Elliptics
Safe… and the really safe
Elliptics
Надежность или “это маловероятно”?
Elliptics
Вероятность некоторых событий ОЧЕНЬ мала
Что будет с вами, если такое событие все же произойдет?
Elliptics
В 21 веке с проблемами дисков бороться научились
RAID, репликация, Reed-Solomon, LDPC и много чего еще
Elliptics
Что будет, если выйдет из строя сервер?
А если это какой-нибудь “мастер-сервер”?
Elliptics
А если отключили датацентр?Авария, пожар, наводнение, электричество, сантехник?Или это снова “маловероятное” событие?
Elliptics
Причины потерь серверов, датацентров, связности (*)
* ураган, пожар, наводнение, землятресение * техподдержка ошиблась стойкой * ошибка NOC (должно быть на первом месте?) * сгоревший в трансформаторной котик * к кластеру виртуалок “подселили” кого-то очень злого * облачный провайдер “внезапно” вышел из бизнеса * …
(*) все примеры из реальной жизни
Elliptics
Исправить можно всё
Если у вас достаточно времени, денег...и больше нечем заняться
Elliptics
Eventual consistencyСовсем не плохо, а даже хорошо
Elliptics
The ultimate performance guide: * parallel write * asynchronous IO
Elliptics
* IO balancing* weighted replica selection* zero storage host lookup
Elliptics
Cache everything~2.000.000 rps from 10 nodesComplex queries
Elliptics
Secondary indexes
Elliptics
* O(1) lookup time* Redirect & CDN* Data streaming