Emitter for stream processing
Project description
Emit is a Python library for realtime data processing. It can distribute work with Celery or RQ, coordinate execution in other languages, and let you swing from the trees of your graph with Tarzan-like precision.
A taste:
from emit import router
router = Router()
@router.node(['word'], entry_point=True)
def parse_document(msg):
for word in msg.document.strip().split(' '):
yield word
@router.node(['word', 'count'], 'parse_document')
def count_word(msg):
return msg.word, redis.zincrby('word_counts', msg.word, 1)
import random
document = 'the words in this document will be counted and emitted by count_word'.split(' ')
router(document=' '.join(random.choice(document) for i in range(20)))
So how do you get it? On PyPI!
pip install emit
Some Links:
Supported Pythons:
CPython 2.6
CPython 2.7
CPython 3.2
PyPy 1.9
Be sure to check Travis to see if the platform you want is currently passing. It may not be.
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
emit-0.3.0.tar.gz
(7.1 kB
view hashes)