Resilient Distributed Dataset (RDD) este structura de date fundamentală din Spark: o colecție imutabilă de elemente distribuită pe nodurile clusterului, capabilă de recuperare automată în caz de defectare prin păstrarea arborelui genealogic de calcul (lineage graph).
Deși dezvoltarea modernă preferă DataFrames, SparkContext și RDD-urile rămân esențiale pentru transformarea datelor complet nestructurate (ex. loguri binare, fluxuri de biți brute) unde schema tabelară nu se aplică direct.
Exemplu: Numărarea frecvenței cuvintelor (Word Count) cu transformări RDD
sc = spark.sparkContext
text_data = ["apache spark procesare memorie", "spark distribuire calcul", "memorie rapida calcul"]
rdd = sc.parallelize(text_data)
# Transformări leneșe (flat_map, map, reduceByKey) și acțiune finală (collect):
word_counts = rdd.flatMap(lambda line: line.split(" ")) \
.map(lambda word: (word, 1)) \
.reduceByKey(lambda a, b: a + b) \
.collect()
print(dict(word_counts))
# Ieșire: {'apache': 1, 'spark': 2, 'procesare': 1, 'memorie': 2, 'distribuire': 1, 'calcul': 2, 'rapida': 1}
Întrebări & Exemple de Cod:
Nivelul de Bază Distribuit: SparkContext și RDD-uriAi o nelămurire despre utilizarea comenzii
Nivelul de Bază Distribuit: SparkContext și RDD-urisau ai descoperit un truc / fragment de cod util? Distribuie-l cu ceilalți programatori!Fii primul care pune o întrebare sau distribuie un fragment de cod / prompt!
Nu au fost adăugate încă întrebări sau exemple de cod pentru această pagină. Dacă ai întâlnit o problemă sau ai un snippet util, adaugă-l mai jos pentru a-i ajuta pe ceilalți.