The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Как устроены дата-центры Google

04.03.2005 13:48

Интересный перевод доклада по организации кластерного хозяйства в Google (перевод webplanet.ru):

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

Некоторые подробности того, как устроены пресловутые дата-центры Google, раскрыл вице-президент Google, руководитель инженерного отдела Урс Хольцль (Urs Hoelzle), выступая на одной из конференций для разработчиков.

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

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

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

Во-первых, это собственная файловая система Google File System, которая оптимизирована для работы с большими блоками данных по 64 МБ, а также обладает повышенной защитой от сбоев. Вся информация копируется и хранится в трех местах одновременно, при этом система способна очень быстро находить реплицированные копии, если какая-то машина вышла из строя. Задачи автоматического восстановления после сбоя решаются с помощью программ, созданных по модели MapReduce. За последний год, по словам Хольцля, компания Google значительно расширила использование этой системы упрощенной обработки данных в больших кластерах.

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

Серверы работают под управлением Linux. За основу был взят стандартный дистрибутив Red Hat, в котором ядро операционной системы было модифицировано с учетом нужд Google.

Инженеры компании также разработали специальную систему для быстрой обработки больших объемом данных и мгновенной выдачи результатов в ответ на запросы. Весь поисковый индекс разделен на блоки (shads), которые тоже постоянно реплицируются на случай сбоя. Отдельные машины предназначены для хранения документов, которые роботы Google скачивают и индексируют.

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

Еще одной важная проблема, которую пришлось решать инженерам Google, — это такая работа программ, чтобы они могли отправлять запросы и быстро обрабатывать информацию сразу с тысяч серверов, то есть нужно было эффективное распараллеливание задач. Для этого программистами Google разработан специальный "менеджер задач" особого рода под названием Globa Work Queue. Он разбивает задачи на части и распределяет нагрузку между серверами.

  1. Главная ссылка к новости (http://webplanet.ru//news/inte...)
  2. OpenNews: Как много серверов обслуживают Google
  3. Оригинал на английском: Google's secret of success? Dealing with failure
Лицензия: CC BY 3.0
Источник: webplanet.ru
Короткая ссылка: https://opennet.ru/5145-cluster
Ключевые слова: cluster
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (12) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Dvorkin (??), 17:59, 04/03/2005 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    супер. вот бы все это да по GPL! :)
     
     
  • 2.2, klalafuda (?), 18:28, 04/03/2005 [^] [^^] [^^^] [ответить]  
  • +/
    а зачем?

    // wbr

     
     
  • 3.5, GR (??), 22:53, 04/03/2005 [^] [^^] [^^^] [ответить]  
  • +/
    Дык! Перекрасить кнопочки и сделать FORK!
     
     
  • 4.8, klalafuda (?), 08:13, 05/03/2005 [^] [^^] [^^^] [ответить]  
  • +/

    а зачем?

    // wbr

     
  • 4.12, нео (?), 03:33, 18/12/2009 [^] [^^] [^^^] [ответить]  
  • +/
    http://www.youtube.com/watch?v=zRwPSFpLX8I&videos=QDLKZL1RL2g
    Без лишних слов все ясно
     
  • 2.4, GliNT (??), 20:32, 04/03/2005 [^] [^^] [^^^] [ответить]  
  • +/
    "Вот бы этих всех инженеров из Google с их технопарком да чтобы задарма работали!"
    :)
     

  • 1.3, vitamin (?), 20:25, 04/03/2005 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Не помню где, но я всё это уже читал, причём год назад. Там ещё было сказано про GMail.
     
  • 1.6, Alex_IZA (?), 05:48, 05/03/2005 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Интересно бы уточнить так сколько тысяч там херовых компов ?
    И что то я не уверен что S390 выглядел бы хуже за милион бакосв ?
     
     
  • 2.9, Andrey Mitrofanov (?), 11:55, 05/03/2005 [^] [^^] [^^^] [ответить]  
  • +/
    > Интересно бы уточнить так сколько тысяч там херовых компов ?

    Я смутно припоминаю упоминавшееся число 10000... По ссылке "Как много серверов обслуживают Google" выше приводится оценка 45000..80000.

    В этой статье упоминаются лишь "тысячи серверов"...

    http://news.com.com/2102-1032_3-5596811.html?tag=st.util.print

    Гм... Ж)) http://www.google.ru/search?q=Google+thousand+servers+cluster

    http://google.com/search?q=Google+claims+to+operate+the+world's+largest+Linux+cluster

    http://www.answers.com/topic/google

    2000: примерная оценка. ""According to John Hennessy and David Patterson's Computer Architecture: A Quantitative Approach, the server farm cluster forming the Google "search farm" would in the year 2000 have consisted of about 6000 processors, 12000 common IDE-disks (2 per machine, and one machine per processor)""

    2004, апрель: приблизительная оценка 45-80 тыс. выглядит так: ""    * 719 racks
        * 63,272 machines
        * 126,544 CPUs
        * 253,088 GHz of processing power
        * 126,544 GB of RAM
        * 5,062 TB of hard drive space
    ""

    Похоже, "официального" числа они сами не называют. Ну десять тысяч, ну сто -- какая разница?! Работает же!

    http://www.hi.is/~joner/eaps/goog100.htm

    http://google.com/search?q="Hundred+Thousand+Servers"+Google


    > И что то я не уверен что S390 выглядел бы хуже за милион бакосв ?

    Когда у Вас будет _два_ миллиона, Вы, безусловно, истратите их с пользой и победите свою неуверенность. :-P

    А два с половиной Феррари (кра-асных!) _выглядели_ бы даже лучше, чем S390.

     

  • 1.7, Аноним (7), 05:53, 05/03/2005 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    На опеннете это и было в новостях еще и фотки прилагались только статья другая
     
  • 1.10, CDigger (?), 07:34, 07/03/2005 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    >За основу был взят стандартный дистрибутив Red Hat, в котором ядро операционной системы было модифицировано с учетом нужд Google

    Даже забавно... Неужели "модификации" столь незначительны, что еще ожно упоминать об оригинале;) Прямо PR какой-то;))) Своя FS, свой менеджер задач... Ну и много там от RHL осталось?
    rpm, наверно, LoL!!!

     
     
  • 2.11, Алексей (??), 12:28, 07/03/2005 [^] [^^] [^^^] [ответить]  
  • +/
    судя по обзору менеждер задач это не task scheduler внутри одного тазика - а  программа которая разбивает один запрос и распаралеливает по нескольким серверам.
     
     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру