Comparative analysis of large data processing in Apache Spark using Java, Python and Scala

๐Ÿ“… 2025-10-21
๐Ÿ“ˆ Citations: 0
โœจ Influential: 0
๐Ÿ“„ PDF

career value

186K/year
๐Ÿค– AI Summary
This study systematically evaluates performance differences among Java, Python, and Scala for end-to-end ETL workloads on Apache Spark integrated with Apache Iceberg. We conduct controlled experiments across varying data scales (5 MBโ€“1.6 GB) and operation complexities (basic transformations vs. complex merge operations), all within a uniform CSVโ†’Sparkโ†’Iceberg pipeline. To our knowledge, this is the first standardized ETL benchmark enabling direct cross-language comparison under native Iceberg support. Results reveal nonlinear interactions among programming language, data volume, and operation type: Python exhibits superior throughput on small-scale data; performance converges across all three languages at medium scale (1.6 GB); and Scala significantly outperforms both Java and Python in high-complexity merge-intensive workloads. The findings provide empirical guidance for language selection in big-data ETL systems, along with a principled trade-off framework grounded in workload characteristics.

Technology Category

Application Category

๐Ÿ“ Abstract
During the study, the results of a comparative analysis of the process of handling large datasets using the Apache Spark platform in Java, Python, and Scala programming languages were obtained. Although prior works have focused on individual stages, comprehensive comparisons of full ETL workflows across programming languages using Apache Iceberg remain limited. The analysis was performed by executing several operations, including downloading data from CSV files, transforming and loading it into an Apache Iceberg analytical table. It was found that the performance of the Spark algorithm varies significantly depending on the amount of data and the programming language used. When processing a 5-megabyte CSV file, the best result was achieved in Python: 6.71 seconds, which is superior to Scala's score of 9.13 seconds and Java's time of 9.62 seconds. For processing a large CSV file of 1.6 gigabytes, all programming languages demonstrated similar results: the fastest performance was showed in Python: 46.34 seconds, while Scala and Java showed results of 47.72 and 50.56 seconds, respectively. When performing a more complex operation that involved combining two CSV files into a single dataset for further loading into an Apache Iceberg table, Scala demonstrated the highest performance, at 374.42 seconds. Java processing was completed in 379.8 seconds, while Python was the least efficient, with a runtime of 398.32 seconds. It follows that the programming language significantly affects the efficiency of data processing by the Apache Spark algorithm, with Scala and Java being more productive for processing large amounts of data and complex operations, while Python demonstrates an advantage in working with small amounts of data. The results obtained can be useful for optimizing data handling processes depending on specific performance requirements and the amount of information being processed.
Problem

Research questions and friction points this paper is trying to address.

Comparing Apache Spark performance across Java, Python and Scala languages
Analyzing programming language impact on large dataset processing efficiency
Evaluating ETL workflow performance with different data volumes and operations
Innovation

Methods, ideas, or system contributions that make the work stand out.

Comparative analysis of Apache Spark using Java, Python, Scala
Evaluated ETL workflows with Apache Iceberg table integration
Performance varies by data size and programming language used
๐Ÿ”Ž Similar Papers
No similar papers found.
I
Ivan Borodii
Ternopil Ivan Puluj National Technical University, 56 Ruska St, Ternopil, UA46001, Ukraine
I
Illia Fedorovych
Ternopil Ivan Puluj National Technical University, 56 Ruska St, Ternopil, UA46001, Ukraine
H
Halyna Osukhivska
Ternopil Ivan Puluj National Technical University, 56 Ruska St, Ternopil, UA46001, Ukraine
D
Diana Velychko
Rochester Institute of Technology, 1 Lomb Memorial Dr, Rochester, New York 14623, USA
R
Roman Butsii
Institute of Telecommunications and Global Information Space of the National Academy of Sciences of Ukraine, 13 Chokolivskiy blvd., Kyiv, UA02000, Ukraine