{"id":9427,"date":"2026-08-10T13:37:19","date_gmt":"2026-08-10T11:37:19","guid":{"rendered":"https:\/\/www.lukaswojcik.com\/blog\/werkzeuge\/backup-retention-transfer-window-planner\/"},"modified":"2026-08-10T13:45:11","modified_gmt":"2026-08-10T11:45:11","slug":"backup-retention-transfer-window-planner","status":"publish","type":"page","link":"https:\/\/www.lukaswojcik.com\/blog\/de\/werkzeuge\/backup-retention-transfer-window-planner\/","title":{"rendered":"Planer f\u00fcr Backup-Aufbewahrung und \u00dcbertragungsfenster"},"content":{"rendered":"<div class=\"gtm-analyser-container\" style=\"background: var(--bg-panel, #1e1e24); padding: 25px; border-radius: 8px; border: 1px solid var(--border, #2a2a35);\">\n<p style=\"color: var(--text-secondary, #9aa0aa); margin-bottom: 20px;\">Ein GFS-Backup-Schema auslegen: wie viel Zielspeicher die aufbewahrten Kopien belegen und wie lange das erste Vollbackup, ein t\u00e4glicher Lauf und eine komplette Wiederherstellung \u00fcber den Uplink dauern.<\/p>\n<div style=\"display: flex; gap: 15px; flex-wrap: wrap; margin-bottom: 15px;\">\n<div style=\"flex: 1; min-width: 180px;\">\n            <label for=\"bk-daten\" style=\"color: var(--text-secondary, #9aa0aa); display: block; font-size: 0.85rem; margin-bottom: 5px;\">Datenvolumen (GB)<\/label><br \/>\n            <input type=\"text\" id=\"bk-daten\" value=\"500\" class=\"form-control\" style=\"width: 100%; padding: 12px; background: var(--bg-body, #14141a); border: 1px solid var(--border, #2a2a35); color: var(--text-primary, #f0f0f5); border-radius: 6px; font-family: monospace;\">\n        <\/div>\n<div style=\"flex: 1; min-width: 180px;\">\n            <label for=\"bk-rate\" style=\"color: var(--text-secondary, #9aa0aa); display: block; font-size: 0.85rem; margin-bottom: 5px;\">T\u00e4gliche \u00c4nderungsrate (%)<\/label><br \/>\n            <input type=\"text\" id=\"bk-rate\" value=\"3\" class=\"form-control\" style=\"width: 100%; padding: 12px; background: var(--bg-body, #14141a); border: 1px solid var(--border, #2a2a35); color: var(--text-primary, #f0f0f5); border-radius: 6px; font-family: monospace;\">\n        <\/div>\n<div style=\"flex: 1; min-width: 180px;\">\n            <label for=\"bk-komp\" style=\"color: var(--text-secondary, #9aa0aa); display: block; font-size: 0.85rem; margin-bottom: 5px;\">Faktor f\u00fcr Komprimierung und Deduplizierung<\/label><br \/>\n            <input type=\"text\" id=\"bk-komp\" value=\"1.5\" class=\"form-control\" style=\"width: 100%; padding: 12px; background: var(--bg-body, #14141a); border: 1px solid var(--border, #2a2a35); color: var(--text-primary, #f0f0f5); border-radius: 6px; font-family: monospace;\">\n        <\/div>\n<\/p><\/div>\n<div style=\"display: flex; gap: 15px; flex-wrap: wrap; margin-bottom: 15px;\">\n<div style=\"flex: 1; min-width: 120px;\">\n            <label for=\"bk-tage\" style=\"color: var(--text-secondary, #9aa0aa); display: block; font-size: 0.85rem; margin-bottom: 5px;\">T\u00e4gliche Kopien<\/label><br \/>\n            <input type=\"text\" id=\"bk-tage\" value=\"7\" class=\"form-control\" style=\"width: 100%; padding: 12px; background: var(--bg-body, #14141a); border: 1px solid var(--border, #2a2a35); color: var(--text-primary, #f0f0f5); border-radius: 6px; font-family: monospace;\">\n        <\/div>\n<div style=\"flex: 1; min-width: 120px;\">\n            <label for=\"bk-wochen\" style=\"color: var(--text-secondary, #9aa0aa); display: block; font-size: 0.85rem; margin-bottom: 5px;\">W\u00f6chentliche Kopien<\/label><br \/>\n            <input type=\"text\" id=\"bk-wochen\" value=\"4\" class=\"form-control\" style=\"width: 100%; padding: 12px; background: var(--bg-body, #14141a); border: 1px solid var(--border, #2a2a35); color: var(--text-primary, #f0f0f5); border-radius: 6px; font-family: monospace;\">\n        <\/div>\n<div style=\"flex: 1; min-width: 120px;\">\n            <label for=\"bk-monate\" style=\"color: var(--text-secondary, #9aa0aa); display: block; font-size: 0.85rem; margin-bottom: 5px;\">Monatliche Kopien<\/label><br \/>\n            <input type=\"text\" id=\"bk-monate\" value=\"12\" class=\"form-control\" style=\"width: 100%; padding: 12px; background: var(--bg-body, #14141a); border: 1px solid var(--border, #2a2a35); color: var(--text-primary, #f0f0f5); border-radius: 6px; font-family: monospace;\">\n        <\/div>\n<\/p><\/div>\n<div style=\"display: flex; gap: 15px; align-items: flex-end; flex-wrap: wrap; margin-bottom: 20px;\">\n<div style=\"flex: 1; min-width: 160px;\">\n            <label for=\"bk-uplink\" style=\"color: var(--text-secondary, #9aa0aa); display: block; font-size: 0.85rem; margin-bottom: 5px;\">Uplink (Mbit\/s)<\/label><br \/>\n            <input type=\"text\" id=\"bk-uplink\" value=\"100\" class=\"form-control\" style=\"width: 100%; padding: 12px; background: var(--bg-body, #14141a); border: 1px solid var(--border, #2a2a35); color: var(--text-primary, #f0f0f5); border-radius: 6px; font-family: monospace;\">\n        <\/div>\n<div style=\"flex: 1; min-width: 160px;\">\n            <label for=\"bk-fenster\" style=\"color: var(--text-secondary, #9aa0aa); display: block; font-size: 0.85rem; margin-bottom: 5px;\">Backup-Fenster (Stunden)<\/label><br \/>\n            <input type=\"text\" id=\"bk-fenster\" value=\"6\" class=\"form-control\" style=\"width: 100%; padding: 12px; background: var(--bg-body, #14141a); border: 1px solid var(--border, #2a2a35); color: var(--text-primary, #f0f0f5); border-radius: 6px; font-family: monospace;\">\n        <\/div>\n<div style=\"flex: 1; min-width: 200px;\">\n            <label for=\"bk-modus\" style=\"color: var(--text-secondary, #9aa0aa); display: block; font-size: 0.85rem; margin-bottom: 5px;\">Backup-Modus<\/label><br \/>\n            <select id=\"bk-modus\" class=\"form-control\" style=\"width: 100%; padding: 12px; background: var(--bg-body, #14141a); border: 1px solid var(--border, #2a2a35); color: var(--text-primary, #f0f0f5); border-radius: 6px; font-family: monospace;\"><option value=\"forever\">Incremental forever<\/option><option value=\"weekly\">W\u00f6chentliches Vollbackup<\/option><\/select>\n        <\/div>\n<p>        <button id=\"bk-btn\" class=\"button\" style=\"background: var(--accent, #4ce0b3); color: #0b1114; border: none; padding: 12px 24px; border-radius: 6px; font-weight: 700; cursor: pointer;\">Berechnen<\/button>\n    <\/div>\n<div id=\"bk-ergebnis\"><\/div>\n<\/div>\n<p><script>\n(function () {\n    \/\/ --- reine Rechenlogik, ohne jeden DOM-Zugriff ---<\/p>\n<p>    const MBIT_PRO_GB = 8192;<\/p>\n<p>    function parseZahl(text) {\n        if (typeof text !== 'string') { return NaN; }\n        const bereinigt = text.replace(\/\\s\/g, '').replace(',', '.');\n        if (bereinigt === '') { return NaN; }\n        const wert = Number(bereinigt);\n        if (typeof wert !== 'number' || !isFinite(wert)) { return NaN; }\n        return wert;\n    }<\/p>\n<p>    function istGanzzahl(wert) {\n        return isFinite(wert) && wert >= 0 && Math.round(wert) === wert;\n    }<\/p>\n<p>    function sekundenFuer(gb, uplinkMbit) {\n        return gb * MBIT_PRO_GB \/ uplinkMbit;\n    }<\/p>\n<p>    function formatGB(gb) {\n        if (!isFinite(gb)) { return '0.0 GB'; }\n        if (gb >= 10000) { return (gb \/ 1024).toFixed(2) + ' TB'; }\n        return gb.toFixed(1) + ' GB';\n    }<\/p>\n<p>    function formatDauer(sekunden) {\n        if (!isFinite(sekunden) || sekunden < 0) { return '0 s'; }\n        if (sekunden < 60) { return Math.max(1, Math.round(sekunden)) + ' s'; }\n        if (sekunden < 3600) { return (sekunden \/ 60).toFixed(1) + ' min'; }\n        return (sekunden \/ 3600).toFixed(1) + ' h';\n    }\n\n    function berechne(cfg) {\n        const daten = cfg.datenGB;\n        const rate = cfg.ratePct;\n        const komp = cfg.komp;\n        const tage = cfg.tage;\n        const wochen = cfg.wochen;\n        const monate = cfg.monate;\n        const uplink = cfg.uplinkMbit;\n        const fensterH = cfg.fensterStunden;\n        const modus = cfg.modus === 'weekly' ? 'weekly' : 'forever';\n\n        if (!isFinite(daten) || daten <= 0) { return { ok: false, fehler: 'Ein Datenvolumen gr\u00f6\u00dfer als 0 GB ist erforderlich.' }; }\n        if (!isFinite(rate) || rate < 0 || rate > 100) { return { ok: false, fehler: 'Die t\u00e4gliche \u00c4nderungsrate muss eine Zahl zwischen 0 und 100 Prozent sein.' }; }\n        if (!isFinite(komp) || komp < 1) { return { ok: false, fehler: 'Der Faktor f\u00fcr Komprimierung und Deduplizierung muss 1,0 oder h\u00f6her sein.' }; }\n        if (!istGanzzahl(tage) || !istGanzzahl(wochen) || !istGanzzahl(monate) || (tage + wochen + monate) < 1) {\n            return { ok: false, fehler: 'Die Aufbewahrungszahlen m\u00fcssen ganze Zahlen ab 0 sein, und mindestens eine Kopie muss aufbewahrt werden.' };\n        }\n        if (!isFinite(uplink) || uplink <= 0) { return { ok: false, fehler: 'Ein Uplink gr\u00f6\u00dfer als 0 Mbit\/s ist erforderlich.' }; }\n        if (!isFinite(fensterH) || fensterH <= 0) { return { ok: false, fehler: 'Ein Backup-Fenster gr\u00f6\u00dfer als 0 Stunden ist erforderlich.' }; }\n\n        const vollGB = daten \/ komp;\n        const inkGB = daten * (rate \/ 100) \/ komp;\n\n        let vollAnzahl;\n        let inkAnzahl;\n        let stufeTage;\n        let stufeWochen;\n        let stufeMonate;\n        let basisVollGB;\n        let ketteInk;\n\n        if (modus === 'weekly') {\n            const vollTage = Math.ceil(tage \/ 7);\n            const inkTage = tage - vollTage;\n            stufeTage = vollTage * vollGB + inkTage * inkGB;\n            stufeWochen = wochen * vollGB;\n            stufeMonate = monate * vollGB;\n            vollAnzahl = vollTage + wochen + monate;\n            inkAnzahl = inkTage;\n            basisVollGB = 0;\n            ketteInk = Math.min(inkTage, 6);\n        } else {\n            stufeTage = tage * inkGB;\n            stufeWochen = wochen * inkGB;\n            stufeMonate = monate * inkGB;\n            vollAnzahl = 1;\n            inkAnzahl = tage + wochen + monate;\n            basisVollGB = vollGB;\n            ketteInk = inkAnzahl;\n        }\n\n        const gesamtGB = vollAnzahl * vollGB + inkAnzahl * inkGB;\n\n        const erstVollSek = sekundenFuer(vollGB, uplink);\n        const taeglichSek = sekundenFuer(inkGB, uplink);\n        const wochenVollSek = modus === 'weekly' ? erstVollSek : 0;\n        const restoreGB = vollGB + ketteInk * inkGB;\n        const restoreSek = sekundenFuer(restoreGB, uplink);\n        const fensterSek = fensterH * 3600;\n\n        return {\n            ok: true,\n            modus: modus,\n            vollGB: vollGB,\n            inkGB: inkGB,\n            vollAnzahl: vollAnzahl,\n            inkAnzahl: inkAnzahl,\n            vollSummeGB: vollAnzahl * vollGB,\n            inkSummeGB: inkAnzahl * inkGB,\n            stufeTage: stufeTage,\n            stufeWochen: stufeWochen,\n            stufeMonate: stufeMonate,\n            basisVollGB: basisVollGB,\n            gesamtGB: gesamtGB,\n            tage: tage,\n            wochen: wochen,\n            monate: monate,\n            erstVollSek: erstVollSek,\n            taeglichSek: taeglichSek,\n            wochenVollSek: wochenVollSek,\n            restoreGB: restoreGB,\n            restoreSek: restoreSek,\n            ketteInk: ketteInk,\n            fensterSek: fensterSek,\n            warnTaeglich: taeglichSek > fensterSek,\n            warnWochenVoll: modus === 'weekly' && wochenVollSek > fensterSek,\n            warnErstVoll: erstVollSek > 86400\n        };\n    }<\/p>\n<p>    function formatiere(erg) {\n        if (!erg || !erg.ok) {\n            const meldung = erg && erg.fehler ? erg.fehler : 'Ein Datenvolumen gr\u00f6\u00dfer als 0 GB ist erforderlich.';\n            return '<\/p>\n<div style=\"background: var(--bg-body, #14141a); border: 1px solid var(--border, #2a2a35); border-left: 3px solid var(--accent, #4ce0b3); border-radius: 6px; padding: 15px; color: var(--text-primary, #f0f0f5);\">' + meldung + '<\/div>\n<p>';\n        }<\/p>\n<p>        function zeile(label, wert) {\n            return '<\/p>\n<div style=\"display: flex; justify-content: space-between; gap: 15px; padding: 7px 0; border-bottom: 1px solid var(--border, #2a2a35);\">' +\n                '<span style=\"color: var(--text-secondary, #9aa0aa);\">' + label + '<\/span>' +\n                '<span style=\"color: var(--text-primary, #f0f0f5); font-family: monospace; text-align: right;\">' + wert + '<\/span>' +\n                '<\/div>\n<p>';\n        }<\/p>\n<p>        function summenzeile(label, wert) {\n            return '<\/p>\n<div style=\"display: flex; justify-content: space-between; gap: 15px; padding: 12px 0 2px;\">' +\n                '<span style=\"color: var(--text-primary, #f0f0f5); font-weight: 700;\">' + label + '<\/span>' +\n                '<span style=\"color: var(--accent, #4ce0b3); font-family: monospace; font-weight: 700; text-align: right;\">' + wert + '<\/span>' +\n                '<\/div>\n<p>';\n        }<\/p>\n<p>        function block(titel, inhalt) {\n            return '<\/p>\n<div style=\"background: var(--bg-body, #14141a); border: 1px solid var(--border, #2a2a35); border-radius: 6px; padding: 18px; margin-bottom: 15px;\">' +\n                '<\/p>\n<div style=\"color: var(--text-primary, #f0f0f5); font-weight: 700; margin-bottom: 10px;\">' + titel + '<\/div>\n<p>' +\n                inhalt + '<\/p><\/div>\n<p>';\n        }<\/p>\n<p>        let speicher = '';\n        speicher += zeile('Tagesstufe (' + erg.tage + ')', formatGB(erg.stufeTage));\n        speicher += zeile('Wochenstufe (' + erg.wochen + ')', formatGB(erg.stufeWochen));\n        speicher += zeile('Monatsstufe (' + erg.monate + ')', formatGB(erg.stufeMonate));\n        if (erg.basisVollGB > 0) {\n            speicher += zeile('Basis-Vollkopie', formatGB(erg.basisVollGB));\n        }\n        speicher += zeile('Vollkopien (' + erg.vollAnzahl + ' x ' + formatGB(erg.vollGB) + ')', formatGB(erg.vollSummeGB));\n        speicher += zeile('Inkrementelle Kopien (' + erg.inkAnzahl + ' x ' + formatGB(erg.inkGB) + ')', formatGB(erg.inkSummeGB));\n        speicher += summenzeile('Gesamter Zielspeicher', formatGB(erg.gesamtGB));<\/p>\n<p>        let zeiten = '';\n        zeiten += zeile('Erstes Vollbackup', formatDauer(erg.erstVollSek));\n        zeiten += zeile('T\u00e4glicher inkrementeller Lauf', formatDauer(erg.taeglichSek));\n        if (erg.modus === 'weekly') {\n            zeiten += zeile('W\u00f6chentlicher Volllauf', formatDauer(erg.wochenVollSek));\n        }\n        zeiten += zeile('Vollst\u00e4ndige Wiederherstellung der neuesten Kopie (' + formatGB(erg.restoreGB) + ')', formatDauer(erg.restoreSek));\n        zeiten += zeile('Wiederherstellungskette, voll plus inkrementell', '1 + ' + erg.ketteInk);<\/p>\n<p>        let hinweise = '';\n        if (erg.warnTaeglich) {\n            hinweise += '<\/p>\n<div style=\"color: var(--text-primary, #f0f0f5); padding: 4px 0;\">Der t\u00e4gliche Lauf passt nicht in das Backup-Fenster. (' + formatDauer(erg.taeglichSek) + ' &gt; ' + formatDauer(erg.fensterSek) + ')<\/div>\n<p>';\n        }\n        if (erg.warnWochenVoll) {\n            hinweise += '<\/p>\n<div style=\"color: var(--text-primary, #f0f0f5); padding: 4px 0;\">Der w\u00f6chentliche Volllauf passt nicht in das Backup-Fenster. (' + formatDauer(erg.wochenVollSek) + ' &gt; ' + formatDauer(erg.fensterSek) + ')<\/div>\n<p>';\n        }\n        if (erg.warnErstVoll) {\n            hinweise += '<\/p>\n<div style=\"color: var(--text-primary, #f0f0f5); padding: 4px 0;\">Das erste Vollbackup braucht mehr als 24 Stunden. (' + formatDauer(erg.erstVollSek) + ')<\/div>\n<p>';\n        }\n        if (hinweise === '') {\n            hinweise = '<\/p>\n<div style=\"color: var(--text-primary, #f0f0f5); padding: 4px 0;\">Jeder Lauf passt in das Backup-Fenster. (' + formatDauer(erg.fensterSek) + ')<\/div>\n<p>';\n        }<\/p>\n<p>        return block('Zielspeicher', speicher) +\n            block('\u00dcbertragungszeiten', zeiten) +\n            '<\/p>\n<div style=\"background: var(--bg-body, #14141a); border: 1px solid var(--border, #2a2a35); border-left: 3px solid var(--accent, #4ce0b3); border-radius: 6px; padding: 15px; margin-bottom: 15px;\">' + hinweise + '<\/div>\n<p>' +\n            '<\/p>\n<p style=\"color: var(--text-secondary, #9aa0aa); font-size: 0.85rem; margin: 0;\">Die \u00dcbertragungszeiten unterstellen, dass das komprimierte Volumen mit voller Uplink-Rate flie\u00dft, ohne Protokoll-Overhead und ohne Drosselung.<\/p>\n<p>';\n    }<\/p>\n<p>    \/\/ fuer die Pruefung von aussen erreichbar\n    if (typeof window !== 'undefined') {\n        window.LW_TEST = window.LW_TEST || {};\n        window.LW_TEST.BK = {\n            berechne: berechne,\n            formatiere: formatiere,\n            parseZahl: parseZahl,\n            formatGB: formatGB,\n            formatDauer: formatDauer,\n            sekundenFuer: sekundenFuer\n        };\n    }<\/p>\n<p>    \/\/ --- DOM-Anbindung, sauber abgesichert ---\n    const btn = document.getElementById('bk-btn');\n    const out = document.getElementById('bk-ergebnis');\n    if (!btn || !out) { return; }<\/p>\n<p>    function lies(id) {\n        const feld = document.getElementById(id);\n        if (!feld) { return NaN; }\n        return parseZahl(feld.value);\n    }<\/p>\n<p>    function lauf() {\n        const modusFeld = document.getElementById('bk-modus');\n        const cfg = {\n            datenGB: lies('bk-daten'),\n            ratePct: lies('bk-rate'),\n            komp: lies('bk-komp'),\n            tage: lies('bk-tage'),\n            wochen: lies('bk-wochen'),\n            monate: lies('bk-monate'),\n            uplinkMbit: lies('bk-uplink'),\n            fensterStunden: lies('bk-fenster'),\n            modus: modusFeld ? modusFeld.value : 'forever'\n        };\n        out.innerHTML = formatiere(berechne(cfg));\n    }<\/p>\n<p>    btn.addEventListener('click', function () { lauf(); });\n    lauf();\n})();\n<\/script><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Ein GFS-Backup-Schema auslegen: wie viel Zielspeicher die aufbewahrten Kopien belegen und wie lange das erste Vollbackup, ein t\u00e4glicher Lauf und eine komplette Wiederherstellung \u00fcber den Uplink dauern. Datenvolumen (GB) T\u00e4gliche \u00c4nderungsrate (%) Faktor f\u00fcr Komprimierung und Deduplizierung T\u00e4gliche Kopien W\u00f6chentliche Kopien Monatliche Kopien Uplink (Mbit\/s) Backup-Fenster (Stunden) Backup-Modus Incremental foreverW\u00f6chentliches Vollbackup Berechnen<\/p>\n","protected":false},"author":1,"featured_media":0,"parent":9283,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"template-tool-base.php","meta":{"footnotes":""},"class_list":["post-9427","page","type-page","status-publish","hentry"],"yoast_head":"<!-- This site is optimized with the Yoast SEO plugin v28.1 - https:\/\/yoast.com\/product\/yoast-seo-wordpress\/ -->\n<title>Planer f\u00fcr Backup-Aufbewahrung und \u00dcbertragungsfenster - Lukas Wojcik - Blog<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/www.lukaswojcik.com\/blog\/de\/werkzeuge\/backup-retention-transfer-window-planner\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Planer f\u00fcr Backup-Aufbewahrung und \u00dcbertragungsfenster - Lukas Wojcik - Blog\" \/>\n<meta property=\"og:description\" content=\"Ein GFS-Backup-Schema auslegen: wie viel Zielspeicher die aufbewahrten Kopien belegen und wie lange das erste Vollbackup, ein t\u00e4glicher Lauf und eine komplette Wiederherstellung \u00fcber den Uplink dauern. Datenvolumen (GB) T\u00e4gliche \u00c4nderungsrate (%) Faktor f\u00fcr Komprimierung und Deduplizierung T\u00e4gliche Kopien W\u00f6chentliche Kopien Monatliche Kopien Uplink (Mbit\/s) Backup-Fenster (Stunden) Backup-Modus Incremental foreverW\u00f6chentliches Vollbackup Berechnen\" \/>\n<meta property=\"og:url\" content=\"https:\/\/www.lukaswojcik.com\/blog\/de\/werkzeuge\/backup-retention-transfer-window-planner\/\" \/>\n<meta property=\"og:site_name\" content=\"Lukas Wojcik - Blog\" \/>\n<meta property=\"article:modified_time\" content=\"2026-08-10T11:45:11+00:00\" \/>\n<meta property=\"og:image\" content=\"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/08\/og-default.jpg\" \/>\n\t<meta property=\"og:image:width\" content=\"1200\" \/>\n\t<meta property=\"og:image:height\" content=\"630\" \/>\n\t<meta property=\"og:image:type\" content=\"image\/jpeg\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\\\/\\\/schema.org\",\"@graph\":[{\"@type\":\"WebPage\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/werkzeuge\\\/backup-retention-transfer-window-planner\\\/\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/werkzeuge\\\/backup-retention-transfer-window-planner\\\/\",\"name\":\"Planer f\u00fcr Backup-Aufbewahrung und \u00dcbertragungsfenster - Lukas Wojcik - Blog\",\"isPartOf\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#website\"},\"datePublished\":\"2026-08-10T11:37:19+00:00\",\"dateModified\":\"2026-08-10T11:45:11+00:00\",\"breadcrumb\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/werkzeuge\\\/backup-retention-transfer-window-planner\\\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/werkzeuge\\\/backup-retention-transfer-window-planner\\\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/de\\\/werkzeuge\\\/backup-retention-transfer-window-planner\\\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Home\",\"item\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Toolbox\",\"item\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/toolbox-2\\\/\"},{\"@type\":\"ListItem\",\"position\":3,\"name\":\"Planer f\u00fcr Backup-Aufbewahrung und \u00dcbertragungsfenster\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#website\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/\",\"name\":\"Lukas Wojcik - Blog\",\"description\":\"\",\"publisher\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\"},\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":[\"Person\",\"Organization\"],\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/#\\\/schema\\\/person\\\/895f7604f9b6b71aad9bba33af28d0f9\",\"name\":\"luky\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\",\"url\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\",\"contentUrl\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\",\"width\":424,\"height\":636,\"caption\":\"luky\"},\"logo\":{\"@id\":\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\\\/wp-content\\\/uploads\\\/2026\\\/07\\\/lw-x2.jpg\"},\"sameAs\":[\"https:\\\/\\\/www.lukaswojcik.com\\\/blog\"]}]}<\/script>\n<!-- \/ Yoast SEO plugin. -->","yoast_head_json":{"title":"Planer f\u00fcr Backup-Aufbewahrung und \u00dcbertragungsfenster - Lukas Wojcik - Blog","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/www.lukaswojcik.com\/blog\/de\/werkzeuge\/backup-retention-transfer-window-planner\/","og_locale":"en_US","og_type":"article","og_title":"Planer f\u00fcr Backup-Aufbewahrung und \u00dcbertragungsfenster - Lukas Wojcik - Blog","og_description":"Ein GFS-Backup-Schema auslegen: wie viel Zielspeicher die aufbewahrten Kopien belegen und wie lange das erste Vollbackup, ein t\u00e4glicher Lauf und eine komplette Wiederherstellung \u00fcber den Uplink dauern. Datenvolumen (GB) T\u00e4gliche \u00c4nderungsrate (%) Faktor f\u00fcr Komprimierung und Deduplizierung T\u00e4gliche Kopien W\u00f6chentliche Kopien Monatliche Kopien Uplink (Mbit\/s) Backup-Fenster (Stunden) Backup-Modus Incremental foreverW\u00f6chentliches Vollbackup Berechnen","og_url":"https:\/\/www.lukaswojcik.com\/blog\/de\/werkzeuge\/backup-retention-transfer-window-planner\/","og_site_name":"Lukas Wojcik - Blog","article_modified_time":"2026-08-10T11:45:11+00:00","og_image":[{"width":1200,"height":630,"url":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/08\/og-default.jpg","type":"image\/jpeg"}],"twitter_card":"summary_large_image","schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"WebPage","@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/werkzeuge\/backup-retention-transfer-window-planner\/","url":"https:\/\/www.lukaswojcik.com\/blog\/de\/werkzeuge\/backup-retention-transfer-window-planner\/","name":"Planer f\u00fcr Backup-Aufbewahrung und \u00dcbertragungsfenster - Lukas Wojcik - Blog","isPartOf":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/#website"},"datePublished":"2026-08-10T11:37:19+00:00","dateModified":"2026-08-10T11:45:11+00:00","breadcrumb":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/werkzeuge\/backup-retention-transfer-window-planner\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/www.lukaswojcik.com\/blog\/de\/werkzeuge\/backup-retention-transfer-window-planner\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/www.lukaswojcik.com\/blog\/de\/werkzeuge\/backup-retention-transfer-window-planner\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Home","item":"https:\/\/www.lukaswojcik.com\/blog\/"},{"@type":"ListItem","position":2,"name":"Toolbox","item":"https:\/\/www.lukaswojcik.com\/blog\/toolbox-2\/"},{"@type":"ListItem","position":3,"name":"Planer f\u00fcr Backup-Aufbewahrung und \u00dcbertragungsfenster"}]},{"@type":"WebSite","@id":"https:\/\/www.lukaswojcik.com\/blog\/#website","url":"https:\/\/www.lukaswojcik.com\/blog\/","name":"Lukas Wojcik - Blog","description":"","publisher":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9"},"potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/www.lukaswojcik.com\/blog\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":["Person","Organization"],"@id":"https:\/\/www.lukaswojcik.com\/blog\/#\/schema\/person\/895f7604f9b6b71aad9bba33af28d0f9","name":"luky","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg","url":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg","contentUrl":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg","width":424,"height":636,"caption":"luky"},"logo":{"@id":"https:\/\/www.lukaswojcik.com\/blog\/wp-content\/uploads\/2026\/07\/lw-x2.jpg"},"sameAs":["https:\/\/www.lukaswojcik.com\/blog"]}]}},"_links":{"self":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/pages\/9427","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/types\/page"}],"author":[{"embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/comments?post=9427"}],"version-history":[{"count":1,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/pages\/9427\/revisions"}],"predecessor-version":[{"id":9445,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/pages\/9427\/revisions\/9445"}],"up":[{"embeddable":true,"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/pages\/9283"}],"wp:attachment":[{"href":"https:\/\/www.lukaswojcik.com\/blog\/wp-json\/wp\/v2\/media?parent=9427"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}