Grundlagen: Der OneNote-Cache und Offline-Notizen

Warum kann man  OneNote Notizbücher, die in der Cloud liegen, auch ohne Internet-Verbindung bearbeiten? Gibt es also doch lokale Notizbücher in allen Versionen? Ja und Nein. Dieser Artikel erklärt den OneNote-Cache.

Obwohl die meisten Nutzer wissen, dass man mit OneNote Notizen auch irgendwie ohne aktive Internetverbindung lesen und bearbeiten kann, gibt es hier auch eine Menge Missverständnisse. Darum möchte ich an dieser Stelle vereinfacht erklären, wie OneNote (auf allen Plattformen und in allen Versionen) mit Notizbuchdateien umgeht und was es mit dem Cache auf sich hat.

OneNote behandelt Dateien nämlich völlig anders, als Sie das zum Beispiel von Word, Excel oder anderen Windows-Programmen kennen, was auch die Erklärung für einige Eigenheiten ist. Wenn Ihnen das Folgende zu ausführlich ist, springen Sie einfach nach unten zum Abschnitt „Zusammenfassung“.

Auch OneNote lädt Dateien – aber nur ganz kurz

Kernpunkt vieler Missverständnisse ist die falsche Annahme, dass OneNote genau wie andere Programme eine Datendatei (in diesem Fall also ein Notizbuch) von der Platte oder Cloud in den Arbeitsspeicher lädt, dort bearbeiten lässt und mit den Änderungen wieder zurückspeichert. Dem ist aber nicht so. Vielmehr passiert folgendes:

Zunächst lädt OneNote zwar tatsächlich die eigentlichen Notizdaten vom Datenträger oder aus der Cloud (auf deren genaues Format gehe ich in diesem Artikel nicht ein, das ist für die Sache mit dem Cache nicht relevant). Das passiert immer dann, wenn Sie ein Notizbuch öffnen, dass zuvor eben nicht geöffnet und somit auch nicht in der Notizbuch-Navigationsliste war.

Diese Daten konvertiert OneNote aber sofort in ein eigenes, sehr spezielles Format. Dabei werden – vereinfacht ausgedrückt – alle in den Notizen enthaltenen Objekte (z.B. Bilder, Dateien, Textabsätze) in einzelne Dateien bzw. Datensätze in einem zumeist versteckten Ort auf dem lokalen Datenspeicher (z.B. der PC-Festplatte oder dem internen Smartphone- oder Tablet-Flash-Speicher) abgelegt. Diese stark fragmentierte Kopie der Daten ist der Notizbuch-Cache. Er ersetzt auch im Arbeitsspeicher die zuvor geladenen Notizbuchdateien. Die ruhen nun wieder ungenutzt an ihrem ursprünglichen Speicherort, also zum Beispiel auf OneDrive.

Nur in OneNote für Windows (nicht die Windows-10-App) lässt sich über die Optionen der Ordner für die Cache-Dateien bestimmen und auch direkt darauf zugreifen…

 

…das bringt aber nicht viel, da Sie mit den vielen kleinen binären Dateien direkt nichts anfangen können; auch als Backup taugen sie nicht.

Beim Bearbeiten des Notizbuchs sehen Sie also nur die kopierte, lokale Cache-Version. Auch alle Änderungen werden von OneNote nur in dieser Cache-Kopie vorgenommen, nicht an den originalen Dateien. Hierbei spielt es zunächst überhaupt keine Rolle, ob eine Internet-Verbindung besteht oder nicht.

Um nun die eigentlichen, „richtigen“ Notizbuchdateien auf den neuesten Stand zu bringen, gleicht ein OneNote-interner Synchronisationsmechanismus die Änderungen aus den Cache-Dateien mit den tatsächlichen Notizbuchdateien ab. Liegen die Notizbücher in der Cloud, passiert das natürlich erst dann, wenn (wieder) eine Internet-Verbindung besteht. Derselbe Mechanismus und die Trennung in Cache und Notizbuchdateien gilt aber auch für Notizbücher auf der lokalen Platte oder einem Netzwerkordner. Die letzten beiden Optionen bietet bekanntlich nur die Windows-Version von OneNote, die (noch) mit Office installiert wird.

Ich habe versucht, den Vorgang im Bild am Anfang des Artikels zu verdeutlichen.

