Syntax of a Description File for RAID Configurations |
You may create and store your own RAID configurations The syntax of those files is similar to that of the XML language. They are stored in an .xml file specified on the R-Studio Settings. A number of file examples are shown on the Description Files for RAID Configurations topic. RAID configuration file example <RAIDList> <RAID name="RAID6Complex" parents="5" rows="6" blocksize="16777216"> <Table> <Block id="A1">ReedSolomon</Block> <Block id="B1">1</Block> <Block id="C1">2</Block> <Block id="D1">3</Block> <Block id="E1">XorOfData</Block> <Block id="A2">4</Block> <Block id="B2">5</Block> <Block id="C2">6</Block> <Block id="D2">XorOfData</Block> <Block id="E2">ReedSolomon</Block> <Block id="A3">8</Block> <Block id="B3">9</Block> <Block id="C3">XorOfData</Block> <Block id="D3">ReedSolomon</Block> <Block id="E3">7</Block> <Block id="A4">12</Block> <Block id="B4">XorOfData</Block> <Block id="C4">ReedSolomon</Block> <Block id="D4">10</Block> <Block id="E4">11</Block> <Block id="A5">XorOfData</Block> <Block id="B5">ReedSolomon</Block> <Block id="C5">13</Block> <Block id="D5">14</Block> <Block id="E5">15</Block> <Block id="A6" sequence="1">XorOfAll</Block> <Block id="B6" sequence="2">XorOfAll</Block> <Block id="C6" sequence="3">XorOfAll</Block> <Block id="D6" sequence="4">XorOfAll</Block> <Block id="E6" sequence="5">XorOfAll</Block> </Table> <Sequences> <Sequence id="1">A1 A2 A3 A4 A5 A6</Sequence> <Sequence id="2">B1 B2 B3 B4 B5 B6</Sequence> <Sequence id="3">C1 C2 C3 C4 C5 C6</Sequence> <Sequence id="4">D1 D2 D3 D4 D5 D6</Sequence> <Sequence id="5">E1 E2 E3 E4 E5 E6</Sequence> </Sequences> </RAID> </RAIDList> File structure File header The file starts with a standard XML header: <?xml version="1.0" encoding="utf-8"?> Section RAIDList <RAIDList> It can contain any number of the <RAID> sections and requires a closing element </FileTypeList>. Section structure example: <RAIDList> <RAID [attributes]> ... </RAID> ... <RAID [attributes]> ... </RAID> Section RAID This section describes each RAID layout. It must contain at least one <Table> section and can contain one block <Sequences> and one block <Offsets>. Attributes:
Section structure example: <RAIDList> <RAID name="example" parents="2" rows="2" blocksize="16777216"> <Table> ... </Table> <Sequences> ... </Sequences> <Offsets> ... </Offsets> </RAID> </RAIDList> Section Table This section describes the RAID layout table. It contains the <Block> elements which number is a product of two attributes in the <RAID> section: <parents> x <rows>. Section structure example: <RAIDList> <RAID name="example" parents="2" rows="2" blocksize="16777216"> <Table> <Block [attributes]> ... </Block> <Block [attributes]> ... </Block> <Block [attributes]> ... </Block> <Block [attributes]> ... </Block> </Table> </RAID> </RAIDList> Element Block The element specifies the block number in the RAID layout table (a positive integer number) or an error correction block of the following types:
Any other value is treated as Unknown. Attributes:
Section Sequences This section describes the data checksum sequences used to preserve data integrity. It can contain any number of the <Sequence> elements. Section structure example: <RAIDList> <RAID name="example" parents="4" rows="4" blocksize="16777216"> <Table> ... </Table> <Sequences> <Sequence [attributes]> ... </Sequence> ... <Sequence [attributes]> ... </Sequence> </Sequences> </RAID> </RAIDList> Element Sequence The element contains the list of the RAID blocks separated by a space which belong to that sequence. Attributes:
Element example: See the RAID configuration file example. Section Offsets This section describes the offsets of each parent object.. It contains the <Offset> elements which number should not exceed the value of the parents attribute of the <RAID> section. If the <Offsets> section is absent, offsets are treated as zero. Section structure example: <RAIDList> <RAID name="example" parents="4" rows="4" blocksize="16777216"> <Table> ... </Table> <Offsets> <Offset [attributes]> ... </Offset> <Offset [attributes]> ... </Offset> <Offset [attributes]> ... </Offset> <Offset [attributes]> ... </Offset> </Offsets> </RAID> </RAIDList> Element Offset The element specifies the offset of a RAID parent in bytes. Attributes:
Element example: <RAIDList> <RAID name="example" parents="4" rows="4" blocksize="16777216"> <Table> ... </Table> <Offsets> <Offset id="1"> 0x00100</Offset> <Offset id="3"> 0x01000</Offset> </Offsets> </RAID> </RAIDList> Comments <!-- Comment string --> An XML standard string for a comment. |