add: getting started notebook

This commit is contained in:
deeddy 2026-06-18 13:28:40 +02:00
parent 73f4a7829e
commit 70c56b005e

100
getting-started.ipynb Normal file
View file

@ -0,0 +1,100 @@
{
"cells": [
{
"cell_type": "markdown",
"metadata": {},
"source": [
"# NAS Drives: CMR/SMR, Failure Rates & Specs\n",
"\n",
"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."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"import pandas as pd\n",
"\n",
"df = pd.read_csv('/kaggle/input/datasets/nettrust/nas-drives-cmrsmr-failure-rates-and-specs-2026/drives-2026-06-17.csv')\n",
"print(f\"{len(df)} drives | {df['brand'].nunique()} brands | {df['line'].nunique()} product lines\")\n",
"df.head()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## CMR vs SMR breakdown\n",
"\n",
"SMR drives use shingled recording to pack more capacity - but they stall under sustained writes of a RAID rebuild, which can drop them from the array mid-rebuild."
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"df['recording_tech'].value_counts()"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## SMR drives to avoid in a NAS/RAID array"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"df[df['recording_tech'] == 'smr'][['brand', 'line', 'model', 'capacity_tb']].sort_values(['brand', 'capacity_tb'])"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Most reliable drives (Backblaze annualized failure rate, lowest first)"
]
},
{
"cell_type": "code",
"execution_count": null,
"metadata": {},
"outputs": [],
"source": [
"df[df['afr_pct'].notna()][['brand', 'line', 'model', 'capacity_tb', 'recording_tech', 'afr_pct', 'reliability_drive_count']].sort_values('afr_pct')"
]
},
{
"cell_type": "markdown",
"metadata": {},
"source": [
"## Data & API\n",
"\n",
"Full dataset, always up to date: [nasdisks.com/data/](https://www.nasdisks.com/data/)\n",
"\n",
"License: CC BY 4.0 for specs and CMR/SMR. Failure rates derived from [Backblaze Drive Stats](https://www.backblaze.com/cloud-storage/resources/hard-drive-test-data) - credit Backblaze when using."
]
}
],
"metadata": {
"kernelspec": {
"display_name": "Python 3",
"language": "python",
"name": "python3"
},
"language_info": {
"name": "python",
"version": "3.12.0"
}
},
"nbformat": 4,
"nbformat_minor": 4
}