標籤:

Pyspark實例——Spark On YARN將HDFS的數據寫入Redis

Spark的優勢在於內存計算,然而在計算中難免會用到一些元數據或中間數據,有的存在關係型資料庫中, Redis基於內存的讀寫則可以完美解決此類問題。在Pyspark計算的時候如何將數據 寫入Redis中,除了官方的英文文檔,相關的介紹不多。下面介紹基於Yarn的Pypark如何與Redis交互。

首先把redis包引入工程,這樣就不需要在集群里每台機器上安裝redis客戶端了。

$pip3 install redis

$cd /usr/local/lib/python3.4/dist-packages

$zip -r redis.zip redis/*

$hadoop fs -put redis.zip /user/data/

然後就可以在代碼里使用 addPyFile載入redis.zip了。

運行:

$SPARK_HOME/bin/spark-submit

--conf spark.yarn.submit.waitAppCompletion=true

--master yarn-cluster

--num-executors 4

--driver-memory 32G

--executor-memory 32G

--executor-cores 4

--queue root.default

/opt/spark_redis.py


推薦閱讀:

【實驗】Adversarial Video Generation
AI 代碼長啥樣?
你若眼熟,真的純屬巧合。

TAG:大數據 | 代碼 |