Skip to main content

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)

Uploaded Source

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page