Skip to main content

reading, writing and sorting large files

Project description

streamio is a simple library of functions designed to read, write and sort large files using iterators so that the operations will successfully complete on systems with limited RAM. This library has been used extensively at Griffith University whilst developing the TerraNova Climate Change and Adaptation Visualization tool(s) and processing large volumes of data. streamio is written in Python and has extensive documentation and unit tests with 100% coverage.

See the API for a list of the available functions.

Latest PyPI version Number of PyPI downloads Build Status Requirements Status

Examples

Read a large text file iteratively:

from streamio import stream
f = stream("large_file.txt")

Read a large CSV file iteratively:

from streamio import jsonstream
f = stream("large_file.json")

Merge-sort a large JSON file with the key itemgetter("value"):

from operator import itemgetter
from streamio import mergesort
f = mergesort("large_file.json", key=itemgetter("value"))

Requirements

streamio also comes with documentation and a full comprehensive unit test suite which require the following:

To build the docs:

To run the unit tests:

Installation

The simplest and recommended way to install streamio is with pip. You may install the latest stable release from PyPI with pip:

> pip install streamio

If you do not have pip, you may use easy_install:

> easy_install streamio

Alternatively, you may download the source package from the PyPI Page or the Downloads page on the Project Website; extract it and install using:

> python setup.py install

You can also install the latest-development version by using pip or easy_install:

> pip install streamio==dev

or:

> easy_install streamio==dev

For further information see the streamio documentation.

Supported Platforms

  • Linux, FreeBSD, Mac OS X

  • Python 2.7

  • PyPy 2.2

Windows: We acknowledge that Windows exists and make reasonable efforts

to maintain compatibility. Unfortunately we cannot guarantee support at this time.

Changes

streamio 0.0.8 (2014-02-13)

  • Fixed Unicode support for csvstream adding unicodecsv as a new dependency.

streamio 0.0.7 (2014-01-29)

  • Forgot to include required README.rst and CHANGES.rst

streamio 0.0.6 (2014-01-29)

  • Don’t include fabfile and tests (for now) in the resulting egg

  • Make mergesort show progress optionally via progress=True

streamio 0.0.5 (2014-01-16)

  • Added encoding parameter support to *stream() function(s).

streamio 0.0.4 (2013-11-22)

  • Added streamio.stream.compress function for compressing an iterable using zlib compression.

  • Loosended requirements on py and progress

streamio 0.0.3 (2013-11-21)

  • Fixed broken link to the API Docs.

streamio 0.0.2 (2013-11-21)

  • Added some examples

  • Fixed a few typos

streamio 0.0.1 (2013-11-21)

  • Initial Public Release

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

streamio-0.0.8.tar.gz (13.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

streamio-0.0.8-py2.7.egg (14.9 kB view details)

Uploaded Egg

File details

Details for the file streamio-0.0.8.tar.gz.

File metadata

  • Download URL: streamio-0.0.8.tar.gz
  • Upload date:
  • Size: 13.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for streamio-0.0.8.tar.gz
Algorithm Hash digest
SHA256 dea713aa822becbb41c2b52bba2543ce294543f7a30b055b8bbb089468651c25
MD5 968b1e58922364ba39649f0a3e16a10c
BLAKE2b-256 15afdfbb31fff58292c9cb756bea7d5a593ad68354010129a06790e02c113931

See more details on using hashes here.

File details

Details for the file streamio-0.0.8-py2.7.egg.

File metadata

  • Download URL: streamio-0.0.8-py2.7.egg
  • Upload date:
  • Size: 14.9 kB
  • Tags: Egg
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for streamio-0.0.8-py2.7.egg
Algorithm Hash digest
SHA256 53207116e1204c12970250d32f8cd7fe70da4cdf02a28ea020d29b0a4d5639cc
MD5 e66c2a17b9d3f3e4ec6fa9f09feedb69
BLAKE2b-256 39c52ea63bed701c78a692240f5404f3e603204aa3ae9d435d668ffbdec3580d

See more details on using hashes here.

Supported by

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