Invitamos a los futuros estudiantes del curso "Ecosystem Hadoop, Spark, Hive" al seminario web abierto sobre el tema "Spark Streaming" . En el seminario web, los participantes, junto con un experto, se familiarizarán con Spark Streaming y Structured Streaming, estudiarán sus características y escribirán una aplicación de procesamiento de flujo simple.
Y ahora compartimos contigo la traducción tradicional de material útil.
Las aplicaciones Spark son fáciles de escribir y fáciles de entender cuando todo va según el plan. Sin embargo, esto se vuelve muy difícil cuando las aplicaciones de Spark comienzan a iniciarse lentamente o fallan. A veces, una aplicación bien ajustada puede fallar debido a cambios en los datos o cambios en la composición de los datos. A veces, una aplicación que ha funcionado bien hasta ahora comienza a comportarse mal por falta de recursos. La lista sigue y sigue.
Spark, , , , .., , .
, Spark . — .
Spark , (OOM) , . , Spark . OOM:
Spark
(high concurrency)
, Spark . , , OOM, , - OOM. Spark . OOM, .
, . .
Spark — JVM (Java Virtual Machine) , . OutOfMemory
— OOM ( - Spark. Spark — . . , . , .
, OutOfMemory
OOM ( ) , :
rdd.collect()
sparkContext.broadcast
,
Spark.sql.autoBroadcastJoinThreshold
.
Spark . , . .
, . . , , , , .
SQL (Structured Query Language) Spark, OOM - , , ; "spark.sql.autoBroadcastJoinThreshold
" ( ) , .
Spark, . — , . .
, OOM, , Spark .
Spark , . , , , .. map-stage ( SQL), , , .
, ORC (Optimized Row Columnar) 2000 , map-stage 2000 , , . reduce-stage ( Shuffle), Spark "spark.default.parallelism
" RDD (Resilient Distributed Dataset), "spark.sql.shuffle.partitions
" DataSet ( ). , "spark.executor.cores
". , OOM ( ). , , , , OOM.
, (map) SQL HDFS ( Hadoop distributed file system) Parquet/ORC. HDFS Spark 128 . , 10 , 128*10 . , .
Spark Parquet ( ) . , Spark Parquet . Parquet , . . , Spark . , , , , . .
, , . , (broadcast join), (broadcast variables) . , .
Spark's Catalyst , , . , Parquet/ORC. , . , .
. , , . . () , .
Spark. .
. , -. spark.executor.memory
spark.driver.memory
. , . . Unravel (Unravel Data Operations Platform) .
, YARN (Yet Another Resource Negotiator — ), OOM (killed) - YARN. "YARN kill" :
YARN Spark, . — off-heap , JVM , JVM. spark.yarn.executor.memoryOverhead
. 10% .
Spark , Spark. Spark , . , , .
Spark : . , , - , . .
, ( — 300). "spark.memory.fraction
". — 60%. 50% ( "spark.memory.storageFraction
") .
, , , , . , , . , , , , , .
, , "spark.memory.storageFraction
" , .
Spark , , . . () () GC (Garbage Collector), . .
. , , . , . , , .
Spark YARN, NodeManager ( ) , . NodeManager 1 . , , - , NodeManager . NodeManager, .
№1,
Spark — . , Spark . Spark . , . , , .
, Spark. , Unravel , , , . -, Unravel . Spark.
, Spark : , , , , Spark.
« Hadoop, Spark, Hive».
«Spark Streaming».