Sophie

Sophie

distrib > Mageia > 4 > x86_64 > by-pkgid > 4726f970c4b56b9a0ebb9a03a0b6522e > files > 140

python-tables-doc-3.0.0-4.mga4.noarch.rpm




<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">


<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    
    <title>What’s new in PyTables 0.8 &mdash; PyTables 3.0.0 documentation</title>
    
    <link rel="stylesheet" href="../_static/cloud.css" type="text/css" />
    <link rel="stylesheet" href="../_static/pygments.css" type="text/css" />
    <link rel="stylesheet" href="../" type="text/css" />
    
    <script type="text/javascript">
      var DOCUMENTATION_OPTIONS = {
        URL_ROOT:    '../',
        VERSION:     '3.0.0',
        COLLAPSE_INDEX: false,
        FILE_SUFFIX: '.html',
        HAS_SOURCE:  true
      };
    </script>
    <script type="text/javascript" src="../_static/jquery.js"></script>
    <script type="text/javascript" src="../_static/underscore.js"></script>
    <script type="text/javascript" src="../_static/doctools.js"></script>
    <script type="text/javascript" src="../_static/jquery.cookie.js"></script>
    <script type="text/javascript" src="../_static/toggle_sections.js"></script>
    <script type="text/javascript" src="../_static/toggle_sidebar.js"></script>
    <link rel="shortcut icon" href="../_static/favicon.ico"/>
    <link rel="top" title="PyTables 3.0.0 documentation" href="../index.html" />
    <link rel="up" title="PyTables Release Notes" href="../release_notes.html" />
    <link rel="next" title="What’s new in PyTables 0.7.2" href="RELEASE_NOTES_v0.7.2.html" />
    <link rel="prev" title="What’s new in PyTables 0.9" href="RELEASE_NOTES_v0.9.html" /> 
  </head>
  <body>
    <div class="relbar-top">
        
    <div class="related">
      <h3>Navigation</h3>
      <ul>
        <li class="right" style="margin-right: 10px">
          <a href="../genindex.html" title="General Index"
             accesskey="I">index</a></li>
        <li class="right" >
          <a href="../py-modindex.html" title="Python Module Index"
             >modules</a> &nbsp; &nbsp;</li>
        <li class="right" >
          <a href="../np-modindex.html" title="Python Module Index"
             >modules</a> &nbsp; &nbsp;</li>
        <li class="right" >
          <a href="RELEASE_NOTES_v0.7.2.html" title="What’s new in PyTables 0.7.2"
             accesskey="N">next</a> &nbsp; &nbsp;</li>
        <li class="right" >
          <a href="RELEASE_NOTES_v0.9.html" title="What’s new in PyTables 0.9"
             accesskey="P">previous</a> &nbsp; &nbsp;</li>
    <li><a href="../index.html">PyTables 3.0.0 documentation</a> &raquo;</li>

          <li><a href="../release_notes.html" accesskey="U">PyTables Release Notes</a> &raquo;</li> 
      </ul>
    </div>
    </div>
  

    <div class="document">
      <div class="documentwrapper">
        <div class="bodywrapper">
          <div class="body">
            
  <div class="section" id="what-s-new-in-pytables-0-8">