Der besagte Sync-Mechanismus basiert übrigens auf einem eigenen speziellen Protokoll namens COBALT oder MS-FSSHTTP und funktioniert anders als der des lokalen OneDrive-Clients, der für die Synchronisation kompletter Dateien in einem lokalen Ordner mit OneDrive zum Einsatz kommt. Es ähnelt vielmehr dem Protokoll, das von Sharepoint verwendet wird. Andere Datei-Clouddienste wie Dropbox, Google Drive oder Box unterstützen COBALT nicht; daher lassen sich OneNote-Notizbücher auch nicht mit diesen Diensten synchronisieren. Dass das zu funktionieren scheint, ist ein Trugschluss. Mehr dazu in diesem älteren, aber immer noch gültigen Beitrag. Der Sync-Mechanismus ist auch nicht als Systemdienst ausgeführt, sondern steckt in OneNote selbst. Deshalb laufen Synchronisationen nur dann, wenn OneNote auch läuft. Die Mobil-Apps für iOS oder Android müssen dabei sogar geöffnet und im Vordergrund sein.

Warum so umständlich?

Warum aber kann OneNote Notizbuch-Dateien nicht genauso einfach behandeln (laden, bearbeiten, speichern) wie Word oder andere Windows-Programme?

Dafür gibt es im Wesentlichen zwei Gründe:

Der erste ist die (vorübergehende) Offline-Verfügbarkeit von Notizbüchern. Damit Sie an Ihren Notizbüchern, die in der Cloud (oder auch auf einem LAN-Server) gespeichert sind, auch dann arbeiten können, wenn Sie gerade keine Netzverbindung haben, braucht’s eine vollständige Kopie auf dem lokalen Gerät. Das ist der Grund, warum OneNote nach dem Öffnen eines Notizbuchs, dessen Inhalt sofort lokal spiegelt. Und auch dafür, dass das Laden großer Notizbücher aus der Cloud so lange dauert. Einmal als lokale Kopie vorhanden, öffnen sich Notizseiten beim Wechseln viel schneller. Müssten sie hingegen bei Bedarf immer erst heruntergeladen werden, würde die Navigation in Notizbüchern zur Qual.

Der zweite Grund hat mit der Möglichkeit zu tun, gleichzeitig mit mehreren Personen am gleichen Notizbuch, Abschnitt oder sogar auf derselben Seite zu arbeiten. Oder alleine, aber auf mehreren Geräten. Herkömmliche PC-Dateisysteme lassen das nicht zu. Sobald eine Anwendung eine Datendatei geöffnet hat, wird sie für die Bearbeitung durch andere Anwendungen oder Rechner gesperrt; je nach Anwendung ist manchmal zumindest noch Lesezugriff möglich (Sie kennen das vielleicht von Excel). Dieses File-Locking wird erst wieder aufgehoben, wenn die bearbeitende Anwendung die Datei freigibt (durch Speichern und Schließen). Dieser Mechanismus kommt vom Betriebssystem; den könnte auch OneNote nicht umgehen, würde es direkt mit den Notizbuchdateien arbeiten. Dieses Dilemma betrifft nicht so sehr Notizbücher in der Cloud. Es entstand vielmehr schon früher, als gemeinsam genutze OneNote-Notizbücher auf einer Netzwerkfreigabe lagen. Da jeder Nutzer seine eigene lokale Kopie hat, spielt das File-Locking keine Rolle; bei allen Nutzern oder Geräten ist ja zunächst eine ganz eigene Datei in Bearbeitung.

Der Synchronisationsmechanismus untersucht nun beim Sync-Vorgang, was sich im lokalen Cache gegenüber der z.B. auf OneDrive gespeicherten Version geändert hat, und arbeitet diese Änderungen ein. Hier liegt nun auch der Grund für die starke Fragmentierung der lokalen Cache-Kopie:

