COIN-OR::LEMON - Graph Library

Opened 15 years ago

Last modified 8 years ago

#225 new enhancement

Binary graph file format

Reported by: Alpar Juttner Owned by: Alpar Juttner
Priority: major Milestone: LEMON 1.5 release
Component: core Version: hg main
Keywords: Cc:
Revision id:

Description

The .lgf format is nice, but the files become extremely large for big graphs.

In some cases it would be nice to have a version of GraphReader/GraphWriter using a much more condensed binary format while providing close to the same API and feature set.

Attachments (1)

blgf.patch (117.6 KB) - added by Frantisek Csajka 14 years ago.

Download all attachments as: .zip

Change History (8)

comment:1 Changed 15 years ago by Alpar Juttner

Milestone: LEMON 1.1 release

comment:2 in reply to:  description Changed 15 years ago by Balazs Dezso

Replying to alpar:

The .lgf format is nice, but the files become extremely large for big graphs.

In some cases it would be nice to have a version of GraphReader/GraphWriter using a much more condensed binary format while providing close to the same API and feature set.

It would be good, but it is not a requisite. I think the zipped and gzipped text files could substitute the binary files. They can be used efficiently, and it do not have the problem of binary compatibility, byte orders, etc.

The compressed text files can be used through POSIX pipes, or with C++ libraries, for example ost::OZStream and ost::IZStream.

comment:3 Changed 14 years ago by Alpar Juttner

It is also a possible approach that the standard graph reader will hande the binary format, as well. It can be an option for the writer, while the reader may automatically recognise whether the file is a binary or plain text LGF.

comment:4 Changed 14 years ago by Peter Kovacs

Milestone: LEMON 1.3 release

Changed 14 years ago by Frantisek Csajka

Attachment: blgf.patch added

comment:5 Changed 14 years ago by Frantisek Csajka

The attached patch [454f0c2a380c] contains implementation of the BLGF (Binary Lemon Graph Format) as well as its documentation. BLGF can be read and written using the existing GraphReader,GraphWriter , DigraphReader and DigraphWriter classes. It provides almost the same features as the LGF.

Note: Portability problem of real types (i.e. byte order) is still not solved.

comment:6 Changed 11 years ago by Alpar Juttner

Milestone: LEMON 1.3 releaseLEMON 1.4 release

comment:7 Changed 8 years ago by Alpar Juttner

Milestone: LEMON 1.4 releaseLEMON 1.5 release
Note: See TracTickets for help on using tickets.