Opened 17 years ago
Last modified 9 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)
Change History (8)
comment:1 Changed 17 years ago by
| Milestone: | LEMON 1.1 release |
|---|
comment:2 Changed 17 years ago by
comment:3 Changed 16 years ago by
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 16 years ago by
| Milestone: | → LEMON 1.3 release |
|---|
Changed 15 years ago by
| Attachment: | blgf.patch added |
|---|
comment:5 Changed 15 years ago by
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 13 years ago by
| Milestone: | LEMON 1.3 release → LEMON 1.4 release |
|---|
comment:7 Changed 9 years ago by
| Milestone: | LEMON 1.4 release → LEMON 1.5 release |
|---|


Replying to alpar:
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.