Damit nicht nur mehrere Nutzer am selben Notizbuch gleichzeitig Änderungen vornehmen können, sondern sogar im selben Abschnitt oder auf der gleichen Seite, werden die Daten im Cache in einzelne Objekte zerlegt. Die wiederum sind im Prinzip lauter kleine eigene Dateien. Etwas ähnliches passiert auf der Serverseite. Der kann beim Synchronisieren also objektweise die aktualisierten Notizen aus vorhandenen und verändert hochgeladenen Fragmenten wieder zusammenpuzzlen; auch von mehreren Nutzern oder Geräten gleichzeitig. Daraus folgt auch die wichtigste Einschränkung des gemeinsamen Bearbeitens: Sollten zwei oder mehr Benutzer nicht nur dieselbe Seite, sondern auch dasselbe Objekt (zum Beispiel den gleichen Textabsatz) verändern, versagt der Mechanismus. Das Objekt ist nun mal die kleinste individuelle Einheit. In diesem Fall hilft sich der OneNote-Synchronisationsdienst damit, dass er von der gesamten betroffenen Seite eine Kopie anlegt und die Nutzer warnt, dass es hier einen von ihm nicht sinnvoll lösbaren Konflikt gibt, den der Anwender manuell lösen muss.

Der größte Vorteil der Stückelung, auch abseits von Teamwork oder Mehrgeräte-Nutzung: Bei Änderungen werden nur kleine Portionen, eben nur die geänderten Objekte, über das Netz übertragen; gut für Tempo, Bandbreitennutzung und Datenkontingent.

Lässt sich der Cache als Backup oder Offline-Notizbuch nutzen?

Da es also offenbar eine lokale Kopie der Notizen nach Öffnen eines Notizbuchs auf jedem Gerät gibt, sollten sich diese Dateien doch zum Beispiel für ein Backup oder als reine Offline-Lösung nutzen lassen, oder? Nicht wirklich. Als Backup taugt die Cache-Kopie gar nicht. Theoretisch könnten Sie zwar den Cache-Ordner (zumindest unter Windows ist der gut erreichbar, aber nur der für OneNote 2016, nicht für die OneNote-10-App) komplett auf einen anderen Windows-Rechner kopieren oder wegspeichern und zurückspielen. Da spielen aber noch einige Indizes und Registry-Einträge eine Rolle, weshalb das manuell normalerweise nicht klappen wird.

Was die reine Offline-Nutzung in OneNote-Versionen mit Cloudzwang anbelangt: Das geht im Prinzip schon. Sie könnten ein Notizbuch auf OneDrive anlegen (das zumindest muss sein) und dort dann mithilfe des Webbrowsers gleich wieder löschen. Die lokale Cache-Kopie auf dem Gerät bleibt. Wenn Sie die meist ohnehin dezenten Sync-Fehler-Warnungen nicht stören, könnten Sie dieses Notizbuch fortan rein lokal nutzen, ohne seine Inhalte jemals in die Microsoft-Cloud hochzuladen. Das ist aber ein gefährliches Spiel: Nicht nur das simple Schließen eines Notizbuchs, sondern auch das Zurücksetzen der App löscht den lokalen Cache. Die Inhalte sind unwiederbringlich verloren. Es ist auch nicht ausgeschlossen, dass eine Office-Reparatur oder ein künftiges Update denselben Effekt hätte. Ich rate also dringend ab.

Zusammenfassung (tl;dr)

Hier noch einmal in Kürze:

  • OneNote lädt beim Öffnen eines Notizbuchs zwar die zugehörigen Dateien von der Platte oder aus der Cloud, arbeitet aber nicht direkt damit, wie es z.B. Word oder andere Programme tun.
  • Stattdessen legt es sofort eine Kopie aller Inhalte auf dem lokalen Gerät an, den Cache. Das gilt auch für Smartphones oder Tablets.
  • Die Cache-Kopie liegt in eine völlig anderen Format vor als die ursprünglichen Dateien. Alle Notizen sind in kleine Portionen fragmentiert. Jedes „Bruchstück“ steht für ein Objekt, wie etwa einen Textabsatz oder ein Bild.
  • Diese Cache-Dateien sind nicht verwertbar, etwa als Daten-Backup und zudem relativ „fragil“.
  • OneNote arbeitet ausschließlich mit dieser Cache-Kopie; alle Änderungen werden hier vorgenommen und nicht an den eigentlichen Notizbuchdateien.
  • Ein eigenständiger Sync-Mechanismus auf dem Client (in OneNote integriert) und Server (z.B. OneDrive) „bastelt“ aus geänderten und hochgeladenen Cache-Fragmenten aktualisierte Notizbuchdateien zusammen. Das kann durchaus von mehreren Geräten oder Nutzern aus gleichzeitig geschehen.

 

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.

* Die Checkbox für die Zustimmung zur Speicherung ist nach DSGVO zwingend.

Ich stimme zu.