mirror of
https://github.com/CorentinTh/it-tools.git
synced 2025-05-04 13:29:13 -04:00
added space efficiency info
This commit is contained in:
parent
b476b6808e
commit
cb23cdf343
2 changed files with 33 additions and 1 deletions
|
@ -11,6 +11,10 @@ const raidCalculations = {
|
||||||
// total disks * size
|
// total disks * size
|
||||||
return (num * size) * unit;
|
return (num * size) * unit;
|
||||||
},
|
},
|
||||||
|
efficiency(num) {
|
||||||
|
// uses 100% of space
|
||||||
|
return 100;
|
||||||
|
},
|
||||||
fault(num, size, unit) {
|
fault(num, size, unit) {
|
||||||
return 'None';
|
return 'None';
|
||||||
},
|
},
|
||||||
|
@ -25,6 +29,10 @@ const raidCalculations = {
|
||||||
// total size is size of a single drive
|
// total size is size of a single drive
|
||||||
return size * unit;
|
return size * unit;
|
||||||
},
|
},
|
||||||
|
efficiency(num) {
|
||||||
|
// 1/N
|
||||||
|
return (1 / num) * 100;
|
||||||
|
},
|
||||||
fault(num, size, unit) {
|
fault(num, size, unit) {
|
||||||
// FT = total - 1
|
// FT = total - 1
|
||||||
return `${num - 1} drive failures`;
|
return `${num - 1} drive failures`;
|
||||||
|
@ -40,6 +48,10 @@ const raidCalculations = {
|
||||||
// (N-1) * S (one drive for parity)
|
// (N-1) * S (one drive for parity)
|
||||||
return ((num - 1) * size) * unit;
|
return ((num - 1) * size) * unit;
|
||||||
},
|
},
|
||||||
|
efficiency(num) {
|
||||||
|
// 1 - (1/N)
|
||||||
|
return (1 - (1 / num)) * 100;
|
||||||
|
},
|
||||||
fault(num, size, unit) {
|
fault(num, size, unit) {
|
||||||
// always 1 failure
|
// always 1 failure
|
||||||
return '1 drive failure';
|
return '1 drive failure';
|
||||||
|
@ -55,6 +67,10 @@ const raidCalculations = {
|
||||||
// (N-2) * S (2 parity)
|
// (N-2) * S (2 parity)
|
||||||
return ((num - 2) * size) * unit;
|
return ((num - 2) * size) * unit;
|
||||||
},
|
},
|
||||||
|
efficiency(num) {
|
||||||
|
// 1 - (2/N)
|
||||||
|
return (1 - (2 / num)) * 100;
|
||||||
|
},
|
||||||
fault(num, size, unit) {
|
fault(num, size, unit) {
|
||||||
// always 2 drive failures
|
// always 2 drive failures
|
||||||
return '2 drive failures';
|
return '2 drive failures';
|
||||||
|
@ -70,6 +86,10 @@ const raidCalculations = {
|
||||||
// Total disks (stripe)/2 (mirror)
|
// Total disks (stripe)/2 (mirror)
|
||||||
return ((num * size) / 2) * unit;
|
return ((num * size) / 2) * unit;
|
||||||
},
|
},
|
||||||
|
efficiency(num) {
|
||||||
|
// 1/2 (1/strips per stripe, 2 in this case)
|
||||||
|
return 50;
|
||||||
|
},
|
||||||
fault(num, size, unit) {
|
fault(num, size, unit) {
|
||||||
// one per mirror
|
// one per mirror
|
||||||
return '1 drive failure per mirrored set';
|
return '1 drive failure per mirrored set';
|
||||||
|
|
|
@ -28,6 +28,10 @@ const calculatedFaultTolerance = computed(() => {
|
||||||
return raidCalculations[raidType.value].fault(diskTotal.value, diskSize.value, diskUnit.value);
|
return raidCalculations[raidType.value].fault(diskTotal.value, diskSize.value, diskUnit.value);
|
||||||
});
|
});
|
||||||
|
|
||||||
|
const calculatedSpaceEfficiency = computed(() => {
|
||||||
|
return raidCalculations[raidType.value].efficiency(diskTotal.value);
|
||||||
|
});
|
||||||
|
|
||||||
function validateSetup() {
|
function validateSetup() {
|
||||||
// validate the selected RAID type against parameters
|
// validate the selected RAID type against parameters
|
||||||
return raidCalculations[raidType.value].validate(diskTotal.value, diskSize.value);
|
return raidCalculations[raidType.value].validate(diskTotal.value, diskSize.value);
|
||||||
|
@ -90,10 +94,18 @@ function validateSetup() {
|
||||||
<td font-bold width="30%">
|
<td font-bold width="30%">
|
||||||
Fault Tolerance
|
Fault Tolerance
|
||||||
</td>
|
</td>
|
||||||
<td :value="calculatedFaultTolerance">
|
<td>
|
||||||
{{ calculatedFaultTolerance }}
|
{{ calculatedFaultTolerance }}
|
||||||
</td>
|
</td>
|
||||||
</tr>
|
</tr>
|
||||||
|
<tr>
|
||||||
|
<td font-bold width="30%">
|
||||||
|
Space Efficiency
|
||||||
|
</td>
|
||||||
|
<td>
|
||||||
|
{{ calculatedSpaceEfficiency }}%
|
||||||
|
</td>
|
||||||
|
</tr>
|
||||||
</tbody>
|
</tbody>
|
||||||
</n-table>
|
</n-table>
|
||||||
</c-card>
|
</c-card>
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue