Skip to content
/ dpark Public
forked from douban/dpark

Python clone of Spark, a MapReduce alike framework in Python

License

Notifications You must be signed in to change notification settings

icerlu/dpark

This branch is 577 commits behind douban/dpark:master.

Folders and files

NameName
Last commit message
Last commit date

Latest commit

c630fd7 · May 7, 2014
Dec 16, 2013
May 7, 2014
Oct 29, 2013
May 7, 2014
Mar 25, 2014
Oct 29, 2013
Apr 12, 2014
Oct 23, 2011
Jun 3, 2012
Oct 28, 2011
Feb 8, 2014
Apr 12, 2014
Apr 10, 2012
Dec 16, 2013

Repository files navigation

DPark

travis-ci status

DPark is a Python clone of Spark, MapReduce(R) alike computing framework supporting iterative computation.

Example for word counting (wc.py):

 import dpark
 file = dpark.textFile("/tmp/words.txt")
 words = file.flatMap(lambda x:x.split()).map(lambda x:(x,1))
 wc = words.reduceByKey(lambda x,y:x+y).collectAsMap()
 print wc

This script can run locally or on a Mesos cluster without any modification, just using different command-line arguments:

$ python wc.py
$ python wc.py -m process
$ python wc.py -m host[:port]

See examples/ for more use cases.

Some more docs (in Chinese): https://github.com/jackfengji/test_pro/wiki

DPark can run with Mesos 0.9 or higher.

If a $MESOS_MASTER environment variable is set, you can use a shortcut and run DPark with Mesos just by typing

$ python wc.py -m mesos

$MESOS_MASTER can be any scheme of Mesos master, such as

$ export MESOS_MASTER=zk://zk1:2181,zk2:2181,zk3:2181/mesos_master

In order to speed up shuffling, you should deploy Nginx at port 5055 for accessing data in DPARK_WORK_DIR (default is /tmp/dpark), such as:

        server {
                listen 5055;
                server_name localhost;
                root /tmp/dpark/;
        }

Mailing list: [email protected] (http://groups.google.com/group/dpark-users)

About

Python clone of Spark, a MapReduce alike framework in Python

Resources

License

Stars

Watchers

Forks

Packages

No packages published