• Home
  • History
  • Annotate
Name Date Size #Lines LOC

..03-May-2022-

LICENSES/H03-May-2022-

bench/H03-May-2022-9,3116,923

c-blosc/H28-Oct-2019-85,35254,959

contrib/H28-Oct-2019-417320

doc/H28-Oct-2019-16,85812,212

examples/H28-Oct-2019-3,4732,170

hdf5-blosc/src/H28-Oct-2019-300189

src/H28-Oct-2019-5,5553,170

tables/H28-Oct-2019-249,093159,396

tables.egg-info/H03-May-2022-3230

utils/H28-Oct-2019-168

MANIFEST.inH A D28-Oct-20191,010 2925

MakefileH A D30-May-20191.9 KiB6346

PKG-INFOH A D28-Oct-20191.4 KiB3230

README.rstH A D30-May-20195.2 KiB148109

THANKSH A D20-Apr-20183.2 KiB8760

VERSIONH A D28-Oct-20196 21

cpuinfo.pyH A D11-Aug-201964.4 KiB2,2071,554

setup.cfgH A D28-Oct-201963 85

setup.pyH A D03-May-202241.3 KiB1,071761

README.rst

1===========================================
2 PyTables: hierarchical datasets in Python
3===========================================
4
5.. image:: https://badges.gitter.im/Join%20Chat.svg
6   :alt: Join the chat at https://gitter.im/PyTables/PyTables
7   :target: https://gitter.im/PyTables/PyTables
8
9.. image:: https://travis-ci.org/PyTables/PyTables.svg?branch=master
10   :target: https://travis-ci.org/PyTables/PyTables
11
12.. image:: https://ci.appveyor.com/api/projects/status/github/PyTables/PyTables?branch=master&svg=true
13   :target: https://ci.appveyor.com/project/PyTablesCI/pytables
14
15:URL: http://www.pytables.org/
16
17
18PyTables is a package for managing hierarchical datasets and designed
19to efficiently cope with extremely large amounts of data.
20
21It is built on top of the HDF5 library and the NumPy package. It
22features an object-oriented interface that, combined with C extensions
23for the performance-critical parts of the code (generated using
24Cython), makes it a fast, yet extremely easy to use tool for
25interactively save and retrieve very large amounts of data. One
26important feature of PyTables is that it optimizes memory and disk
27resources so that they take much less space (between a factor 3 to 5,
28and more if the data is compressible) than other solutions, like for
29example, relational or object oriented databases.
30
31State-of-the-art compression
32----------------------------
33
34PyTables comes with out-of-box support for the `Blosc compressor
35<http://www.blosc.org>`_.  This allows for extremely high compression
36speed, while keeping decent compression ratios.  By doing so, I/O can
37be accelerated by a large extent, and you may end achieving higher
38performance than the bandwidth provided by your I/O subsystem.  See
39the `Tuning The Chunksize section of the Optimization Tips chapter
40<http://www.pytables.org/usersguide/optimization.html#fine-tuning-the-chunksize>`_
41of user documentation for some benchmarks.
42
43Not a RDBMS replacement
44-----------------------
45
46PyTables is not designed to work as a relational database replacement,
47but rather as a teammate. If you want to work with large datasets of
48multidimensional data (for example, for multidimensional analysis), or
49just provide a categorized structure for some portions of your
50cluttered RDBS, then give PyTables a try. It works well for storing
51data from data acquisition systems (DAS), simulation software, network
52data monitoring systems (for example, traffic measurements of IP
53packets on routers), or as a centralized repository for system logs,
54to name only a few possible uses.
55
56Tables
57------
58
59A table is defined as a collection of records whose values are stored
60in fixed-length fields. All records have the same structure and all
61values in each field have the same data type. The terms "fixed-length"
62and strict "data types" seems to be quite a strange requirement for an
63interpreted language like Python, but they serve a useful function if
64the goal is to save very large quantities of data (such as is
65generated by many scientific applications, for example) in an
66efficient manner that reduces demand on CPU time and I/O.
67
68Arrays
69------
70
71There are other useful objects like arrays, enlargeable arrays or
72variable length arrays that can cope with different missions on your
73project.
74
75Easy to use
76-----------
77
78One of the principal objectives of PyTables is to be user-friendly.
79In addition, many different iterators have been implemented so as to
80enable the interactive work to be as productive as possible.
81
82Platforms
83---------
84
85We are using Linux on top of Intel32 and Intel64 boxes as the main
86development platforms, but PyTables should be easy to compile/install
87on other UNIX or Windows machines.
88
89Compiling
90---------
91
92To compile PyTables you will need, at least, a recent version of HDF5
93(C flavor) library, the Zlib compression library and the NumPy and
94Numexpr packages. Besides, it comes with support for the Blosc, LZO
95and bzip2 compressor libraries. Blosc is mandatory, but PyTables comes
96with Blosc sources so, although it is recommended to have Blosc
97installed in your system, you don't absolutely need to install it
98separately.  LZO and bzip2 compression libraries are, however,
99optional.
100
101Installation
102------------
103
1041. Make sure you have HDF5 version 1.8.4 or above.
105
106   On OSX you can install HDF5 using `Homebrew <http://brew.sh>`_::
107
108       $ brew install hdf5
109
110   On ubuntu::
111
112       $ sudo apt-get install libhdf5-serial-dev
113
114   If you have the HDF5 library in some non-standard location (that
115   is, where the compiler and the linker can't find it) you can use
116   the environment variable `HDF5_DIR` to specify its location. See
117   `the manual
118   <http://www.pytables.org/usersguide/installation.html>`_ for more
119   details.
120
1213. For stability (and performance too) reasons, it is strongly
122   recommended that you install the C-Blosc library separately,
123   although you might want PyTables to use its internal C-Blosc
124   sources.
125
1263. Optionally, consider to install the LZO compression library and/or
127   the bzip2 compression library.
128
1294. Install!::
130
131       $ pip install tables
132
1335. To run the test suite run::
134
135       $ python -m tables.tests.test_all
136
137   If there is some test that does not pass, please send the
138   complete output for tests back to us.
139
140
141**Enjoy data!** -- The PyTables Team
142
143.. Local Variables:
144.. mode: text
145.. coding: utf-8
146.. fill-column: 70
147.. End:
148