All Projects → openucx → sparkucx

openucx / sparkucx

Licence: BSD-3-Clause license
A high-performance, scalable and efficient ShuffleManager plugin for Apache Spark, utilizing UCX communication layer

Programming Languages

scala
5932 projects
java
68154 projects - #9 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to sparkucx

Sparkrdma
RDMA accelerated, high-performance, scalable and efficient ShuffleManager plugin for Apache Spark
Stars: ✭ 215 (+571.88%)
Mutual labels:  big-data, apache-spark, hadoop
Spark With Python
Fundamentals of Spark with Python (using PySpark), code examples
Stars: ✭ 150 (+368.75%)
Mutual labels:  big-data, apache-spark, hadoop
datalake-etl-pipeline
Simplified ETL process in Hadoop using Apache Spark. Has complete ETL pipeline for datalake. SparkSession extensions, DataFrame validation, Column extensions, SQL functions, and DataFrame transformations
Stars: ✭ 39 (+21.88%)
Mutual labels:  big-data, apache-spark, hadoop
Bigdata Playground
A complete example of a big data application using : Kubernetes (kops/aws), Apache Spark SQL/Streaming/MLib, Apache Flink, Scala, Python, Apache Kafka, Apache Hbase, Apache Parquet, Apache Avro, Apache Storm, Twitter Api, MongoDB, NodeJS, Angular, GraphQL
Stars: ✭ 177 (+453.13%)
Mutual labels:  big-data, apache-spark, hadoop
leaflet heatmap
简单的可视化湖州通话数据 假设数据量很大,没法用浏览器直接绘制热力图,把绘制热力图这一步骤放到线下计算分析。使用Apache Spark并行计算数据之后,再使用Apache Spark绘制热力图,然后用leafletjs加载OpenStreetMap图层和热力图图层,以达到良好的交互效果。现在使用Apache Spark实现绘制,可能是Apache Spark不擅长这方面的计算或者是我没有设计好算法,并行计算的速度比不上单机计算。Apache Spark绘制热力图和计算代码在这 https://github.com/yuanzhaokang/ParallelizeHeatmap.git .
Stars: ✭ 13 (-59.37%)
Mutual labels:  big-data, apache-spark, hadoop
aut
The Archives Unleashed Toolkit is an open-source toolkit for analyzing web archives.
Stars: ✭ 111 (+246.88%)
Mutual labels:  big-data, apache-spark, hadoop
Griffon Vm
Griffon Data Science Virtual Machine
Stars: ✭ 128 (+300%)
Mutual labels:  big-data, apache-spark, hadoop
Presto
The official home of the Presto distributed SQL query engine for big data
Stars: ✭ 12,957 (+40390.63%)
Mutual labels:  big-data, hadoop
Calcite
Apache Calcite
Stars: ✭ 2,816 (+8700%)
Mutual labels:  big-data, hadoop
Data Accelerator
Data Accelerator for Apache Spark simplifies onboarding to Streaming of Big Data. It offers a rich, easy to use experience to help with creation, editing and management of Spark jobs on Azure HDInsights or Databricks while enabling the full power of the Spark engine.
Stars: ✭ 247 (+671.88%)
Mutual labels:  big-data, apache-spark
spark-records
Bulletproof Apache Spark jobs with fast root cause analysis of failures.
Stars: ✭ 67 (+109.38%)
Mutual labels:  big-data, apache-spark
Hydrograph
A visual ETL development and debugging tool for big data
Stars: ✭ 144 (+350%)
Mutual labels:  big-data, apache-spark
Detecting-Malicious-URL-Machine-Learning
No description or website provided.
Stars: ✭ 47 (+46.88%)
Mutual labels:  big-data, apache-spark
dislib
The Distributed Computing library for python implemented using PyCOMPSs programming model for HPC.
Stars: ✭ 39 (+21.88%)
Mutual labels:  big-data, hpc
Parquetviewer
Simple windows desktop application for viewing & querying Apache Parquet files
Stars: ✭ 145 (+353.13%)
Mutual labels:  big-data, apache-spark
mmtf-spark
Methods for the parallel and distributed analysis and mining of the Protein Data Bank using MMTF and Apache Spark.
Stars: ✭ 20 (-37.5%)
Mutual labels:  big-data, apache-spark
iis
Information Inference Service of the OpenAIRE system
Stars: ✭ 16 (-50%)
Mutual labels:  big-data, hadoop
learning-hadoop-and-spark
Companion to Learning Hadoop and Learning Spark courses on Linked In Learning
Stars: ✭ 146 (+356.25%)
Mutual labels:  apache-spark, hadoop
rastercube
rastercube is a python library for big data analysis of georeferenced time series data (e.g. MODIS NDVI)
Stars: ✭ 15 (-53.12%)
Mutual labels:  big-data, hadoop
Spark On Lambda
Apache Spark on AWS Lambda
Stars: ✭ 137 (+328.13%)
Mutual labels:  big-data, apache-spark

SparkUCX ShuffleManager Plugin

SparkUCX is a high performance ShuffleManager plugin for Apache Spark, that uses RDMA and other high performance transports that are supported by UCX, to perform Shuffle data transfers in Spark jobs.

This open-source project is developed, maintained and supported by the UCF consortium.

Runtime requirements

Installation

Obtain SparkUCX

Please use the "Releases" page to download SparkUCX jar file for your spark version (e.g. spark-ucx-1.0-for-spark-2.4.0-jar-with-dependencies.jar). Put SparkUCX jar file in $SPARK_UCX_HOME on all the nodes in your cluster.
If you would like to build the project yourself, please refer to the "Build" section below.

Ucx binaries must be in Spark classpath on every Spark Master and Worker. It can be obtained by installing the latest version from Ucx release page

Configuration

Provide Spark the location of the SparkUCX plugin jars and ucx shared binaries by using the extraClassPath option.

spark.driver.extraClassPath     $SPARK_UCX_HOME/spark-ucx-1.0-for-spark-2.4.0-jar-with-dependencies.jar:$UCX_PREFIX/lib
spark.executor.extraClassPath   $SPARK_UCX_HOME/spark-ucx-1.0-for-spark-2.4.0-jar-with-dependencies.jar:$UCX_PREFIX/lib

To enable the SparkUCX Shuffle Manager plugin, add the following configuration property to spark (e.g. in $SPARK_HOME/conf/spark-defaults.conf):

spark.shuffle.manager   org.apache.spark.shuffle.UcxShuffleManager

For spark-3.0 version add SparkUCX ShuffleIO plugin:

spark.shuffle.sort.io.plugin.class org.apache.spark.shuffle.compat.spark_3_0.UcxLocalDiskShuffleDataIO

Build

Building the SparkUCX plugin requires Apache Maven and Java 8+ JDK

Build instructions:

% git clone https://github.com/openucx/sparkucx
% cd sparkucx
% mvn -DskipTests clean package -Pspark-2.4

Performance

SparkUCX plugin is built to provide the best performance out-of-the-box, and provides multiple configuration options to further tune SparkUCX per-job. For more information on how to setup HiBench benchmark and reproduce results, please refer to Accelerated Apache SparkUCX 2.4/3.0 cluster deployment.

Performance results

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].