Ticket #39 (new enhancement)
Opened 20 months ago
Lazy deserialization
| Reported by: | ieslick | Owned by: | ieslick |
|---|---|---|---|
| Priority: | minor | Milestone: | |
| Component: | db-bdb | Version: | |
| Keywords: | Cc: |
Description
This is a significant change, but could improve performance characteristics or make database performance design simpler. The idea is to only deserialize values if they are used, or allow partial deserialization, say to detect the type tag. This does require copying the serialized byte stream from the various pages it is stored in, but that's usually just a memcpy.
This is a significant feature requiring changes to the serializer, map functions and various backend interfaces. It isn't worth it at this time as there is a workaround, which is to use lightweight persistent objects to keep references to larger values it is too expensive to deserialize, or to define derived indices which hash code or otherwise map the large datastructure to a simple range of integers or other small values.
