|
|
UDF Python Buffer Assembly |
| Number of input link | : | One |
| Number of output link | : | One |
def operate(lists) :
min =None
max = None
sum=0
for list in lists:
data =list[4]*list[5]
if (min==None):
min=data
else :
if (min>data) :
min=data
if (max==None):
max=data
else :
if (max<data):
max=data
sum=sum+data
return [min,max,(sum/len(lists))]
class MinMaxAvgBuffer(HGridBuffer):
def __init__(self,parameter):
self.parameter=parameter
def operate(self,lists) :
min =None
max = None
sum=0
for list in lists:
data =list[4]*list[5]
if (min==None):
min=data
else :
if (min>data) :
min=data
if (max==None):
max=data
else :
if (max<data):
max=data
sum=sum+data
return [min,max,(sum/len(lists))]
| Map Reduce |
Spark 1.x RDD |
Spark 2.x RDD |
Spark 2.x Dataset |
Apache Beam 2.29.0 Batch |
Apache Beam 2.29.0 Streaming |
Apache Flink 1.12.0 Batch |
Apache Flink 1.12.0 Streaming |
Apache Tez 0.9.1 |
PySpark |
|---|---|---|---|---|---|---|---|---|---|
hadoop jar workshop_mr.jar workshop.python.TestPython -libjars /root/jython-standalone-2.7.3.jar
On spark job :
spark-submit --class workshop.python.TestPython --master yarn --jars /root/jython-standalone-2.7.3.jar workshop_spark2.jar
On Flink job :
flink run -c workshop.python.TestPython --classpath file:///root/jython-standalone-2.7.3.jar -j workshop_flink.jar --hfs_source_1 file:///D:/hgrid/input/sample_data --hfs_sink_1 file:///D:/hgrid/test/python_out
On Beam job Direct-Runner on Windows :
java -cp workshop_beam.jar;D:\BigDataTool\HGrid247-3.5\BeamRunner\direct-runner/*;D:\jython\jython-standalone-2.7.3.jar workshop.python.TestPython --hfs_source_1=D:/hgrid/input/sample_data --hfs_sink_1=D:/hgrid/test/python_out
On Beam job Direct-Runner on Linux :
java -cp workshop_beam.jar:/root/HGrid247-3.5/BeamRunner/direct-runner/*:/root/jython/jython-standalone-2.7.3.jar workshop.python.TestPython --hfs_source_1=/root/hgrid/input/sample_data --hfs_sink_1=/root/hgrid/test/python_out