background top icon
background center wave icon
background filled rhombus icon
background two lines icon
background stroke rhombus icon

Скачать "1.1 Архитектура HDFS"

input logo icon
Теги видео
|

Теги видео

Анатолий Карпов
Аналитика
машинное обучение
data science
SQL
база данных
Python
pandas
визуализация
карьера
зарплата аналитика
курсы
karpov courses
курсы по программированию
курсы по аналитике
курсы по стастистике
dataframe
ML
stepik
Субтитры
|

Субтитры

subtitles menu arrow
  • enАнглийский
Скачать
00:00:08
всем привет меня зовут пилипенко антон
00:00:11
сегодня у нас первая лекция по секции
00:00:13
пик дата и посещал она будет в
00:00:16
распределенной файловой системе hd fs
00:00:18
давайте начнем немножко с истории в 2002
00:00:22
году внутри компании яху возникла
00:00:24
потребность увеличивает свое влияние на
00:00:27
рынке поисковых систем соответственно
00:00:29
для этого нужно было собирать большое
00:00:31
количество информации в интернете
00:00:32
каким-то образом и и сохранять
00:00:35
обрабатывать и таким образом строить
00:00:36
некий поисковые индекса которые дальше
00:00:38
можно было бы использовать внутри своего
00:00:40
поисковика
00:00:41
как вы понимаете интернет уже даже на
00:00:44
тот момент был уже довольно большое по
00:00:46
объему соответственно первое с чем
00:00:48
столкнулась компании яху с тем что нет
00:00:51
возможности хранить такое большое
00:00:52
количество информации на любого размера
00:00:55
серии или серверах соответственно
00:00:57
проблема встала в полный рост пытались
00:01:00
реализовать с помощью
00:01:02
обычных реляционных баз данных но в
00:01:05
общем и целом даже на тот момент даже
00:01:07
большие проприетарные решение типа
00:01:09
oracle они позволяли такое большое
00:01:11
количество информации каким-то образом
00:01:13
надежно хранить с
00:01:15
какой-то адекватной стоимостью год так
00:01:18
ребята из yahoo учились мучились но в
00:01:21
2003 году на одной из конференций
00:01:23
выходит команда из google и рассказывать
00:01:25
как они эту проблему решили внутри своей
00:01:27
компании и рассказывает про концепцию
00:01:29
распределенные файловой системой которую
00:01:31
назвали google file system ровно год
00:01:34
потребовался компании yahoo для того
00:01:36
чтобы эти идеи которые были подчеркнуты
00:01:38
на конференции и реализовать в
00:01:40
собственном продукте и таким образом
00:01:41
появилась собственная разработка по
00:01:44
мотивам jeeves который назвали мдф с
00:01:47
соответственно эта аббревиатура от плача
00:01:49
дистрибьютор file system по факту это
00:01:51
первый прародитель текущего их девайс
00:01:54
которая есть у нас сейчас
00:01:56
окей с проблемой хранения данных
00:01:59
компаний яху справилась ну тут встала в
00:02:02
полный рост другая проблема что такое
00:02:04
большое количество информации каким-то
00:02:06
образом эффективно обрабатывать за
00:02:08
достаточной скоростью тоже непонятно как
00:02:11
соответственно опять был ступор опять
00:02:13
было непонятно что делать но опять-таки
00:02:15
компания google всех спасает и в 2004
00:02:18
году на также одной из конференций
00:02:20
рассказывают как можно использовать
00:02:22
механизмы придется либо алгоритмы
00:02:25
previews для того чтобы обрабатывать
00:02:27
большие объемы информации
00:02:29
аналогично как с gfs точно также за год
00:02:33
ребята из команды начали зуют
00:02:35
собственный мо придет движок внутри
00:02:37
своего проекта мальчики таким образом
00:02:39
получается некий симбиоз из системы
00:02:41
хранения информации и соответственно
00:02:43
системы обработки информации
00:02:46
посмотрев на это все осознав то что в
00:02:49
общем и целом теперь вот эти две части
00:02:51
являются двумя частями никого единого
00:02:54
целого ребята понимает что в принципе
00:02:57
это можно назвать неким фреймворком либо
00:03:00
никакой там системой обработки и
00:03:01
хранения информации и в принципе
00:03:03
использовать не только для того чтобы
00:03:04
хранить данные от поисковых роботов и
00:03:07
каким-то образом устроить поисковый
00:03:09
индекс а в принципе как некий фреймворк
00:03:11
общего назначения с помощью которого
00:03:13
можно было бы хранить любую
00:03:15
неструктурированную или полу структуре
00:03:17
структурированная информация и
00:03:19
соответственно обрабатывать ее довольно
00:03:20
эффективно и таким образом в 2006 году
00:03:23
из
00:03:25
составных частей наш дистрибьютор file
00:03:28
system не собственной реализации
00:03:29
механизма принес получается проект
00:03:32
hadoop а здесь
00:03:35
интересной истории является то как
00:03:37
вообще в принципе название hadoop у нас
00:03:39
получилось
00:03:40
в команде которая разрабатывала вот этот
00:03:44
самый движок был такой разработчик это
00:03:47
развале ducati нг и дух котенком в
00:03:50
принципе давным-давно уже занимался на
00:03:52
тот момент разработкой и как бы интернет
00:03:55
технологий и понимал что для того чтобы
00:03:57
продукт которые они предлагают
00:04:00
сообществу было легко искать чтобы он
00:04:03
был у него было какое-то некое броское
00:04:05
название нужно придумать какое-то
00:04:07
уникальное название то есть назвать его
00:04:09
что будьте потом массив перелил
00:04:11
фреймворк ну как бы было бы не круто
00:04:13
потому что это очень много такие всяких
00:04:15
похожих вещей и очень трудно было бы
00:04:18
найти его в поисковике из этой мысли он
00:04:20
ходил долгое время и потом в какой-то
00:04:22
момент когда и раз собственным сыном
00:04:25
услышал слова ходу и он подумал что нет
00:04:29
такого слова ходу в английском языке и
00:04:31
попытался узнать что же такое на самом
00:04:33
деле именно этим словом его маленький
00:04:35
сын называл маленького желтого плюшевого
00:04:38
слонёнка и таким образом название ходу
00:04:41
он проверил в поисковике нет такого
00:04:44
слова hadoop ничего не находилось по
00:04:46
этому слову соответственно это
00:04:47
уникальное такое некое слово некое
00:04:49
название которое очень классно было бы
00:04:50
использовать для проекта и так как это
00:04:53
была маленькая желтая плюшевая игрушка
00:04:56
его сына соответственно логотипом ходу
00:04:58
то тоже стал маленький желтый слоник и
00:05:01
таким образом в 2006 году
00:05:04
мапри дьюс и соответственно
00:05:06
распределенная файловая система вместе
00:05:08
стали называться ходу и в 2008 году
00:05:11
после того как ребята из компании еху
00:05:15
выложили исходные коды на apache
00:05:17
software foundation в 2008 году проект
00:05:21
hadoop стал одним из самых топовых среди
00:05:24
вообще всех проектов которые есть в
00:05:25
принципе на почти втрое foundation
00:05:27
давайте посмотрим в верхний уровень
00:05:29
архитектура распределенной файловой
00:05:31
системы как вы заметили теперь он
00:05:33
называется не наш дистрибьютор file
00:05:34
system hадeюcь дистрибьютор file system
00:05:36
что в общем то довольно логично нужно
00:05:38
отметить что хоть это и называется
00:05:41
файловой системы на ключевым здесь
00:05:43
является то что оно распределенная то
00:05:45
есть в отличие от обычных файловых
00:05:47
систем например x 3 x 4 нтс fat32 и так
00:05:51
далее это не является файловая система в
00:05:54
таком
00:05:56
общеизвестном понимание то есть вы не
00:05:59
сможете с помощью hd fs отформатировать
00:06:01
какой-то диск например на вашем ноутбуке
00:06:03
либо соответственно вашем компьютере
00:06:06
либо на сервере а по большому счету hd
00:06:08
fs это набор большого количества всякого
00:06:12
рода системных служб которые
00:06:13
обеспечивают доступ к данным которые
00:06:15
хранятся распределена как будто бы это
00:06:18
один большой диск либо какая-то одна
00:06:21
большая большая флешка
00:06:22
то бишь это является кластер им решением
00:06:26
и внутри кластера у нас по факту есть
00:06:29
две категории серверов
00:06:31
первая категория сервировка так
00:06:33
называемый узлы имен либо на и моды если
00:06:36
мы говорим как бы на про английское
00:06:38
название и так называемый сервера данных
00:06:40
да это ноты соответственно тоже
00:06:42
по-английски в самом простом варианте
00:06:45
когда у нас самый примитивный кластер у
00:06:47
нас есть одна на им надо и большое
00:06:49
количество data not на им надо является
00:06:52
по факту неким таким координатором неким
00:06:54
мозгом нашего кластера и она хранит всю
00:06:58
самую важную информацию которая
00:07:00
соотносится к некому описанию структуры
00:07:03
данных которые нас хранится и всякого
00:07:05
рода метаданные то есть
00:07:08
всякого рода
00:07:10
дерево каталогов права доступа
00:07:13
репликация фактор чуть попозже мы
00:07:15
поговорим что это такое и так далее так
00:07:17
далее все это хранится у нас на 1 вроде
00:07:19
другая категория серверов которые
00:07:22
называются дата надо
00:07:23
выполняет функцию именно хранение данных
00:07:26
ничего не знаю на самом деле о том что
00:07:28
она хранит то есть каждый из серверов
00:07:30
которые у которого есть роль дата ноты
00:07:33
он просто хранит набор каких-то блоков
00:07:35
данных у которых есть некая информацию
00:07:39
какого размера этот блок на
00:07:40
соответственно какой там фактор
00:07:42
репликации должен использоваться еще не
00:07:44
терять дополнительной информации но ни
00:07:47
одна из data not в кластере не может
00:07:50
знать какому файлу каждый из блоков
00:07:52
относятся
00:07:55
чуть попозже мы посмотрим как это
00:07:57
работает как это собирается как
00:07:59
происходит чтение как происходит запись
00:08:02
если верхний уровень взглянуть давайте
00:08:04
мы посмотрим что у нас есть еще на этом
00:08:07
слайде наверняка вы заметили что у нас
00:08:10
есть две группы data not под названием
00:08:13
рек один эрик 2 вообще рекам обычно ну
00:08:17
скажем так в мире серверов в мире
00:08:20
администраторов называют серверные
00:08:22
стойки то есть вот такой большой
00:08:23
железный шкаф в который просто
00:08:25
закатываются большое количество серверов
00:08:27
и хорошей практики является то что
00:08:29
внутри каждого река внутри каждой стойке
00:08:32
есть собственное сетевое оборудование
00:08:34
которое позволяет
00:08:35
объединять сервера в рамках одной стойки
00:08:38
в условно говоря одноранговая сеть то
00:08:41
есть если вам нужна какая-то сила я
00:08:43
коммуникации между двумя серверами
00:08:44
которые находятся в одной стойке то вам
00:08:47
не нужно как бы вы не тратите
00:08:50
дополнительные какие-то
00:08:51
мощности или так называемых опыта есть
00:08:54
это переходы между активными сетевыми
00:08:56
оборудование для того чтобы это
00:08:57
коммуникацию произвести то есть
00:08:59
максимальную пропускную способность
00:09:00
внутри стойки обеспечить отдельным
00:09:02
сетевым устройством а каждая историк
00:09:04
соответственно соединена с другими
00:09:06
стойками уже на уровне именно этих
00:09:08
сетевых маршрутизаторов также свечей
00:09:11
таким образом получается что с одной
00:09:14
стороны у нас есть очень хорошая
00:09:18
пропускная способность в рамках одной
00:09:20
стойке на 1 моды но с другой стороны
00:09:23
если у нас выходит из строя именно
00:09:25
сетевое оборудование внутри этой стойки
00:09:27
то получает что мы теряем всю стойку и
00:09:29
для того чтобы избежать вот это вот
00:09:33
этих потерь и минимизировать в принципе
00:09:36
риски
00:09:38
какой-то сетевой недоступности либо
00:09:40
какого-то отказываться сетевого
00:09:42
оборудования при записи наш dfs используется
00:09:46
следующий алгоритм
00:09:47
если у нас есть возможность разбить
00:09:49
наших наши да там надо наши сервера на
00:09:52
так называемой рынке обычно это все таки
00:09:54
очень сильно связано с тем как физически
00:09:56
устроена наш кластер если у нас как бы
00:09:59
есть понимание если у вас есть доступ
00:10:00
серверную комнату соответственно вы
00:10:02
можете сделать наиболее эффективно если
00:10:04
у вас нет такой возможности то в
00:10:06
принципе наверное такая опция не очень
00:10:09
полезная будет но тем не менее если вы
00:10:11
знаете как он физически расположены
00:10:12
сервера какие у вас стоят сетевые
00:10:14
устройства и как у вас устроена сеть то
00:10:17
вы можете собрать несколько рынков на
00:10:20
обычно это по количеству стоек давайте
00:10:22
поговорим о том что такое репликация
00:10:24
репликация в общем смысле это некая
00:10:26
избыточность хранение информации которая
00:10:29
позволяет нам потерять одну или
00:10:31
несколько копий той самой информации
00:10:32
которому избыточных ранен
00:10:35
в нашем случае все данные которые мы
00:10:39
записываем виде файлов они бьются на так
00:10:42
назад блоки в отличие от обычных
00:10:44
файловых систем размер блока наш dfs
00:10:47
можно варьировать для всей системы в
00:10:50
целом для какой-то конкретной партии
00:10:52
либо соответственно для каждого
00:10:53
конкретного файла
00:10:55
этот размер блока можно менять но можно
00:11:00
менять только на момент записи потому
00:11:01
что аж dfs это
00:11:03
распределенная файловая система которая
00:11:05
не поддерживает изменений то есть если
00:11:07
оно нужно поменять что-то файле по факту
00:11:09
мы его должны прочитать поменять где-то
00:11:12
и записать заново то есть единственное
00:11:14
что мы можем оском так как будто бы
00:11:16
изменить файл является то что мы в конец
00:11:19
файла можем просто дописать какую-то
00:11:20
информацию но поменять что-то в начале
00:11:22
либо в середине мы не можем это вот
00:11:25
некое такое ограничение распределенной
00:11:26
файловой системы и
00:11:28
общем-то возвращаясь к репликации в
00:11:31
момент когда мы записываем записываем
00:11:33
каждый из блоков
00:11:35
из которых состоит наш файл должен
00:11:38
где-то в рамках кластера появится еще
00:11:41
один такой же блок либо там несколько
00:11:44
блоков зависит от того в какое число
00:11:46
этот самый рипли тещин фактор выставлен
00:11:48
эмпирически было выяснено что реплики
00:11:51
вечный фактор равный 3 является ну некой
00:11:54
такой оптимальной величиной то есть при
00:11:57
хранении данных мы по факту храним три
00:11:59
копии наших данных и это позволяет нам с
00:12:02
одной стороны надежно хранить с другой
00:12:05
стороны это может нам очень скажем так
00:12:10
может быть неким подспорьем при
00:12:13
обработке информации потому что если мы
00:12:15
знаем что у нас есть три копии этих
00:12:18
данных и у нас есть например три задания
00:12:21
которые используют эти данные то по
00:12:22
факту каждое задание может обратиться к
00:12:24
разным серверам и таким образом снизить
00:12:26
нагрузку на какой-то конкретный сервер
00:12:28
отдельные и неким образом размазывать
00:12:31
нагрузку на чтении либо на запись между
00:12:35
соответственно несколькими серверами
00:12:36
таким образом утилизация наших ресурсов
00:12:38
будет наиболее эффективное и
00:12:40
вот в момент записи данных на hd fs если
00:12:45
например нас репликейт фактор равняется
00:12:47
3 как я уже сказал некий эмпирический
00:12:49
коэффициент у нас происходит запись
00:12:52
следующим образом 1 блок данных например
00:12:54
у нас пишется на какой-то сервер в реке
00:12:57
номер один второй блок данных пишется в
00:13:00
любой сервер в реке номер два это нужно
00:13:03
для того чтобы как раз в случае потери
00:13:06
всего река то есть потери всей сетевой
00:13:08
всей серверные стойки у нас данные все
00:13:11
равно остались в рамках кластера не были
00:13:13
бы доступны и соответственно 3 3 блок 3
00:13:17
реплика нашего головка пишется на
00:13:19
какой-нибудь случайный сервер другой но
00:13:21
во втором рынке то есть это в тот рэп
00:13:24
который мы записали второй блок давайте
00:13:26
посмотрим на примере каким образом
00:13:27
происходит запись на hd ips на примере
00:13:30
лего кубиков у нас есть некий файл
00:13:33
который состоит из четырех блоков
00:13:35
соответственно как происходит запись мы
00:13:38
берем первый блок и записан на его на
00:13:40
какой-то из серверов
00:13:43
соответственно как я уже сказал алгоритм
00:13:46
записи в рамках кластера предполагает
00:13:48
что второй третий блок мы будем писать
00:13:50
на другие сервера соответственно мы
00:13:52
пишем вторую реплику нашего блока на 2
00:13:55
сервера и соответственно 3 третью
00:13:57
реплику на 3 сервер потом мы берем
00:14:02
второй блок и пишем его точно также но
00:14:06
так как у нас умный алгоритм и записи он
00:14:08
понимает что эти сервера у нас уже
00:14:10
хранят какую-то информацию поэтому пишем
00:14:13
нашу первую реплику на 4 сервер и
00:14:16
каким-то случайным образом
00:14:18
соответственно две копии нашего блока
00:14:21
точно также пишем на различные сервера
00:14:25
берем третий блок соответственно точно
00:14:28
также пишется на какой-то из серверов и
00:14:31
в его реплики точно также пишутся на
00:14:34
какие-то другие сервера ну и
00:14:36
соответственно с четвертым блоком у нас
00:14:38
происходит все то же самое
00:14:41
таким образом если мы теряем любой из
00:14:44
серверов у нас получается что в принципе
00:14:47
наш файлик взяв блоки с различных
00:14:53
оставшихся с
00:14:55
оставшихся серверов мы можем наш файлик
00:14:58
собрать обратно
00:14:59
вот примерно таким образом в упрощенной
00:15:02
схеме и работает акация данных на записи
00:15:06
и таким образом мы можем даже при потере
00:15:09
одного либо нескольких серверов собрать
00:15:11
воедино собственно файл который у нас
00:15:13
есть именно для этого нужно репликация
00:15:15
да мы платим за это избыточным хранением
00:15:18
но тем самым мой в первую очередь
00:15:20
обеспечиваем высокую доступность наших
00:15:22
данных давайте посмотрим как устроена
00:15:25
дата но до внутри дата но ты точно также
00:15:29
развернуто некая программа печенье
00:15:31
которые внутри которого есть тоже некий
00:15:35
java процесс который называется дейтон
00:15:38
от процесс этот процесс занимается тем
00:15:40
что управляет и мониторить состояние тех
00:15:44
блоков данных которые соответственно
00:15:45
каждый конкретный сервер хранит то здесь
00:15:48
очень важно понимать что каждая дата
00:15:50
надо занимается обслуживанием и
00:15:52
хранением только тех блоков которые были
00:15:55
на него записаны
00:15:56
каждая отдельная дата надо ничего не
00:15:59
знает о том какие данные хранят другие
00:16:02
дата но ты точно также дата надо не
00:16:05
знает к какому файлу относятся борт
00:16:08
данных которые она хранит это на самом
00:16:10
деле очень важное замечание то есть по
00:16:13
большому счету вы можете уже сейчас
00:16:16
скажем так достаточно с достаточной
00:16:19
долей вероятности предположить что в
00:16:22
данной архитектуре у нас на им надо
00:16:24
является
00:16:25
единой точкой отказа и на самом деле все
00:16:28
так и было когда у нас был hadoop версии
00:16:31
1 до седин сны скажем так возможностью
00:16:35
сделать некую там восстанавливаем
00:16:38
конфигурацию было то что мы вот раздел
00:16:41
где хранится наша file system metadata
00:16:44
то есть metadata метаданные которые
00:16:46
хранятся в виде файлов
00:16:48
монтировалась как сетевой ресурс как
00:16:51
некий сетевой раздел на
00:16:53
нфс и то есть это сетевая файловая
00:16:56
система и соответственно таким образом
00:16:58
ну как будто бы гарантировать то что
00:17:02
даже если она сломается сразу все диски
00:17:04
или не знаю взорвется сервер там и эта
00:17:07
информация не потеряем мы и сможем
00:17:08
подключить другому серверу и
00:17:10
соответственно таким образом
00:17:12
восстановить работоспособность на шины
00:17:13
им ноты и в общем работ способность
00:17:16
кластера но по большому счету до для
00:17:18
первой версии ходу по потере моим ноды
00:17:21
означало то что у нас данные физически
00:17:23
все есть но собрать из этих блоков
00:17:25
обратно единая некая там дерево
00:17:28
каталогов либо собрать эти файлы воедино
00:17:30
уже не каким образом мы не сможем потому
00:17:33
что каждая дата надо повторюсь она
00:17:35
хранит только те блоки которые были
00:17:37
записаны и ничего не знает про
00:17:39
окружающий мир как я уже сказал это было
00:17:41
актуально для версий hadoop 10 с выходом
00:17:45
ходу по версии 2 появилась возможность
00:17:47
добавлять в кластер так называемый стенд
00:17:50
на стенд бай оно им надо то есть это
00:17:53
отдельный сервер который занимается тем
00:17:55
что по факту ждет пока сломается наша
00:17:58
основная на им надо как только она шина
00:18:00
им надо сломалась специальный процесс
00:18:03
понимает что произошел какой-то сбой на
00:18:06
им нода недоступна соответственно
00:18:07
происходит автоматическое переключение
00:18:09
на стенд бай оно им надо если это было
00:18:13
какое-то кратковременное
00:18:15
происшествие да там кто-то выключил
00:18:18
свете или просто окончилась питание и мы
00:18:21
хотим обратно восстановить конфигурации
00:18:23
вот обратную возврат конфигурации
00:18:25
которая была возможна только в ручном
00:18:26
режиме то есть нет вас нет какой-то
00:18:29
автоматической процедуры который бы
00:18:31
возвращала
00:18:33
роли основной на и многие тайны многие
00:18:37
которые упала то есть это администратор
00:18:39
должен сделать руками давайте еще раз на
00:18:42
слайде проговорим каким образом у нас
00:18:44
происходит репликация данных при записи
00:18:47
на hd fs у нас есть некий файл на и у
00:18:52
него есть некий так называемый реплики
00:18:54
шин фактор которого нас здесь
00:18:56
обозначим буковкой r для реплики для
00:19:01
файла part -0 rip литейный фактор
00:19:03
равняется 2 соответственно у нас есть
00:19:07
для
00:19:08
наших блоков данных которые
00:19:12
соответственно относится к этому файлу
00:19:14
две копии в рамках нашего кластера и как
00:19:17
вы видите единичка у нас есть на первом
00:19:19
и на третьем сервере
00:19:21
посмотрим как выглядит разбиение по
00:19:25
блокам между серверами для файла part -1
00:19:28
соответственно сри плетей шин фактор
00:19:30
равняется трем и
00:19:33
боке у нас номер 245
00:19:37
смотрим сколько у нас двое чик двоечка у
00:19:39
нас на первом серии на втором и на
00:19:41
четвертом соответственно 3 реплики блока
00:19:44
номер два то же самое у нас с четвертым
00:19:46
блоком с блоком номер 4 соответственно
00:19:49
это 3 сервер это получается 6 сервер и
00:19:54
соответственно 7 8 и аналогично все для
00:19:58
5 блока данных в принципе все то же
00:20:01
самое как я показывал с кубиками но
00:20:03
здесь для каждого конкретного файла у
00:20:05
нас репетиция фактор выставлен свой и
00:20:07
соответственно таким вот образом у нас
00:20:09
раскидываются и балансируются блоки
00:20:11
данных между серверами и соответственно
00:20:13
таким образом мы достигаем высокой
00:20:15
степени доступности наших данных рамках
00:20:17
кластера как я уже говорил у нас на
00:20:20
внутренное моды есть специальный процесс
00:20:22
в памяти который хранит данные о том где
00:20:26
какой блок данных и где какой
00:20:29
соответственно неким мэппинг блоков
00:20:32
данных на файлы и все это хранится в
00:20:35
оперативной памяти нашей наивно да это
00:20:37
означает примерно следующее что в рамках
00:20:41
процесса которая работает на на им ноги
00:20:43
есть большое количество объектов в
00:20:45
памяти на то есть это обычный java
00:20:47
объект который внутри имеет некие поля
00:20:50
которые описывают конкретный файл
00:20:53
конкретный блок и проблема мелких файлов
00:20:56
заключается в том что если мы имеем
00:20:58
большое количество файлов на большое
00:21:00
количество блоков большое количество
00:21:03
блоков внутри одного файла это приводит
00:21:07
к тому что количество именно объектов
00:21:10
которые хранятся в памяти она начинает
00:21:12
увеличиваться просто в разы давайте
00:21:14
рассмотрим такой пример например у нас
00:21:16
есть
00:21:17
размер данных то есть у нас есть
00:21:20
какой-то там массив данных например один
00:21:23
гигабайт на и если мы выставляем размер
00:21:26
блока в 1 гигабайт и записываем эту
00:21:28
информацию одним файлом наш dfs у нас
00:21:30
получается что у нас есть один объект
00:21:34
описывающий файл на вот этот наш
00:21:36
оранжевый
00:21:37
блог и внутри него есть некий массив в
00:21:41
котором перечислены и именно все блоки
00:21:43
которые относятся к этому файлу так у
00:21:45
нас размер блока тоже один гигабайт так
00:21:48
и получается что по факту для того чтобы
00:21:50
описать именно мета информацию о
00:21:53
хранении этого файла нам нужно три
00:21:56
объекта один объект это файл второй
00:21:59
объект это блок и третий объект это
00:22:01
соответственно массив внутри которого
00:22:03
нас хранится информация о блоках этого
00:22:05
файла
00:22:06
посмотрим что может быть что может пойти
00:22:10
не так что где здесь может быть некая
00:22:12
особенность мы можем точно также этот
00:22:17
тот же самый гигабайт информация
00:22:19
записать на hd вс но выставить размер
00:22:23
блока например один мегабайт то есть для
00:22:26
того чтобы записать один гигабайт нам
00:22:27
потребуется 1000 блоков на hdpi си и в
00:22:31
итоге у нас получается что количество
00:22:34
объектов в памяти это первое файл второе
00:22:38
это соответственно массив в котором
00:22:41
будет храниться информация о блоках и
00:22:43
1000
00:22:45
объектов которые описывают каждый
00:22:47
конкретный блог в итоге у нас получается
00:22:49
1000 два объекта нам нужно для того
00:22:52
чтобы описать и соответственно хранить в
00:22:54
памяти информацию о том же самом объёме
00:22:57
данных о тех же самых данных просто они
00:23:00
лежат немножко как бы с другой разбивкой
00:23:02
по блокам это как бы скан так плохой
00:23:05
вариант и самый плохой вариант
00:23:07
заключается в том что мы тот же самый
00:23:10
массив информации
00:23:11
пишем маленькими файлами и в итоге у нас
00:23:14
получается он точно также например по
00:23:16
одному мегабайту и в итоге у нас
00:23:18
получается что для одного мегабайта
00:23:20
данных нам нужно как и в первом случае
00:23:22
три объекта в памяти и вот этих вот
00:23:26
кусочков у нас 1000 то есть у нас
00:23:27
получается три тысячи объектов нам нужно
00:23:30
для того чтобы описать хранение того же
00:23:33
самого объема информации и
00:23:36
получается что как бы идеальный вариант
00:23:38
для нас когда мы используем три объекта
00:23:41
в памяти да и самый плохой вариант когда
00:23:43
мы используем три тысячи объектов в
00:23:46
памяти и казалось бы в этом случае если
00:23:49
мы говорим о том как эффективно
00:23:51
использовать оперативную память в
00:23:53
утреннем но ты-то здесь по факту просто
00:23:56
берешь и пишешь большими файлами с
00:23:58
большим размером блоков и казалось бы
00:24:01
это некое серебряная пуля так и нужно
00:24:02
делать на самом деле не все так просто
00:24:04
потому что
00:24:08
репликация на передаче информации в
00:24:10
рамках кластера происходит именно на
00:24:12
уровне блоков поэтому дома безусловно
00:24:14
можем сделать размер блок и один
00:24:16
гигабайт и 10 гигабайт но если нам нужно
00:24:19
будет например одна строчка из данного
00:24:22
блока так это там несколько байт из
00:24:25
этого блока то посетить будет передано
00:24:27
именно вот весь блок то есть весь это
00:24:29
гигабайт будет прокачиваться по сети что
00:24:32
в свою очередь начинает очень сильно
00:24:35
давать нагрузку на сеть вообще в
00:24:38
принципе в кластерных системах в класть
00:24:39
иных решениях обычно узким местом
00:24:41
является именно сеть и поэтому вы как
00:24:44
разработчик вы как администратор баз
00:24:46
администратора кластер hadoop вы должны
00:24:49
найти некий баланс между размером блока
00:24:53
для того чтобы у вас эффективно
00:24:55
использовать оперативная память на на им
00:24:57
ноги и баланс чтобы у вас не было
00:24:59
какой-то избыточно большой нагрузки на
00:25:01
вашу сетевую инфраструктуру

