Systems and methods for fragment-based serialization
First Claim
1. A method for storing or transmitting a data object made of one or more data members, comprising:
- dividing a plurality of sequentially located bytes in a computing device into at least one header section and at least one payload section;
representing at least one data member in the payload section, said at least one data member being associated with a data type, the data type having multiple sub-types, the data type being associated with a value type, the data type specifying a predefined type of the at least one data members, the value type further specifying the predefined type of the at least one data member as one of the multiple sub-types of the data type of the at least one data member, and describing the at least one data member by including at least one attribute of the at least one data member, the at least one data member having a length and having a related data member, the related data member being locatable by locator information;
representing the data type of the at least one data member in the header section;
representing the value type of the at least one data member in the header section, the at least one data member being associated with the value type;
representing the length of the at least one data member in the header section, the length being required in the header section by at least one of the represented data type and the represented value type;
representing the locator information of the at least one data member in the header section, the locator information being required in the header section by at least one of the represented data type and the represented value type;
placing the at least one data member in the payload section in a record format, wherein the record format defines a predictable location for said at least one data member in relation to any other members in the payload section; and
storing the data object with the at least one data member in the payload section thereof and the data type, value type, length, and locator information in the header section thereof in a computer-readable storage medium.
1 Assignment
0 Petitions
Accused Products
Abstract
A method and system for fragment-based serialization places one or more object members in fragments. Fragments may comprise a header and a payload. A header can provide useful information about the fragment, such as an indication of fragment type and an indication of fragment length. A payload may comprise one or more members of an object. Primitive members may be stored in a Binary Fragment with a record format payload. LOB and FS members may be stored in fragments that have a Value Type field for setting forth additional properties of the fragment. Collections may be stored in a series of fragments, a first fragment to indicate a start of a collection, one or more second fragments to serialize collection elements, and a Terminator Fragment to indicate the end of a collection. Fragment-serialized objects minimize storage overhead while providing fast instantiation and low-cost location and updating.
-
Citations
16 Claims
-
1. A method for storing or transmitting a data object made of one or more data members, comprising:
-
dividing a plurality of sequentially located bytes in a computing device into at least one header section and at least one payload section; representing at least one data member in the payload section, said at least one data member being associated with a data type, the data type having multiple sub-types, the data type being associated with a value type, the data type specifying a predefined type of the at least one data members, the value type further specifying the predefined type of the at least one data member as one of the multiple sub-types of the data type of the at least one data member, and describing the at least one data member by including at least one attribute of the at least one data member, the at least one data member having a length and having a related data member, the related data member being locatable by locator information; representing the data type of the at least one data member in the header section; representing the value type of the at least one data member in the header section, the at least one data member being associated with the value type; representing the length of the at least one data member in the header section, the length being required in the header section by at least one of the represented data type and the represented value type; representing the locator information of the at least one data member in the header section, the locator information being required in the header section by at least one of the represented data type and the represented value type; placing the at least one data member in the payload section in a record format, wherein the record format defines a predictable location for said at least one data member in relation to any other members in the payload section; and storing the data object with the at least one data member in the payload section thereof and the data type, value type, length, and locator information in the header section thereof in a computer-readable storage medium. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A computer readable storage medium bearing instructions for storing or transmitting a data object made of one or more data members, comprising:
-
instructions for dividing a plurality of sequentially located bytes in a computing device into at least one header section and at least one payload section; instructions for representing at least one data member in the payload section, said at least one data member being associated with a data type, the data type having multiple sub-types, the data type being associated with a value type, the data type specifying a predefined type of the at least one data member, the value type further specifying the predefined type of the at least one data member as one of the multiple sub-types of the data type of the at least one data member, and describing the at least one data member by including at least one attribute of the at least one data member, the at least one data member having a length and having a related data member, the related data member being locatable by locator information; instructions for representing the data type of the at least one data member in the header section; instructions for representing the value type of the at least one data member in the header section, the at least one data member being associated with the value type; instructions for representing the length of the at least one data member in the header section, the length being required in the header section by at least one of the represented data type and the represented value type; instructions for representing the locator information of the at least one data member in the header section, the locator information being required in the header section by at least one of the represented data type and the represented value type; and instructions for placing the at least one data member in the payload section in a record format, wherein the record format defines a predictable location for said at least one data member in relation to any other members in the payload section. - View Dependent Claims (12, 13, 14, 15, 16)
-
Specification