<h1>What&#8217;s new in PyTables 0.8<a class="headerlink" href="#what-s-new-in-pytables-0-8" title="Permalink to this headline">¶</a></h1>
<p>On this release, many enhancements has been added and some bugs has
been fixed. Here is the (non-exhaustive) list:</p>
<ul>
<li><p class="first">The new VLArray class enables you to store large lists of rows
containing variable numbers of elements. The elements can
be scalars or fully multimensional objects, in the PyTables
tradition. This class supports two special objects as rows:
Unicode strings (UTF-8 codification is used internally) and
generic Python objects (through the use of cPickle).</p>
</li>
<li><p class="first">The new EArray class allows you to enlarge already existing
multidimensional homogeneous data objects. Consider it
an extension of the already existing Array class, but
with more functionality. Online compression or other filters
can be applied to EArray instances, for example.</p>
<p>Another nice feature of EA&#8217;s is their support for fully
multidimensional data selection with extended slices.  You
can write &#8220;earray[1,2:3,...,4:200]&#8221;, for example, to get the
desired dataset slice from the disk. This is implemented
using the powerful selection capabilities of the HDF5
library, which results in very highly efficient I/O
operations. The same functionality has been added to Array
objects as well.</p>
</li>
<li><p class="first">New UnImplemented class. If a dataset contains unsupported
datatypes, it will be associated with an UnImplemented
instance, then inserted into to the object tree as usual.
This allows you to continue to work with supported objects
while retaining access to attributes of unsupported
datasets.  This has changed from previous versions, where a
RuntimeError occurred when an unsupported object was
encountered.</p>
<p>The combination of the new UnImplemented class with the
support for new datatypes will enable PyTables to greatly
increase the number of types of native HDF5 files that can
be read and modified.</p>
</li>
<li><p class="first">Boolean support has been added for all the Leaf objects.</p>
</li>
<li><p class="first">The Table class has now an append() method that allows you
to save large buffers of data in one go (i.e. bypassing the
Row accessor). This can greatly improve data gathering
speed.</p>
</li>
<li><dl class="first docutils">
<dt>The standard HDF5 shuffle filter (to further enhance the</dt>
<dd><p class="first last">compression level) is supported.</p>
</dd>
</dl>
</li>
<li><p class="first">The standard HDF5 fletcher32 checksum filter is supported.</p>
</li>
<li><p class="first">As the supported number of filters is growing (and may be
further increased in the future), a Filters() class has been
introduced to handle filters more easily.  In order to add
support for this class, it was necessary to make a change in
the createTable() method that is not backwards compatible:
the &#8220;compress&#8221; and &#8220;complib&#8221; parameters are deprecated now
and the &#8220;filters&#8221; parameter should be used in their
place. You will be able to continue using the old parameters
(only a Deprecation warning will be issued) for the next few
releases, but you should migrate to the new version as soon
as possible. In general, you can easily migrate old code by
substituting code in its place:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="n">table</span> <span class="o">=</span> <span class="n">fileh</span><span class="o">.</span><span class="n">createTable</span><span class="p">(</span><span class="n">group</span><span class="p">,</span> <span class="s">&#39;table&#39;</span><span class="p">,</span> <span class="n">Test</span><span class="p">,</span> <span class="s">&#39;&#39;</span><span class="p">,</span> <span class="n">complevel</span><span class="p">,</span> <span class="n">complib</span><span class="p">)</span>
</pre></div>
</div>
<p>should be replaced by:</p>
<div class="highlight-python"><div class="highlight"><pre><span class="n">table</span> <span class="o">=</span> <span class="n">fileh</span><span class="o">.</span><span class="n">createTable</span><span class="p">(</span><span class="n">group</span><span class="p">,</span> <span class="s">&#39;table&#39;</span><span class="p">,</span> <span class="n">Test</span><span class="p">,</span> <span class="s">&#39;&#39;</span><span class="p">,</span>
                          <span class="n">Filters</span><span class="p">(</span><span class="n">complevel</span><span class="p">,</span> <span class="n">complib</span><span class="p">))</span>
</pre></div>
</div>
</li>
<li><p class="first">A copy() method that supports slicing and modification of
filtering capabilities has been added for all the Leaf
objects. See the User&#8217;s Manual for more information.</p>
</li>
<li><p class="first">A couple of new methods, namely copyFile() and copyChilds(),
have been added to File class, to permit easy replication
of complete hierarchies or sub-hierarchies, even to
other files. You can change filters during the copy
process as well.</p>
</li>
<li><p class="first">Two new utilities has been added: ptdump and
ptrepack. The utility ptdump allows the user to examine
the contents of PyTables files (both metadata and actual
data). The powerful ptrepack utility lets you
selectively copy (portions of) hierarchies to specific
locations in other files. It can be also used as an
importer for generic HDF5 files.</p>
</li>
<li><p class="first">The meaning of the stop parameter in read() methods has
changed. Now a value of &#8216;None&#8217; means the last row, and a
value of 0 (zero) means the first row. This is more
consistent with the range() function in python and the
__getitem__() special method in numarray.</p>
</li>
<li><p class="first">The method Table.removeRows() is no longer limited by table
size.  You can now delete rows regardless of the size of the
table.</p>
</li>
<li><p class="first">The &#8220;numarray&#8221; value has been added to the flavor parameter
in the Table.read() method for completeness.</p>
</li>
<li><p class="first">The attributes (.attr instance variable) are Python
properties now. Access to their values is no longer
lazy, i.e. you will be able to see both system or user
attributes from the command line using the tab-completion
capability of your python console (if enabled).</p>
</li>
<li><p class="first">Documentation has been greatly improved to explain all the
new functionality. In particular, the internal format of
PyTables is now fully described. You can now build
&#8220;native&#8221; PyTables files using any generic HDF5 software
by just duplicating their format.</p>
</li>
<li><p class="first">Many new tests have been added, not only to check new
functionality but also to more stringently check
existing functionality. There are more than 800 different
tests now (and the number is increasing :).</p>
</li>
<li><p class="first">PyTables has a new record in the data size that fits in one
single file: more than 5 TB (yeah, more than 5000 GB), that
accounts for 11 GB compressed, has been created on an AMD
Opteron machine running Linux-64 (the 64 bits version of the
Linux kernel). See the gory details in:
<a class="reference external" href="http://pytables.sf.net/html/HowFast.html">http://pytables.sf.net/html/HowFast.html</a>.</p>
</li>
<li><p class="first">New platforms supported: PyTables has been compiled and tested
under Linux32 (Intel), Linux64 (AMD Opteron and Alpha), Win32
(Intel), MacOSX (PowerPC), FreeBSD (Intel), Solaris (6, 7, 8
and 9 with UltraSparc), IRIX64 (IRIX 6.5 with R12000) and it
probably works in many more architectures. In particular,
release 0.8 is the first one that provides a relatively clean
porting to 64-bit platforms.</p>
</li>
<li><p class="first">As always, some bugs have been solved (especially bugs that
occur when deleting and/or overwriting attributes).</p>
</li>
<li><p class="first">And last, but definitely not least, a new donations section
has been added to the PyTables web site
(<a class="reference external" href="http://sourceforge.net/projects/pytables">http://sourceforge.net/projects/pytables</a>, then follow the
&#8220;Donations&#8221; tag). If you like PyTables and want this effort
to continue, please, donate!</p>
</li>
</ul>
<p>Enjoy!,</p>
<p>&#8211; Francesc Alted
<a class="reference external" href="mailto:falted&#37;&#52;&#48;pytables&#46;org">falted<span>&#64;</span>pytables<span>&#46;</span>org</a></p>
</div>


          </div>
        </div>
      </div>
      <div class="sphinxsidebar">
        <div class="sphinxsidebarwrapper">
        <p class="logo"><a href="../index.html">
          <img class="logo" src="../_static/logo-pytables-small.png" alt="Logo"/>
        </a></p>
  <h4>Previous topic</h4>
  <p class="topless"><a href="RELEASE_NOTES_v0.9.html"
                        title="previous chapter">What&#8217;s new in PyTables 0.9</a></p>
  <h4>Next topic</h4>
  <p class="topless"><a href="RELEASE_NOTES_v0.7.2.html"
                        title="next chapter">What&#8217;s new in PyTables 0.7.2</a></p>
  <h3>This Page</h3>
  <ul class="this-page-menu">
    <li><a href="../_sources/release-notes/RELEASE_NOTES_v0.8.txt"
           rel="nofollow">Show Source</a></li>
  </ul>
<div id="searchbox" style="display: none">
  <h3>Quick search</h3>
    <form class="search" action="../search.html" method="get">
      <input type="text" name="q" />
      <input type="submit" value="Go" />
      <input type="hidden" name="check_keywords" value="yes" />
      <input type="hidden" name="area" value="default" />
    </form>
    <p class="searchtip" style="font-size: 90%">
    Enter search terms or a module, class or function name.
    </p>
</div>
<script type="text/javascript">$('#searchbox').show(0);</script>
        </div>
      </div>
      <div class="clearer"></div>
    </div>
    <div class="relbar-bottom">
        
    <div class="related">
      <h3>Navigation</h3>
      <ul>
        <li class="right" style="margin-right: 10px">
          <a href="../genindex.html" title="General Index"
             >index</a></li>
        <li class="right" >
          <a href="../py-modindex.html" title="Python Module Index"
             >modules</a> &nbsp; &nbsp;</li>
        <li class="right" >
          <a href="../np-modindex.html" title="Python Module Index"
             >modules</a> &nbsp; &nbsp;</li>
        <li class="right" >
          <a href="RELEASE_NOTES_v0.7.2.html" title="What’s new in PyTables 0.7.2"
             >next</a> &nbsp; &nbsp;</li>
        <li class="right" >
          <a href="RELEASE_NOTES_v0.9.html" title="What’s new in PyTables 0.9"
             >previous</a> &nbsp; &nbsp;</li>
    <li><a href="../index.html">PyTables 3.0.0 documentation</a> &raquo;</li>

          <li><a href="../release_notes.html" >PyTables Release Notes</a> &raquo;</li> 
      </ul>
    </div>
    </div>

    <div class="footer">
        &copy; Copyright 2011-2013, PyTables maintainers.
      Created using <a href="http://sphinx.pocoo.org/">Sphinx</a> 1.1.3.
    </div>
    <!-- cloud_sptheme 1.3 -->
  </body>
</html>