- PVSM.RU - https://www.pvsm.ru -

Работа с данными: Как это делают крупные компании

Работа с данными: Как это делают крупные компании - 1 [1]

/ фото Jason Tester Guerrilla Futures [2] CC [3]

Компания IDC сообщает [4], что в 2011 году человечеством было сгенерировано 1,8 зеттабайт информации. В 2012 году эта цифра составила уже 2,8 зеттабайт, а к 2020 она увеличится до 40 зеттабайт.

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

По словам [5] Шона Галлахера (Sean Gallagher), редактора Ars Technica, компания Google стала одним из первых веб-игроков, кто встретил проблему масштабирования хранилищ грудью. Ответ на вопрос компания нашла еще в 2003 году, разработав распределенную файловую систему – Google File System (GFS).

Если верить [6] исследователю Санджаю Гхемавату (Sanjay Ghemawat) и старшим инженерам Говарду Гобиоффу (Howard Gobioff) и Шунь-Так Лэуну (Shun-Tak Leung) из Google, то GFS разработана с определенной спецификой. Её цель – превратить огромное количество дешевых серверов и жестких дисков в надежное хранилище для сотен терабайт данных, к которым имеют доступ множество приложений одновременно.

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

Работа с данными: Как это делают крупные компании - 2

/ The Google File System [7]

Система содержит [5] мастер-серверы и серверы фрагментов (chunkservers), которые хранят данные. Обычно GFS-кластер состоит из одной главной мастер-машины и множества серверов фрагментов. Файлы в GFS разбиваются на куски с фиксированным, но настраиваемым размером, которые серверы фрагментов хранят как Linux-файлы на локальном жестком диске (однако для повышения надежности каждый фрагмент дополнительно реплицируется на другие серверы).

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

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

Поврежденные фрагменты определяются при помощи вычисления контрольных сумм. Каждый кусок разбивается на блоки по 64 КБ с 32-битной контрольной суммой. Как и другие метаданные эти суммы хранятся в памяти и регулярно пишутся в логи отдельно от данных пользователя.

За все время существования GFS платформа Google развивалась и адаптировалась под новые требования, у поисковика появлялись новые сервисы. Получилось так, что размеры кластеров в GFS перестали подходить для эффективного хранения всех типов данных. К 2010 году исследователи компании изучили достоинства и недостатки GFS и применили приобретённые знания для создания новых программных систем.

Так на свет появились [8] распределенная файловая система Colossus (GFS2), Spanner (развитие BigTable) – масштабируемое геораспределенное хранилище с поддержкой версионности данных, масштабируемая система обработки запросов Dremel, Caffeine – инфраструктура поисковых сервисов Google, использующая GFS2, итеративный MapReduce и next-generation BigTable, и др. Сегодня они решают более сложные задачи и обрабатывают большее количество информации, открывая новые возможности.

Работа с данными: Как это делают крупные компании - 3

/ фото Atomic Taco [9] CC [10]

Однако с большими объемами данных «сражается» не только Google. Необычный подход к хранению данных и репликации нашла [11] компания Uber. Вместо того чтобы постоянно синхронизировать базу данных между ЦОДами, специалисты сервиса по предоставлению автомобилей решили организовать внешнюю распределенную систему из телефонов водителей.

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

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

В случае Uber, если в дата-центре произойдет какая-либо ошибка, информация о поездке всегда сохранится на мобильном устройстве водителя. Поскольку смартфон обладает самыми актуальными данными, то именно с него актуальная информация поступает в ЦОД, а не наоборот.

Мобильные телефоны водителей отправляют [12] данные каждые 4 секунды. «По этой причине перед Uber стояла задача обработки миллионов операций записи в секунду», – отметил Мэтт Рэнни (Matt Ranney), главный разработчик архитектуры системы Uber, в ходе презентации о масштабировании платформы.

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

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

«Цифровая платформа Uber агрегирует поразительное количество данных, – отметил Тайлер Джеймс Джонсон (Tyler James Johnson) в Convergent Technology Advisors. – Карты, маршруты, информация о предпочтениях клиентов, связи – это лишь малая часть содержимого хранилищ Uber. Компания много инвестирует в развитие цифровых технологий. Данные – это основа всего».

Эти данные важно сохранить, поскольку они пригодятся компании в будущем. Не за горами появление автопилотируемых автомобилей. Компания Gartner предсказывает, что одна из пяти машин в мире будет обладать беспроводным подключением уже к 2020 году, а это, на секундочку, 250 миллионов подключенных транспортных средств.

Пока что лидером на этом рынке остается Google, но параллельно с технологическим гигантом над подобными системами работают Tesla, Ford, Apple. Не отстает и Uber. У компании имеется Центр разработки передовых технологий, который работает в партнерстве с Университетом Карнеги – Меллона в Питтсбурге. В нем разрабатывают умные автомобили и другие технологии, способные помочь компании повысить качество предоставляемых сервисов и снизить их стоимость.

«Увеличение объемов создаваемого и потребляемого цифрового контента приведет к необходимости создания новых более сложных информационных систем, – сказал [12] Джеймс Хайнс (James Hines), руководитель исследований в Gartner. – В то же время применение этих технологий в автосфере приведет к появлению новых бизнес-моделей и подходов к владению автомобилями в городской среде».

Автор: 1cloud.ru

Источник [13]


Сайт-источник PVSM.RU: https://www.pvsm.ru

Путь до страницы источника: https://www.pvsm.ru/google/123650

Ссылки в тексте:

[1] Image: http://habrahabr.ru/company/1cloud/blog/302124/

[2] фото Jason Tester Guerrilla Futures: https://www.flickr.com/photos/streamishmc/

[3] CC: https://creativecommons.org/licenses/by-nd/2.0/

[4] сообщает: http://www.webopedia.com/quick_ref/just-how-much-data-is-out-there.html

[5] словам: http://arstechnica.com/business/2012/01/the-big-disk-drive-in-the-sky-how-the-giants-of-the-web-store-big-data/

[6] верить: https://www.quora.com/How-do-big-companies-like-Google-and-Facebook-replicate-their-data

[7] The Google File System: http://static.googleusercontent.com/media/research.google.com/en//archive/gfs-sosp2003.pdf

[8] появились: http://www.codeinstinct.pro/2013/11/google-platform.html#references

[9] фото Atomic Taco: https://www.flickr.com/photos/atomictaco/7960716222/in/photolist-d8sKzY-e11Kbv-7Fd8JJ-cs5KDs-6gYLjx-dmjkSk-pWqu7c-55R24s-e11JZ4-eeinFB-e17qB9-8T1eHB-V1eKq-dmjp3S-cs67ry-65cUp7-hnHULa-cs5MhC-pmiLpB-dUrJa2-dGkDJ9-qdMd23-cs65bN-cs5QkS-oBFpDS-5akwi9-dJNuM8-6SZom-q1Snz8-8Vvws-cqqwcb-iFVWP-4qFg4S-cs5Pnj-57vTPS-eZv37-ok8fq8-4BxHYC-q1Cob8-chaxty-cs6brY-pxDgC-pWgAxh-dJNtNX-9Qu5c-8Vvwh-6h3W3W-8cd3Np-DqpnY-imfDLH

[10] CC: https://creativecommons.org/licenses/by-sa/2.0/

[11] нашла: http://highscalability.com/blog/2015/9/21/uber-goes-unconventional-using-driver-phones-as-a-backup-dat.html

[12] отправляют: http://datacenterfrontier.com/uber-data-center-expansion/

[13] Источник: https://habrahabr.ru/post/302124/?utm_source=habrahabr&utm_medium=rss&utm_campaign=best