Описание:

Подписывайтесь и следите за нами: https://karpov.courses/ https://vk.com/karpovcourses https://www.facebook.com/KarpovCourses-108649760868303 https://t.me/KarpovCourses

Готовим варианты загрузки

popular icon
Популярные
hd icon
HD видео
audio icon
Только звук
total icon
Все форматы
* — Если видео проигрывается в новой вкладке, перейдите в неё, а затем кликните по видео правой кнопкой мыши и выберите пункт "Сохранить видео как..."
** — Ссылка предназначенная для онлайн воспроизведения в специализированных плеерах

Вопросы о скачивании видео

mobile menu iconКак можно скачать видео "1.1 Архитектура HDFS"?mobile menu icon

  • Сайт http://unidownloader.com/ — лучший способ скачать видео или отдельно аудиодорожку, если хочется обойтись без установки программ и расширений. Расширение UDL Helper — удобная кнопка, которая органично встраивается на сайты YouTube, Instagram и OK.ru для быстрого скачивания контента.

  • Программа UDL Client (для Windows) — самое мощное решение, поддерживающее более 900 сайтов, социальных сетей и видеохостингов, а также любое качество видео, которое доступно в источнике.

  • UDL Lite — представляет собой удобный доступ к сайту с мобильного устройства. С его помощью вы можете легко скачивать видео прямо на смартфон.

mobile menu iconКакой формат видео "1.1 Архитектура HDFS" выбрать?mobile menu icon

  • Наилучшее качество имеют форматы FullHD (1080p), 2K (1440p), 4K (2160p) и 8K (4320p). Чем больше разрешение вашего экрана, тем выше должно быть качество видео. Однако следует учесть и другие факторы: скорость скачивания, количество свободного места, а также производительность устройства при воспроизведении.

mobile menu iconПочему компьютер зависает при загрузке видео "1.1 Архитектура HDFS"?mobile menu icon

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

mobile menu iconКак скачать видео "1.1 Архитектура HDFS" на телефон?mobile menu icon

  • Вы можете скачать видео на свой смартфон с помощью сайта или pwa-приложения UDL Lite. Также есть возможность отправить ссылку на скачивание через QR-код с помощью расширения UDL Helper.

mobile menu iconКак скачать аудиодорожку (музыку) в MP3 "1.1 Архитектура HDFS"?mobile menu icon

  • Самый удобный способ — воспользоваться программой UDL Client, которая поддерживает конвертацию видео в формат MP3. В некоторых случаях MP3 можно скачать и через расширение UDL Helper.

mobile menu iconКак сохранить кадр из видео "1.1 Архитектура HDFS"?mobile menu icon

  • Эта функция доступна в расширении UDL Helper. Убедитесь, что в настройках отмечен пункт «Отображать кнопку сохранения скриншота из видео». В правом нижнем углу плеера левее иконки «Настройки» должна появиться иконка камеры, по нажатию на которую текущий кадр из видео будет сохранён на ваш компьютер в формате JPEG.

mobile menu iconСколько это всё стоит?mobile menu icon

  • Нисколько. Наши сервисы абсолютно бесплатны для всех пользователей. Здесь нет PRO подписок, нет ограничений на количество или максимальную длину скачиваемого видео.