<div dir="ltr">==========================<br>Announcing bcolz 1.0.0 RC1<br>==========================<br><br>What's new<br>==========<br><br>Yeah, 1.0.0 is finally here.  We are not introducing any exciting new<br>feature (just some optimizations and bug fixes), but bcolz is already 6<br>years old and it implements most of the capabilities that it was<br>designed for, so I decided to release a 1.0.0 meaning that the format is<br>declared stable and that people can be assured that future bcolz<br>releases will be able to read bcolz 1.0 data files (and probably much<br>earlier ones too) for a long while.  Such a format is fully described<br>at:<br><br><a href="https://github.com/Blosc/bcolz/blob/master/DISK_FORMAT_v1.rst">https://github.com/Blosc/bcolz/blob/master/DISK_FORMAT_v1.rst</a><br><br>Also, a 1.0.0 release means that bcolz 1.x series will be based on<br>C-Blosc 1.x series (<a href="https://github.com/Blosc/c-blosc">https://github.com/Blosc/c-blosc</a>).  After C-Blosc<br>2.x (<a href="https://github.com/Blosc/c-blosc2">https://github.com/Blosc/c-blosc2</a>) would be out, a new bcolz 2.x is<br>expected taking advantage of shiny new features of C-Blosc2 (more<br>compressors, more filters, native variable length support and the<br>concept of super-chunks), which should be very beneficial for next bcolz<br>generation.<br><br>Important: this is a Release Candidate, so please test it as much as you<br>can.  If no issues would appear in a week or so, I will proceed to tag<br>and release 1.0.0 final.  Enjoy!<br><br>For a more detailed change log, see:<br><br><a href="https://github.com/Blosc/bcolz/blob/master/RELEASE_NOTES.rst">https://github.com/Blosc/bcolz/blob/master/RELEASE_NOTES.rst</a><br><br><br>What it is<br>==========<br><br>*bcolz* provides columnar and compressed data containers that can live<br>either on-disk or in-memory.  Column storage allows for efficiently<br>querying tables with a large number of columns.  It also allows for<br>cheap addition and removal of column.  In addition, bcolz objects are<br>compressed by default for reducing memory/disk I/O needs. The<br>compression process is carried out internally by Blosc, an<br>extremely fast meta-compressor that is optimized for binary data. Lastly,<br>high-performance iterators (like ``iter()``, ``where()``) for querying<br>the objects are provided.<br><br>bcolz can use numexpr internally so as to accelerate many vector and<br>query operations (although it can use pure NumPy for doing so too).<br>numexpr optimizes the memory usage and use several cores for doing the<br>computations, so it is blazing fast.  Moreover, since the carray/ctable<br>containers can be disk-based, and it is possible to use them for<br>seamlessly performing out-of-memory computations.<br><br>bcolz has minimal dependencies (NumPy), comes with an exhaustive test<br>suite and fully supports both 32-bit and 64-bit platforms.  Also, it is<br>typically tested on both UNIX and Windows operating systems.<br><br>Together, bcolz and the Blosc compressor, are finally fulfilling the<br>promise of accelerating memory I/O, at least for some real scenarios:<br><br><a href="http://nbviewer.ipython.org/github/Blosc/movielens-bench/blob/master/querying-ep14.ipynb#Plots">http://nbviewer.ipython.org/github/Blosc/movielens-bench/blob/master/querying-ep14.ipynb#Plots</a><br><br>Other users of bcolz are Visualfabriq (<a href="http://www.visualfabriq.com/">http://www.visualfabriq.com/</a>) the<br>Blaze project (<a href="http://blaze.pydata.org/">http://blaze.pydata.org/</a>), Quantopian<br>(<a href="https://www.quantopian.com/">https://www.quantopian.com/</a>) and Scikit-Allel<br>(<a href="https://github.com/cggh/scikit-allel">https://github.com/cggh/scikit-allel</a>) which you can read more about by<br>pointing your browser at the links below.<br><br>* Visualfabriq:<br><br>  * *bquery*, A query and aggregation framework for Bcolz:<br>  * <a href="https://github.com/visualfabriq/bquery">https://github.com/visualfabriq/bquery</a><br><br>* Blaze:<br><br>  * Notebooks showing Blaze + Pandas + BColz interaction:<br>  * <a href="http://nbviewer.ipython.org/url/blaze.pydata.org/notebooks/timings-csv.ipynb">http://nbviewer.ipython.org/url/blaze.pydata.org/notebooks/timings-csv.ipynb</a><br>  * <a href="http://nbviewer.ipython.org/url/blaze.pydata.org/notebooks/timings-bcolz.ipynb">http://nbviewer.ipython.org/url/blaze.pydata.org/notebooks/timings-bcolz.ipynb</a><br><br>* Quantopian:<br><br>  * Using compressed data containers for faster backtesting at scale:<br>  * <a href="https://quantopian.github.io/talks/NeedForSpeed/slides.html">https://quantopian.github.io/talks/NeedForSpeed/slides.html</a><br><br>* Scikit-Allel<br><br>  * Provides an alternative backend to work with compressed arrays<br>  * <a href="https://scikit-allel.readthedocs.org/en/latest/model/bcolz.html">https://scikit-allel.readthedocs.org/en/latest/model/bcolz.html</a><br><br>Installing<br>==========<br><br>bcolz is in the PyPI repository, so installing it is easy::<br><br>    $ pip install -U bcolz<br><br><br>Resources<br>=========<br><br>Visit the main bcolz site repository at:<br><a href="http://github.com/Blosc/bcolz">http://github.com/Blosc/bcolz</a><br><br>Manual:<br><a href="http://bcolz.blosc.org">http://bcolz.blosc.org</a><br><br>Home of Blosc compressor:<br><a href="http://blosc.org">http://blosc.org</a><br><br>User's mail list:<br><a href="mailto:bcolz@googlegroups.com">bcolz@googlegroups.com</a><br><a href="http://groups.google.com/group/bcolz">http://groups.google.com/group/bcolz</a><br><br>License is the new BSD:<br><a href="https://github.com/Blosc/bcolz/blob/master/LICENSES/BCOLZ.txt">https://github.com/Blosc/bcolz/blob/master/LICENSES/BCOLZ.txt</a><br><br>Release notes can be found in the Git repository:<br><a href="https://github.com/Blosc/bcolz/blob/master/RELEASE_NOTES.rst">https://github.com/Blosc/bcolz/blob/master/RELEASE_NOTES.rst</a><br><br>----<br><br>  **Enjoy data!**<br clear="all"><br>-- <br><div class="gmail_signature">Francesc Alted</div>
</div>