rămâneți la curent cu cele mai recente tendințe tehnologice
Alăturați-vă DataFlair pe telegramă!!
obiectiv
în Apache Spark, un agent distribuit este responsabil pentru executarea sarcinilor, acest agent este ceea ce numim Spark Executor. Acest document vizează întregul concept de Apache Spark Executor. De asemenea, vom vedea metoda de creare a instanței executor în Spark. Pentru a învăța în profunzime, vom vedea și metoda de lansare a sarcinii în Spark Executor.
Apache Spark Executor pentru executarea sarcinilor Spark
trebuie să testați învățarea Spark
ce este Spark Executor
practic, putem spune că executorii din Spark sunt noduri de lucru. Acestea ajută la procesarea responsabilă de rularea sarcinilor individuale într-un anumit loc de muncă Spark. Mai mult, le lansăm la începutul unei aplicații Spark. Apoi se execută de obicei pentru întreaga durată de viață a unei aplicații. De îndată ce au rulat sarcina, Trimite rezultate șoferului. Executorii oferă, de asemenea, stocare în memorie pentru RDD-urile Spark care sunt memorate în cache de programele utilizatorului prin Block Manager.
în plus, pentru durata de viață completă a unei aplicații spark, rulează. Aceasta deduce alocarea statică a Spark executor. Cu toate acestea, putem prefera și alocarea dinamică.
mai mult decât atât, cu ajutorul Heartbeat Sender Thread, trimite valori și batai de inima. Unul dintre avantajele pe care le putem avea la fel de mulți executori în Spark ca noduri de date. În plus, este posibil să aveți cât mai multe nuclee pe care le puteți obține din cluster. Un alt mod de a descrie Apache Spark Executor este fie prin id-ul lor, nume de gazdă, mediu (ca SparkEnv), sau classpath.
cel mai important punct de remarcat este Backend Executor gestiona exclusiv Executor în Spark.
aruncați o privire la certificările de top Spark
Heartbeat receptor’ s heartbeat Message Handler-Spark Executor
Condiții pentru a crea Spark Executor
unele condiții în care creăm Executor în Spark este:
- când Grossegrainedexecutorbackend primește mesajul RegisteredExecutor. Numai pentru Spark Standalone și fire.
- în timp ce MesosExecutorBackend Mesos înregistrat pe Spark.
- când LocalEndpoint este creat pentru modul local.
crearea instanței Spark Executor
folosind următoarele, putem crea Spark Executor:
- din ID-ul executorului.
- prin utilizarea SparkEnv putem accesa MetricsSystem locale, precum și BlockManager. Mai mult, putem accesa și serializatorul local prin acesta.
- din numele de gazdă al executorului.
- pentru a adăuga la classpath tasks, o colecție de borcane definite de utilizator. În mod implicit, este gol.
- de pavilion dacă se execută în modul local sau cluster (dezactivat în mod implicit, adică cluster este preferat)
trebuie să citiți Spark SQL Features
mai mult decât atât, atunci când crearea este de succes, mesajele INFO unul pop-up în jurnalele. Asta este:
Info Executor: începând cu ID-ul executorului pe gazdă
Heartbeater — Heartbeater Sender Thread
practic, cu un singur fir, heartbeater este un daemon ScheduledThreadPoolExecutor.
noi numim acest thread pool un șofer-heartbeater.
sarcina de lansare — metoda launchTask
folosind această metodă, executăm simultan sarcina serializedTask de intrare.
Spark Executor – lansarea sarcinilor pe Executor folosind TaskRunners
să revizuim algoritmul Spark Machine Learning
launchTask(context: ExecutorBackend,taskId: Long,attemptNumber: Int,taskName: String,serializedTask: ByteBuffer): Unit
mai mult, prin utilizarea launchTask folosim pentru a crea un TaskRunner, intern. Apoi, cu ajutorul taskId, îl înregistrăm în registrul intern runningTasks. După aceea, îl executăm pe” Executor task launch worker ” thread pool.
„Executor Task Launch Worker” thread Pool — ThreadPool proprietate
practic, pentru a lansa, de sarcină ID-ul lucrător de lansare. Acesta utilizează ThreadPool daemon cache thread pool. Mai mult, în același timp de creare a Spark Executor, threadPool este creat. De asemenea, îl oprește când se oprește.
trebuie să citiți despre Streaming structurat în SparkR
concluzie
ca rezultat, am văzut, întregul concept de executori în Apache Spark. Mai mult decât atât, am învățat, de asemenea, modul în care executorii Spark sunt utile pentru executarea sarcinilor. Avantajul major pe care l-am învățat este că putem avea câți executori dorim. Prin urmare, executorii ajută la îmbunătățirea performanței scânteii sistemului. Am acoperit fiecare aspect despre Apache Spark Executor de mai sus. Cu toate acestea, dacă apare o interogare, nu ezitați să întrebați în secțiunea de comentarii.