In the HDF5 format, when groups/datasets are deleted, it does not free the space in the file.
I notice that in the create_scool implementation, if the function is called in append mode, then it always deletes the original bins group and recreates it, even if the submitted bins are exactly the same. Calling create_scool multiple times with the same bins, but an empty pixels dict, converts the previous bins datasets into inaccessible dead space within the file, making the file larger and larger even though the actual groups and data within the file is the same.