add: getting started notebook (executed)

This commit is contained in:
deeddy 2026-06-18 13:32:07 +02:00
parent 70c56b005e
commit 47ad333b63

View file

@ -1,19 +1,227 @@
{ {
"cells": [ "cells": [
{ {
"cell_type": "markdown", "cell_type": "code",
"metadata": {}, "execution_count": 1,
"source": [ "id": "fbe91c0f",
"# NAS Drives: CMR/SMR, Failure Rates & Specs\n", "metadata": {
"\n", "_cell_guid": "b1076dfc-b9ad-4769-8c92-a6c4dae69d19",
"Exploring the dataset of 140+ NAS and enterprise hard drives - CMR vs SMR classification, real-world failure rates from Backblaze Drive Stats, and full specs." "_uuid": "8f2839f25d086af736a60e9eeb907d3b93b6e0e5",
"execution": {
"iopub.execute_input": "2026-06-18T11:22:23.476983Z",
"iopub.status.busy": "2026-06-18T11:22:23.476625Z",
"iopub.status.idle": "2026-06-18T11:22:24.659291Z",
"shell.execute_reply": "2026-06-18T11:22:24.658041Z"
},
"papermill": {
"duration": 1.189792,
"end_time": "2026-06-18T11:22:24.661531+00:00",
"exception": false,
"start_time": "2026-06-18T11:22:23.471739+00:00",
"status": "completed"
},
"tags": []
},
"outputs": [
{
"name": "stdout",
"output_type": "stream",
"text": [
"142 drives | 3 brands | 39 product lines\n"
] ]
}, },
{ {
"cell_type": "code", "data": {
"execution_count": null, "text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>model</th>\n",
" <th>brand</th>\n",
" <th>line</th>\n",
" <th>capacity_tb</th>\n",
" <th>rpm</th>\n",
" <th>cache_mb</th>\n",
" <th>interface</th>\n",
" <th>form_factor</th>\n",
" <th>recording_tech</th>\n",
" <th>acoustic_idle_db</th>\n",
" <th>acoustic_seek_db</th>\n",
" <th>is_helium</th>\n",
" <th>drive_class</th>\n",
" <th>in_production</th>\n",
" <th>afr_pct</th>\n",
" <th>reliability_drive_count</th>\n",
" <th>reliability_drive_days</th>\n",
" <th>reliability_failures</th>\n",
" <th>reliability_source</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>WUH722626ALE6L4</td>\n",
" <td>WD</td>\n",
" <td>Ultrastar DC HC590</td>\n",
" <td>26</td>\n",
" <td>7200</td>\n",
" <td>512</td>\n",
" <td>SATA</td>\n",
" <td>3.5</td>\n",
" <td>cmr</td>\n",
" <td>20.0</td>\n",
" <td>36.0</td>\n",
" <td>1.0</td>\n",
" <td>Enterprise</td>\n",
" <td>1</td>\n",
" <td>0.40</td>\n",
" <td>1200.0</td>\n",
" <td>91690.0</td>\n",
" <td>1.0</td>\n",
" <td>Backblaze 2025</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>ST24000NM002H</td>\n",
" <td>Seagate</td>\n",
" <td>Exos X24</td>\n",
" <td>24</td>\n",
" <td>7200</td>\n",
" <td>512</td>\n",
" <td>SATA</td>\n",
" <td>3.5</td>\n",
" <td>cmr</td>\n",
" <td>30.0</td>\n",
" <td>34.0</td>\n",
" <td>1.0</td>\n",
" <td>Enterprise</td>\n",
" <td>1</td>\n",
" <td>2.75</td>\n",
" <td>8328.0</td>\n",
" <td>1941010.0</td>\n",
" <td>146.0</td>\n",
" <td>Backblaze 2025</td>\n",
" </tr>\n",
" <tr>\n",
" <th>2</th>\n",
" <td>ST24000NT002</td>\n",
" <td>Seagate</td>\n",
" <td>IronWolf Pro</td>\n",
" <td>24</td>\n",
" <td>7200</td>\n",
" <td>512</td>\n",
" <td>SATA</td>\n",
" <td>3.5</td>\n",
" <td>cmr</td>\n",
" <td>28.0</td>\n",
" <td>32.0</td>\n",
" <td>1.0</td>\n",
" <td>NAS-Pro</td>\n",
" <td>1</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>3</th>\n",
" <td>ST24000VE002</td>\n",
" <td>Seagate</td>\n",
" <td>SkyHawk AI</td>\n",
" <td>24</td>\n",
" <td>7200</td>\n",
" <td>512</td>\n",
" <td>SATA</td>\n",
" <td>3.5</td>\n",
" <td>cmr</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>1.0</td>\n",
" <td>Surveillance</td>\n",
" <td>1</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" <td>NaN</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>MG11ACA24TE</td>\n",
" <td>Toshiba</td>\n",
" <td>MG11</td>\n",
" <td>24</td>\n",
" <td>7200</td>\n",
" <td>512</td>\n",
" <td>SATA</td>\n",
" <td>3.5</td>\n",
" <td>cmr</td>\n",
" <td>20.0</td>\n",
" <td>NaN</td>\n",
" <td>1.0</td>\n",
" <td>Enterprise</td>\n",
" <td>1</td>\n",
" <td>0.68</td>\n",
" <td>4739.0</td>\n",
" <td>374087.0</td>\n",
" <td>7.0</td>\n",
" <td>Backblaze 2025</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" model brand line capacity_tb rpm cache_mb \\\n",
"0 WUH722626ALE6L4 WD Ultrastar DC HC590 26 7200 512 \n",
"1 ST24000NM002H Seagate Exos X24 24 7200 512 \n",
"2 ST24000NT002 Seagate IronWolf Pro 24 7200 512 \n",
"3 ST24000VE002 Seagate SkyHawk AI 24 7200 512 \n",
"4 MG11ACA24TE Toshiba MG11 24 7200 512 \n",
"\n",
" interface form_factor recording_tech acoustic_idle_db acoustic_seek_db \\\n",
"0 SATA 3.5 cmr 20.0 36.0 \n",
"1 SATA 3.5 cmr 30.0 34.0 \n",
"2 SATA 3.5 cmr 28.0 32.0 \n",
"3 SATA 3.5 cmr NaN NaN \n",
"4 SATA 3.5 cmr 20.0 NaN \n",
"\n",
" is_helium drive_class in_production afr_pct reliability_drive_count \\\n",
"0 1.0 Enterprise 1 0.40 1200.0 \n",
"1 1.0 Enterprise 1 2.75 8328.0 \n",
"2 1.0 NAS-Pro 1 NaN NaN \n",
"3 1.0 Surveillance 1 NaN NaN \n",
"4 1.0 Enterprise 1 0.68 4739.0 \n",
"\n",
" reliability_drive_days reliability_failures reliability_source \n",
"0 91690.0 1.0 Backblaze 2025 \n",
"1 1941010.0 146.0 Backblaze 2025 \n",
"2 NaN NaN NaN \n",
"3 NaN NaN NaN \n",
"4 374087.0 7.0 Backblaze 2025 "
]
},
"execution_count": 1,
"metadata": {}, "metadata": {},
"outputs": [], "output_type": "execute_result"
}
],
"source": [ "source": [
"import pandas as pd\n", "import pandas as pd\n",
"\n", "\n",
@ -24,7 +232,17 @@
}, },
{ {
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "id": "b997beaf",
"metadata": {
"papermill": {
"duration": 0.001942,
"end_time": "2026-06-18T11:22:24.665845+00:00",
"exception": false,
"start_time": "2026-06-18T11:22:24.663903+00:00",
"status": "completed"
},
"tags": []
},
"source": [ "source": [
"## CMR vs SMR breakdown\n", "## CMR vs SMR breakdown\n",
"\n", "\n",
@ -33,48 +251,551 @@
}, },
{ {
"cell_type": "code", "cell_type": "code",
"execution_count": null, "execution_count": 2,
"id": "6a938ae0",
"metadata": {
"execution": {
"iopub.execute_input": "2026-06-18T11:22:24.671441Z",
"iopub.status.busy": "2026-06-18T11:22:24.671030Z",
"iopub.status.idle": "2026-06-18T11:22:24.681914Z",
"shell.execute_reply": "2026-06-18T11:22:24.680647Z"
},
"papermill": {
"duration": 0.016754,
"end_time": "2026-06-18T11:22:24.684488+00:00",
"exception": false,
"start_time": "2026-06-18T11:22:24.667734+00:00",
"status": "completed"
},
"tags": []
},
"outputs": [
{
"data": {
"text/plain": [
"recording_tech\n",
"cmr 124\n",
"smr 18\n",
"Name: count, dtype: int64"
]
},
"execution_count": 2,
"metadata": {}, "metadata": {},
"outputs": [], "output_type": "execute_result"
}
],
"source": [ "source": [
"df['recording_tech'].value_counts()" "df['recording_tech'].value_counts()"
] ]
}, },
{ {
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "id": "1bddd132",
"metadata": {
"papermill": {
"duration": 0.002021,
"end_time": "2026-06-18T11:22:24.688888+00:00",
"exception": false,
"start_time": "2026-06-18T11:22:24.686867+00:00",
"status": "completed"
},
"tags": []
},
"source": [ "source": [
"## SMR drives to avoid in a NAS/RAID array" "## SMR drives to avoid in a NAS/RAID array"
] ]
}, },
{ {
"cell_type": "code", "cell_type": "code",
"execution_count": null, "execution_count": 3,
"id": "17ee905c",
"metadata": {
"execution": {
"iopub.execute_input": "2026-06-18T11:22:24.695808Z",
"iopub.status.busy": "2026-06-18T11:22:24.694779Z",
"iopub.status.idle": "2026-06-18T11:22:24.722063Z",
"shell.execute_reply": "2026-06-18T11:22:24.721040Z"
},
"papermill": {
"duration": 0.0332,
"end_time": "2026-06-18T11:22:24.724134+00:00",
"exception": false,
"start_time": "2026-06-18T11:22:24.690934+00:00",
"status": "completed"
},
"tags": []
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>brand</th>\n",
" <th>line</th>\n",
" <th>model</th>\n",
" <th>capacity_tb</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>127</th>\n",
" <td>Seagate</td>\n",
" <td>BarraCuda</td>\n",
" <td>ST2000DM008</td>\n",
" <td>2</td>\n",
" </tr>\n",
" <tr>\n",
" <th>123</th>\n",
" <td>Seagate</td>\n",
" <td>BarraCuda</td>\n",
" <td>ST3000DM007</td>\n",
" <td>3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>109</th>\n",
" <td>Seagate</td>\n",
" <td>BarraCuda</td>\n",
" <td>ST4000DM004</td>\n",
" <td>4</td>\n",
" </tr>\n",
" <tr>\n",
" <th>94</th>\n",
" <td>Seagate</td>\n",
" <td>BarraCuda</td>\n",
" <td>ST6000DM003</td>\n",
" <td>6</td>\n",
" </tr>\n",
" <tr>\n",
" <th>78</th>\n",
" <td>Seagate</td>\n",
" <td>BarraCuda</td>\n",
" <td>ST8000DM004</td>\n",
" <td>8</td>\n",
" </tr>\n",
" <tr>\n",
" <th>139</th>\n",
" <td>Toshiba</td>\n",
" <td>L200</td>\n",
" <td>HDWL110</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>140</th>\n",
" <td>Toshiba</td>\n",
" <td>MQ04</td>\n",
" <td>MQ04ABF100</td>\n",
" <td>1</td>\n",
" </tr>\n",
" <tr>\n",
" <th>113</th>\n",
" <td>Toshiba</td>\n",
" <td>DT02</td>\n",
" <td>DT02ABA400</td>\n",
" <td>4</td>\n",
" </tr>\n",
" <tr>\n",
" <th>114</th>\n",
" <td>Toshiba</td>\n",
" <td>P300</td>\n",
" <td>HDWD240</td>\n",
" <td>4</td>\n",
" </tr>\n",
" <tr>\n",
" <th>98</th>\n",
" <td>Toshiba</td>\n",
" <td>DT02</td>\n",
" <td>DT02ABA600</td>\n",
" <td>6</td>\n",
" </tr>\n",
" <tr>\n",
" <th>99</th>\n",
" <td>Toshiba</td>\n",
" <td>P300</td>\n",
" <td>HDWD260</td>\n",
" <td>6</td>\n",
" </tr>\n",
" <tr>\n",
" <th>134</th>\n",
" <td>WD</td>\n",
" <td>Red</td>\n",
" <td>WD20EFAX</td>\n",
" <td>2</td>\n",
" </tr>\n",
" <tr>\n",
" <th>136</th>\n",
" <td>WD</td>\n",
" <td>Blue</td>\n",
" <td>WD20EZAZ</td>\n",
" <td>2</td>\n",
" </tr>\n",
" <tr>\n",
" <th>125</th>\n",
" <td>WD</td>\n",
" <td>Red</td>\n",
" <td>WD30EFAX</td>\n",
" <td>3</td>\n",
" </tr>\n",
" <tr>\n",
" <th>119</th>\n",
" <td>WD</td>\n",
" <td>Red</td>\n",
" <td>WD40EFAX</td>\n",
" <td>4</td>\n",
" </tr>\n",
" <tr>\n",
" <th>122</th>\n",
" <td>WD</td>\n",
" <td>Blue</td>\n",
" <td>WD40EZAZ</td>\n",
" <td>4</td>\n",
" </tr>\n",
" <tr>\n",
" <th>105</th>\n",
" <td>WD</td>\n",
" <td>Red</td>\n",
" <td>WD60EFAX</td>\n",
" <td>6</td>\n",
" </tr>\n",
" <tr>\n",
" <th>108</th>\n",
" <td>WD</td>\n",
" <td>Blue</td>\n",
" <td>WD60EZAZ</td>\n",
" <td>6</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" brand line model capacity_tb\n",
"127 Seagate BarraCuda ST2000DM008 2\n",
"123 Seagate BarraCuda ST3000DM007 3\n",
"109 Seagate BarraCuda ST4000DM004 4\n",
"94 Seagate BarraCuda ST6000DM003 6\n",
"78 Seagate BarraCuda ST8000DM004 8\n",
"139 Toshiba L200 HDWL110 1\n",
"140 Toshiba MQ04 MQ04ABF100 1\n",
"113 Toshiba DT02 DT02ABA400 4\n",
"114 Toshiba P300 HDWD240 4\n",
"98 Toshiba DT02 DT02ABA600 6\n",
"99 Toshiba P300 HDWD260 6\n",
"134 WD Red WD20EFAX 2\n",
"136 WD Blue WD20EZAZ 2\n",
"125 WD Red WD30EFAX 3\n",
"119 WD Red WD40EFAX 4\n",
"122 WD Blue WD40EZAZ 4\n",
"105 WD Red WD60EFAX 6\n",
"108 WD Blue WD60EZAZ 6"
]
},
"execution_count": 3,
"metadata": {}, "metadata": {},
"outputs": [], "output_type": "execute_result"
}
],
"source": [ "source": [
"df[df['recording_tech'] == 'smr'][['brand', 'line', 'model', 'capacity_tb']].sort_values(['brand', 'capacity_tb'])" "df[df['recording_tech'] == 'smr'][['brand', 'line', 'model', 'capacity_tb']].sort_values(['brand', 'capacity_tb'])"
] ]
}, },
{ {
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "id": "91573258",
"metadata": {
"papermill": {
"duration": 0.002285,
"end_time": "2026-06-18T11:22:24.728917+00:00",
"exception": false,
"start_time": "2026-06-18T11:22:24.726632+00:00",
"status": "completed"
},
"tags": []
},
"source": [ "source": [
"## Most reliable drives (Backblaze annualized failure rate, lowest first)" "## Most reliable drives (Backblaze annualized failure rate, lowest first)"
] ]
}, },
{ {
"cell_type": "code", "cell_type": "code",
"execution_count": null, "execution_count": 4,
"id": "fdc66121",
"metadata": {
"execution": {
"iopub.execute_input": "2026-06-18T11:22:24.736915Z",
"iopub.status.busy": "2026-06-18T11:22:24.736485Z",
"iopub.status.idle": "2026-06-18T11:22:24.756400Z",
"shell.execute_reply": "2026-06-18T11:22:24.755324Z"
},
"papermill": {
"duration": 0.027505,
"end_time": "2026-06-18T11:22:24.758809+00:00",
"exception": false,
"start_time": "2026-06-18T11:22:24.731304+00:00",
"status": "completed"
},
"tags": []
},
"outputs": [
{
"data": {
"text/html": [
"<div>\n",
"<style scoped>\n",
" .dataframe tbody tr th:only-of-type {\n",
" vertical-align: middle;\n",
" }\n",
"\n",
" .dataframe tbody tr th {\n",
" vertical-align: top;\n",
" }\n",
"\n",
" .dataframe thead th {\n",
" text-align: right;\n",
" }\n",
"</style>\n",
"<table border=\"1\" class=\"dataframe\">\n",
" <thead>\n",
" <tr style=\"text-align: right;\">\n",
" <th></th>\n",
" <th>brand</th>\n",
" <th>line</th>\n",
" <th>model</th>\n",
" <th>capacity_tb</th>\n",
" <th>recording_tech</th>\n",
" <th>afr_pct</th>\n",
" <th>reliability_drive_count</th>\n",
" </tr>\n",
" </thead>\n",
" <tbody>\n",
" <tr>\n",
" <th>79</th>\n",
" <td>Seagate</td>\n",
" <td>Exos 7E8</td>\n",
" <td>ST8000NM000A</td>\n",
" <td>8</td>\n",
" <td>cmr</td>\n",
" <td>0.00</td>\n",
" <td>245.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>0</th>\n",
" <td>WD</td>\n",
" <td>Ultrastar DC HC590</td>\n",
" <td>WUH722626ALE6L4</td>\n",
" <td>26</td>\n",
" <td>cmr</td>\n",
" <td>0.40</td>\n",
" <td>1200.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>14</th>\n",
" <td>WD</td>\n",
" <td>Ultrastar DC HC570</td>\n",
" <td>WUH722222ALE6L4</td>\n",
" <td>22</td>\n",
" <td>cmr</td>\n",
" <td>0.47</td>\n",
" <td>44265.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>32</th>\n",
" <td>Seagate</td>\n",
" <td>Exos X16</td>\n",
" <td>ST16000NM001G</td>\n",
" <td>16</td>\n",
" <td>cmr</td>\n",
" <td>0.54</td>\n",
" <td>34305.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>18</th>\n",
" <td>Toshiba</td>\n",
" <td>MG10</td>\n",
" <td>MG10ACA20TE</td>\n",
" <td>20</td>\n",
" <td>cmr</td>\n",
" <td>0.59</td>\n",
" <td>17999.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>4</th>\n",
" <td>Toshiba</td>\n",
" <td>MG11</td>\n",
" <td>MG11ACA24TE</td>\n",
" <td>24</td>\n",
" <td>cmr</td>\n",
" <td>0.68</td>\n",
" <td>4739.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>42</th>\n",
" <td>WD</td>\n",
" <td>Ultrastar DC HC550</td>\n",
" <td>WUH721816ALE6Lx</td>\n",
" <td>16</td>\n",
" <td>cmr</td>\n",
" <td>0.80</td>\n",
" <td>29629.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>54</th>\n",
" <td>WD</td>\n",
" <td>Ultrastar DC HC530</td>\n",
" <td>WUH721414ALE6L4</td>\n",
" <td>14</td>\n",
" <td>cmr</td>\n",
" <td>0.81</td>\n",
" <td>8630.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>38</th>\n",
" <td>Toshiba</td>\n",
" <td>MG08</td>\n",
" <td>MG08ACA16Tx</td>\n",
" <td>16</td>\n",
" <td>cmr</td>\n",
" <td>0.96</td>\n",
" <td>45652.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>55</th>\n",
" <td>Seagate</td>\n",
" <td>Exos X16</td>\n",
" <td>ST12000NM001G</td>\n",
" <td>12</td>\n",
" <td>cmr</td>\n",
" <td>0.96</td>\n",
" <td>13147.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>43</th>\n",
" <td>Seagate</td>\n",
" <td>Exos X16</td>\n",
" <td>ST14000NM001G</td>\n",
" <td>14</td>\n",
" <td>cmr</td>\n",
" <td>1.35</td>\n",
" <td>10464.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>22</th>\n",
" <td>Seagate</td>\n",
" <td>Exos X18</td>\n",
" <td>ST18000NM000J</td>\n",
" <td>18</td>\n",
" <td>cmr</td>\n",
" <td>1.67</td>\n",
" <td>60.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>39</th>\n",
" <td>Toshiba</td>\n",
" <td>MG09</td>\n",
" <td>MG09ACA16TE</td>\n",
" <td>16</td>\n",
" <td>cmr</td>\n",
" <td>1.73</td>\n",
" <td>348.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>62</th>\n",
" <td>WD</td>\n",
" <td>Ultrastar DC HC520</td>\n",
" <td>HUH721212ALE604</td>\n",
" <td>12</td>\n",
" <td>cmr</td>\n",
" <td>2.69</td>\n",
" <td>13095.0</td>\n",
" </tr>\n",
" <tr>\n",
" <th>1</th>\n",
" <td>Seagate</td>\n",
" <td>Exos X24</td>\n",
" <td>ST24000NM002H</td>\n",
" <td>24</td>\n",
" <td>cmr</td>\n",
" <td>2.75</td>\n",
" <td>8328.0</td>\n",
" </tr>\n",
" </tbody>\n",
"</table>\n",
"</div>"
],
"text/plain": [
" brand line model capacity_tb recording_tech \\\n",
"79 Seagate Exos 7E8 ST8000NM000A 8 cmr \n",
"0 WD Ultrastar DC HC590 WUH722626ALE6L4 26 cmr \n",
"14 WD Ultrastar DC HC570 WUH722222ALE6L4 22 cmr \n",
"32 Seagate Exos X16 ST16000NM001G 16 cmr \n",
"18 Toshiba MG10 MG10ACA20TE 20 cmr \n",
"4 Toshiba MG11 MG11ACA24TE 24 cmr \n",
"42 WD Ultrastar DC HC550 WUH721816ALE6Lx 16 cmr \n",
"54 WD Ultrastar DC HC530 WUH721414ALE6L4 14 cmr \n",
"38 Toshiba MG08 MG08ACA16Tx 16 cmr \n",
"55 Seagate Exos X16 ST12000NM001G 12 cmr \n",
"43 Seagate Exos X16 ST14000NM001G 14 cmr \n",
"22 Seagate Exos X18 ST18000NM000J 18 cmr \n",
"39 Toshiba MG09 MG09ACA16TE 16 cmr \n",
"62 WD Ultrastar DC HC520 HUH721212ALE604 12 cmr \n",
"1 Seagate Exos X24 ST24000NM002H 24 cmr \n",
"\n",
" afr_pct reliability_drive_count \n",
"79 0.00 245.0 \n",
"0 0.40 1200.0 \n",
"14 0.47 44265.0 \n",
"32 0.54 34305.0 \n",
"18 0.59 17999.0 \n",
"4 0.68 4739.0 \n",
"42 0.80 29629.0 \n",
"54 0.81 8630.0 \n",
"38 0.96 45652.0 \n",
"55 0.96 13147.0 \n",
"43 1.35 10464.0 \n",
"22 1.67 60.0 \n",
"39 1.73 348.0 \n",
"62 2.69 13095.0 \n",
"1 2.75 8328.0 "
]
},
"execution_count": 4,
"metadata": {}, "metadata": {},
"outputs": [], "output_type": "execute_result"
}
],
"source": [ "source": [
"df[df['afr_pct'].notna()][['brand', 'line', 'model', 'capacity_tb', 'recording_tech', 'afr_pct', 'reliability_drive_count']].sort_values('afr_pct')" "df[df['afr_pct'].notna()][['brand', 'line', 'model', 'capacity_tb', 'recording_tech', 'afr_pct', 'reliability_drive_count']].sort_values('afr_pct')"
] ]
}, },
{ {
"cell_type": "markdown", "cell_type": "markdown",
"metadata": {}, "id": "5d1cd51f",
"metadata": {
"papermill": {
"duration": 0.002634,
"end_time": "2026-06-18T11:22:24.764055+00:00",
"exception": false,
"start_time": "2026-06-18T11:22:24.761421+00:00",
"status": "completed"
},
"tags": []
},
"source": [ "source": [
"## Data & API\n", "## Data & API\n",
"\n", "\n",
@ -85,16 +806,45 @@
} }
], ],
"metadata": { "metadata": {
"kaggle": {
"accelerator": "none",
"dataSources": [],
"dockerImageVersionId": 28755,
"isGpuEnabled": false,
"isInternetEnabled": false,
"language": "python",
"sourceType": "notebook"
},
"kernelspec": { "kernelspec": {
"display_name": "Python 3", "display_name": "Python 3",
"language": "python", "language": "python",
"name": "python3" "name": "python3"
}, },
"language_info": { "language_info": {
"codemirror_mode": {
"name": "ipython",
"version": 3
},
"file_extension": ".py",
"mimetype": "text/x-python",
"name": "python", "name": "python",
"version": "3.12.0" "nbconvert_exporter": "python",
"pygments_lexer": "ipython3",
"version": "3.12.13"
},
"papermill": {
"default_parameters": {},
"duration": 5.557784,
"end_time": "2026-06-18T11:22:25.388506+00:00",
"environment_variables": {},
"exception": null,
"input_path": "__notebook__.ipynb",
"output_path": "__notebook__.ipynb",
"parameters": {},
"start_time": "2026-06-18T11:22:19.830722+00:00",
"version": "2.7.0"
} }
}, },
"nbformat": 4, "nbformat": 4,
"nbformat_minor": 4 "nbformat_minor": 5
} }