作者: Dong | 新浪微博: 西成懂 | 可以转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明 网址:http://dongxicheng.org/mapreduce-nextgen/hadoop-yarn-event-driven/ 1. 函数调用与事件驱动 在基于函数调用的编程方式中,当一个对象要向另外
作者:Dong | 新浪微博:西成懂 | 可以转载, 但必须以超链接形式标明文章原始出处和作者信息及版权声明
网址:http://dongxicheng.org/mapreduce-nextgen/hadoop-yarn-event-driven/
1. 函数调用与事件驱动
在基于函数调用的编程方式中,当一个对象要向另外一个对象传递信息时,会直接采用函数调用的方式。比如在Hadoop中,当TaskTracker需要执行一个Task时,一般首先下载Task以来的文件(jar包、二进制文件等、字典文件等)、然后执行Task,同时在整个过程中,会记录一些关键日志,该过程可用下图表示:
基于函数调用的编程模型是低效的,它隐含中整个过程是串行、同步进行的。一种更为先进的编程模型是事件驱动,这在Hadoop YARN和Mesos等分布式系统中得到了广泛应用。在基于事件驱动的编程模型中,所有对象被抽象成了事件处理器,而事件处理器之间通过事件相互关联。每种事件处理器处理一种类型的事件,同时根据需要触发另外一种事件,该过程如下图所示。
相比于基于函数调用的编程模型,这种编程方式具有异步、并发等特点,更加高效,因此更加适合大型分布式系统。
2. Hadoop YARN中的事件驱动
我们以Hadoop中的调度器框架为例说明基于事件驱动的开发模块给Hadoop带来的变化。在Hadoop 1.0中,Hadoop中的调度器是可插拔的,一次调度过程如下所示:
步骤1???? TaskTracker向JobTracker发送心跳,请求新的任务
步骤2???? JobTracker收到心跳信息后,调用TaskScheduler(可能是JobQueueTaskScheduler、FairScheduler或者CapacityTaskScheduler)的assignTasks()函数,为该TaskTracker分配任务。
步骤3???? TaskScheduler通过一定的策略选择一个或者多个任务,并返回给JobTracker
步骤4???? JobTracker通过心跳应答将任务发给TaskTracker。
注意,上面的步骤1~4是一气呵成的,仅当这四个步骤全部完成,一次心跳发送才算完成。
而在YARN中,由于采用了事件驱动,资源汇报和任务获取可异步进行。如下图所示,NodeManager向ResourceManager汇报心跳信息后,ResourceManager会简单收集一些信息直接返回给对应的NodeManager,同时触发一个NODE_UPDATE事件,该事件会被ResourceScheduler接收并处理,如果ResourceScheduler发现节点有空闲资源,则采用一定的分配算法将该资源分配给应用程序,并将分配结果暂时放到一个缓冲区中,等待ApplicationMaster自己来取。
总之,采用事件驱动之后,ResourceManager中的心跳处理和资源分配可以异步并发进行,而不像JobTracker那样同步串行进行。
原创文章,转载请注明: 转载自董的博客
本文链接地址: http://dongxicheng.org/mapreduce-nextgen/hadoop-yarn-event-driven/
作者:Dong,作者介绍:http://dongxicheng.org/about/
Copyright © 2013
This feed is for personal, non-commercial use only.
The use of this feed on other websites breaches copyright. If this content is not in your news reader, it makes the page you are viewing an infringement of the copyright. (Digital Fingerprint:
)

Mysqlblobshavelimits: Tinyblob (255Bytes), Blob (65.535 Bytes), Mediumblob (16.777.215 Bytes), Andlongblob (4,294.967.295 Bytes) .TouseBl Obseffektiv: 1) TipperformanceImpactsandStorElargblobsexternal;

Zu den besten Tools und Technologien zur Automatisierung der Erstellung von Benutzern in MySQL gehören: 1. MySQLWorkbench, geeignet für kleine bis mittlere Umgebungen, einfach zu bedienen, aber mit hohem Ressourcenverbrauch. 2. Ansible, geeignet für Multi-Server-Umgebungen, einfache, aber steile Lernkurve; 3.. Benutzerdefinierte Python -Skripte, flexibel, müssen aber die Sicherheitskriptsicherheit gewährleisten. 4. Puppen- und Küchenchef, geeignet für groß angelegte Umgebungen, komplex, aber skalierbar. Bei der Auswahl sollten Maßstab, Lernkurve und Integrationsanforderungen berücksichtigt werden.

