the easy way of managing HDF data

Join the many research organizations, data-driven corporations, and universities across the globe who use HDFql. It’s free.



Designed to be as simple as SQL. Hides complex operations and frees users from low-level details


Unfailing performance and reliability. HDFql is checked against hundreds of existing tests before new versions are released


Offers a clean interface requiring just a few intuitive statements even for complex operations. Gone are the days where HDF5 required innumerous lines of code


Unlike other tools, HDFql not only reads HDF5 but also allows
you to write HDF5 data


Processes data with superior velocity by using all CPU cores available. This means much higher volumes of data are processed in the same amount of time


Portable across C, C++, Java, Python, C#, Fortran and R using
one uniform high-level language


Based on models of human cognition and natural language. Fast learning curve


Supports Windows, Linux, Mac OS X


WHY? Scientists, engineers and data professionals currently waste a lot of unnecessary time managing the data format HDF5. That’s because the interfaces for HDF are highly complex (e.g. the C API contains more than 400 low-level functions that are far from easy to use!). With HDF becoming increasingly common in the big data arena, a faster and simpler solution is needed.

WHAT? HDFql is the first high-level language to manage HDF data. Designed to be as simple and powerful as SQL, HDFql dramatically reduces the learning effort and time needed to handle HDF5. Built on intuitive syntax, the tool offers a clean interface which reads and writes HDF data across programming languages and platforms. Supports chunked & extendible datasets, variable-length & opaque datatypes, regular & irregular hyperslab selections as well as point selections.

HOW? As an example, imagine that you need to create an HDF file named “myFile.h5” and, inside it, a group named “myGroup” containing an attribute named “myAttribute” of datatype float with a value of 12.4. In HDFql, this can easily be implemented as follows:

create file myFile.h5
use file myFile.h5
create group myGroup
create attribute myGroup/myAttribute as float default 12.4

In contrast, using the C API on the same example is quite cumbersome:

hid_t file;
hid_t group;
hid_t dataspace;
hid_t attribute;
hsize_t dimension;
float value;
H5Fcreate(“myFile.h5”, H5F_ACC_EXCL, H5P_DEFAULT, H5P_DEFAULT);
file = H5Fopen(“myFile.h5”, H5F_ACC_RDWR, H5P_DEFAULT);
group = H5Gcreate(file, “myGroup”, H5P_DEFAULT, H5P_DEFAULT, H5P_DEFAULT);
dimension = 1;
dataspace = H5Screate_simple(1, &dimension, NULL);
attribute = H5Acreate(group, “myAttribute”, H5T_NATIVE_FLOAT, dataspace, H5P_DEFAULT, H5P_DEFAULT);
value = 12.4;
H5Awrite(attribute, H5T_NATIVE_FLOAT, &value);



HDFql was launched in 2016 by a team of interdisciplinary experts with vast experience from world leading research facilities (such as CERN), Fortune 50, and top universities in the United States and Europe. We believe big data management should be simple, clean and fast, and we’re especially passionate about the promises of machine learning in cleantech, healthtech and science.

HDFql is currently being used to power electric vehicle strategies, to crunch data in renewable energy, and to deliver breakthroughs in science, biotechnology and engineering. Because we aspire to advance data-driven discoveries, HDFql is free.


You can find the latest news about HDFql by following us at  

Reach out to us at contact@hdfql.com or simply use this form
We are always glad to hear from you!

(C) 2016-2017