Frage Atime auf einem Dateisystem ausschalten


Ich richte ein MongoDB-Replikatset ein und eines der ersten Dinge, die ich tun soll, ist das Ausschalten des Dateisystems. Nachdem ich das ein bisschen erforscht habe, bin ich nicht dagegen, das zu tun, aber ich muss fragen, was atime benutzt? Ich habe die interwebs gesucht und sehr wenig in der Art von „dieser applciaiton oder dieser Prozess verwendet atime und man wäre dumm, wenn Sie es ausgeschaltet“ gefunden Arten von Warnungen, aber eine paranoiden Person, die von der Natur zu sein, ich muß mich fragen.

Also, was benutzt Atime und wenn ich es abstelle, was könnte brechen?


26
2017-11-09 04:12


Ursprung




Antworten:


mutt, ein E-Mail-Client, verwendet Dateizugriffszeiten, um auf neue Nachrichten zu prüfen, die in einem mbox-formatierten Postfach ankommen. Offenbar, Dieses Problem ist nicht schwerwiegend und lässt sich leicht umgehen.

Abgesehen davon ist es schwierig, Beispiele für Dinge zu finden, die durchbrechen noatime. Ich betreibe eine Reihe von Linux-Servern mit noatime auf allen Dateisystemen, und ich kann mich nicht erinnern, jemals Probleme gesehen zu haben noatime.

Wenn Sie über die Verwendung besorgt sind noatime im Allgemeinen könnten Sie ein separates Dateisystem für Ihre mongoDB-Sachen bereitstellen und nur dieses Dateisystem mit mounten noatime.

BEARBEITEN

Ich habe eine gefunden interessanter Blog bei kerneltrap.org das nennt einige Diskussionen zwischen Linux - Entwicklern (Linus Torvalds, Ingo Molnar, Alan Cox und anderen) zum Thema atime. In Ingos zweiter E-Mail sagt er Folgendes:

... ich habe keine wirkliche Beschwerde über   ext3 - mit der obligatorischen Qualifikation, dass "noatime, nodiratime" in   / etc / fstab ist ein Muss. Das beschleunigt die Dinge besonders sichtbar   wenn auf viele Dateien zugegriffen wird. Es ist irgendwie seltsam, dass jedes Linux   Desktop und Server werden durch eine spürbare IO-Performance-Verlangsamung beeinträchtigt   zu den konstanten Atime Updates, während es nur zwei echte Benutzer davon gibt:   tmpwatch [welches für die Verwendung von ctime konfiguriert werden kann, ist also kein großes Problem]   und einige Backup-Tools. (Ok, und mail-notify too, denke ich.) Aus zig   Tausende von Anwendungen. Für die meisten Datei-Workloads geben wir Windows ein   20% -30% Performance-Kante, für fast nichts.


24
2017-11-09 04:55





Tools, die nach Dateiverwendung suchen, wie z. B. temporäre Dateibereinigungen, verwenden sie. Sie können dies mit einigen Dateisystemen und Betriebssystemen umgehen relatime Stattdessen wird nur die Zeit aktualisiert, nachdem eine bestimmte Dauer seit der letzten Aktualisierung verstrichen ist.


9
2017-11-09 04:20





Sie könnten auch einen separaten Einhängepunkt für Ihr MongoDB-Replikat erstellen. Sie können den noatime-Parameter dann nur auf diesen Mountpoint setzen, ohne andere Programme zu beeinflussen.


8
2017-11-09 09:27





Als Follow-up hier, relatime wurde im Kernel 2.6.30, der um den Zeitrahmen März 2009 veröffentlicht wurde, zum Standard gemacht. Das bedeutet, dass die Gewinne, die Sie aus den Noatime-Einstellungen sehen, bei jedem modernen Kernel geringer sind.

Es ist immer noch eine Empfehlung, da es für MongoDB immer noch einen Leistungsgewinn gibt, aber solange Sie sich auf einer einigermaßen aktuellen Kernel-Version befinden, ist es nicht so wichtig wie früher.

Zusätzlich zu der hier erwähnten Software habe ich auch eine Zeit gesehen, die von Backup-Tools verwendet wird.


4
2017-07-19 12:05





Ich möchte nur einen Punkt @Steven Montag hervorheben - benutze ein separates Dateisystem.

Für eine Datenbank ist dies immer eine gute Option und bietet Ihnen viel mehr Flexibilität bei der Optimierung der Datenbankleistung, da nur ein zusätzlicher Mountpunkt verwaltet werden muss. In der Regel erhalten Sie weitere Möglichkeiten, die Datenbank auch für Backups zu sichern (in Fällen, in denen Sie Snapshots erstellen und Backups für das Backup erstellen können, sogar noch praktischer)


1
2017-07-19 13:33