Ja, youcansearchinSideabloBinMysqlusingSpecifictechniques.1) konvertieren theBloboToAutf-8stringwithConvertfunctionandSearchused-Like.2) ficRpressedblobs, UseUncompressBeForeConversion.3) IncentalanceImpactSandSandDataCoding.4) Forcompomplexdata, ExternalPactsandDataCoding.4) Forcompomplexdata, ExternalPactsandDataCoding.4) Forcompomplexdata, ExternalPracing.

MySQLoffersvariousstringdatatypes:1)CHARforfixed-lengthstrings,idealforconsistentlengthdatalikecountrycodes;2)VARCHARforvariable-lengthstrings,suitableforfieldslikenames;3)TEXTtypesforlargertext,goodforblogpostsbutcanimpactperformance;4)BINARYandVARB

Tomastermysqlblobs, folge thessteps: 1) choosetheApprotedblobType (Tinyblob, Blob, Mediumblob, Longblob) basiertdondeatasize

BlobDatatypesinmysqlareUTForVoringLargebinaryDatalikeMageSoraudio.1) UseBlobTypes (Tinyblobtolongblob) basiertdatasizeneeds. 2) StoreBlobsin Perplate Petooptimize -Leistung.3) berücksichtigt den Vorbild für Forel Blob Romana DatabaseSizerIndimProveBackupupe

ToadduSerStomysqlfromtheCommandline, loginasroot, thenusecreateuser'username '@' host'identified by'password ';

MySqloffereightStringDatatypes: char, varchar, binär, varbarin, blob, text, enum.1) charisfixed-length, idealforconsistentDatalikecountrycodes.2) varcharisvariable-Länge, effizientes VariationDatalikenames.3)


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

Sicherer Prüfungsbrowser
Safe Exam Browser ist eine sichere Browserumgebung für die sichere Teilnahme an Online-Prüfungen. Diese Software verwandelt jeden Computer in einen sicheren Arbeitsplatz. Es kontrolliert den Zugriff auf alle Dienstprogramme und verhindert, dass Schüler nicht autorisierte Ressourcen nutzen.

SublimeText3 Linux neue Version
SublimeText3 Linux neueste Version

MinGW – Minimalistisches GNU für Windows
Dieses Projekt wird derzeit auf osdn.net/projects/mingw migriert. Sie können uns dort weiterhin folgen. MinGW: Eine native Windows-Portierung der GNU Compiler Collection (GCC), frei verteilbare Importbibliotheken und Header-Dateien zum Erstellen nativer Windows-Anwendungen, einschließlich Erweiterungen der MSVC-Laufzeit zur Unterstützung der C99-Funktionalität. Die gesamte MinGW-Software kann auf 64-Bit-Windows-Plattformen ausgeführt werden.

DVWA
Damn Vulnerable Web App (DVWA) ist eine PHP/MySQL-Webanwendung, die sehr anfällig ist. Seine Hauptziele bestehen darin, Sicherheitsexperten dabei zu helfen, ihre Fähigkeiten und Tools in einem rechtlichen Umfeld zu testen, Webentwicklern dabei zu helfen, den Prozess der Sicherung von Webanwendungen besser zu verstehen, und Lehrern/Schülern dabei zu helfen, in einer Unterrichtsumgebung Webanwendungen zu lehren/lernen Sicherheit. Das Ziel von DVWA besteht darin, einige der häufigsten Web-Schwachstellen über eine einfache und unkomplizierte Benutzeroberfläche mit unterschiedlichen Schwierigkeitsgraden zu üben. Bitte beachten Sie, dass diese Software

MantisBT
Mantis ist ein einfach zu implementierendes webbasiertes Tool zur Fehlerverfolgung, das die Fehlerverfolgung von Produkten unterstützen soll. Es erfordert PHP, MySQL und einen Webserver. Schauen Sie sich unsere Demo- und Hosting-Services an.
