refactoring the DiskBuffer to use the DataFrameBuffer