Hi Francesc,

Hearing that row-major order is hardcoded behind the scene is rather a bad
news for me. You are right, there is no way to store ordering metadata in
HDF5, but I do not see any need for any. I have been using HDF5 with
fortran/matlab data for a very long time. One just needs to know the
ordering of the data, and/or store it in XDMF light xml description. Does
this sound reasonable  for  pytables?

Dominik

On Mon, Dec 13, 2010 at 10:22 AM, Francesc Alted <fal...@pytables.org>wrote:

> A Monday 13 December 2010 09:34:25 Dominik Szczerba escrigué:
> > Hi Francesc,
> >
> > Thanks for confirming my guess.
> > I would vote for a different solution than removing this warning in
> > the 'expert' mode.
> > How about explicitly declaring ordering somewhere in pytables?
> > Or is this warning the only place where the ordering matters?
>
> No, the ordering also affects the way iterators walk data on datasets.
> On a Fortran order dataset, the iterators should return slices
> orthogonal to the trailing dimension, not the leading one (default).
>
> Hmm, supporting Fortran order in PyTables is appealing, but I see a
> major drawback: there is not a standard way (that I'm aware of) for
> saving this metainfo in HDF5.  So, unless the file has been created with
> PyTables, you will not be able to guess the data order.
>
> Having said this, PyTables has a feature that can 'fake' in some way a
> 'Fortran ordered' array.  This is by using an EArray (just a HDF5
> dataset with one of its dimensions that is set to be enlargeable; this
> dimension is called the 'main' dimension).  EArrays are iterated through
> the enlargeable (main) dimension instead of the leading one.  This is
> not exactly a Fortran-ordered dataset, but can be useful in some
> circumstances (specially for 2-dimensional arrays).
>
> OTOH, if what you want is to get rid of the warning, another solution is
> to play with the IO_BUFFER_SIZE and BUFFER_TIMES parameters:
>
> http://www.pytables.org/docs/manual/apc.html#id364831
>
> until you reach a good balance for your datasets.
>
> Now that I think, it would be a good idea to add a hint about suggesting
> tailoring IO_BUFFER_SIZE and BUFFER_TIMES params in the warning rather
> than adding a brand-new EXPERT_MODE one.  Updated ticket:
>
> http://pytables.org/trac/ticket/327#comment:1
>
> --
> Francesc Alted
>
>
> ------------------------------------------------------------------------------
> Oracle to DB2 Conversion Guide: Learn learn about native support for
> PL/SQL,
> new data types, scalar functions, improved concurrency, built-in packages,
> OCI, SQL*Plus, data movement tools, best practices and more.
> http://p.sf.net/sfu/oracle-sfdev2dev
> _______________________________________________
> Pytables-users mailing list
> Pytables-users@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/pytables-users
>
>
------------------------------------------------------------------------------
Oracle to DB2 Conversion Guide: Learn learn about native support for PL/SQL,
new data types, scalar functions, improved concurrency, built-in packages, 
OCI, SQL*Plus, data movement tools, best practices and more.
http://p.sf.net/sfu/oracle-sfdev2dev 
_______________________________________________
Pytables-users mailing list
Pytables-users@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/pytables-users

Reply via email to