zwovierzwo, German

Gibt es eine Anleitung wie man eine instanz kann.
Aktuell hat meine Datenbank ca. 18 GB und der Server kommt an die Grenzen.

wobei ich mich frage was da alles in der DB steht 😲
Allein schon die Abfrage auf die 40 Mio Datensätze bringt die DB und den Server ins schwitzen.

montag,

@zwovierzwo
die mit Abstand größten Tabellen sind bei mir apcontact mit 4,6GB und contact mit 4,3 GB. Friendica löscht wohl auch keine inaktiven Kontakt und mit dem größer werdenden Fediverse werden wohl auch die potentiellen Kontakte mehr. Wäre schön wenn man da mal aufräumen könnte. Meine kleine Instanz hat jetzt auch langsam eine 22GB große Datenbank und das erscheint mir wirklich ein bisschen zu groß.

abu,

@montag

Meine kleine Instanz hat jetzt auch langsam eine 22GB große Datenbank und das erscheint mir wirklich ein bisschen zu groß.

So weit möchte (und werde) ich es nicht kommen lassen. Da schalte ich das vorher ab.
@zwovierzwo

powo01,

@zwovierzwo @abu Was für eine Löschfrist ? Ich habe 30 Tage.

abu,

@powo01 Aktuell 90 Tage. Ich habe jedoch die 30 Tage auch ausprobiert, in der Hoffnung auf eine Abflachung der Kurve. Fehlanzeige, das muss etwas anderes sein.

@zwovierzwo

Hiker,

@abu Habe ich genauso beobachtet. @helpers @powo01 @zwovierzwo

abu,

@Hiker Ich habe mal gelesen, es sei der Avatar-Cache. Aber schaltet man den aus, wird die Sache eventuell viel träger.
@powo01 @zwovierzwo

Hiker,

@abu Ok, wusste ich nicht... @helpers @powo01 @zwovierzwo

raroun,

@zwovierzwo @powo01 @abu
Nach dem Umstellen des Wertes, muss Du ein OPTIMZE fahren.
Das ist wie eine Defragmentierung bei HDD´s.
Nur weil Beiträge gelöscht werden, wir die Datenbankdatei nicht kleiner. Gelöschte Beiträge machen Speicherplatz in der Datei frei, welcher wieder belegt werden kann, verkleinert aber nicht die Datenbank.
Das Verkleinern macht dann das OPTIMZE - die Datenbanktabellen werden dann ohne Lücken neu aufgebaut.
Das Ergebnis ist eine kleinere Datenbank auf dem Storage.

powo01,

@zwovierzwo Es gibt auch die Einstellung bestimmte Daten anstatt in der Datenbank im Filesystem zu speichern. Das bringt einiges

abu,

@powo01 Das mache ich schon so. Nun sind die Gigabytes einfach im Storage Verzeichnis.

Increase
DB 4.30 MB/Day
Storage 6.56 MB/Day
Total 10.86 MB/Day

@zwovierzwo

zwovierzwo,

@powo01 @helpers
Also ich Speicher schon die Profilbilder nicht in der Datenbank

tux,

@zwovierzwo
Ein mysqloptimize -p friendica-db hatte bei mir vor einiger Zeit mal ordentlich Platz gemacht.

zwovierzwo,

@tux das geht wohl nur als root

tux,

@zwovierzwo
Ja klar. Du brauchst Zugriff auf die Konsole und mysql.

ginad,

@tux @zwovierzwo Nein, das brauchst du nicht. Du brauchst nur den DB-User auf die entsprechende Datenbank.

Hiker,

@zwovierzwo Ich frage mich auch, warum eine solche Riesendatenbank generiert. Meine Ein-User-Instanz hat nach kurzer Zeit bereits 1 GB... @helpers

zwovierzwo,

@Hiker
nun ich hab auch nur 2 User hier laufen und die läuft ca. 1,5 - 2 Jahre.
Ich hab auch keine Ahnung was da alles drinnen steht.
Parallel hab ich nun eine Sharkey (Misskey) Instanz am laufen - mal schauen wie sich da die Datenbank entwickelt.

Hiker,

@zwovierzwo Ja, solche Vergleiche mache ich zur Zeit auch 😉

feb,

@zwovierzwo @Hiker
Räume die DB von Zeit zu Zeit auf, damit der Platz wieder freigegeben wird.
Die DB hier ist ≈50 GB groß, läuft seit fast einen Jahrzehnt und beherbergt einige hundert User.

Hiker,

@feb Wie genau "räumst" du auf? @zwovierzwo

feb,

@Hiker @zwovierzwo
mysqloptimize -p DB-Name

Hiker,

@feb Wird von meinem Provider nicht unterstützt. @zwovierzwo

nick,
@nick@norden.social avatar

@Hiker

Ist es oder ?

Zumindest bei sollte auch via ein funktionieren...

@feb @zwovierzwo

Hiker,

@nick
10.6.16-MariaDB MariaDB Server
@feb @zwovierzwo

Hiker,

@nick Table does not support optimize, doing recreate + analyze instead @feb @zwovierzwo

nick,
@nick@norden.social avatar
Hiker,

@nick Doch, InnoDB @feb @zwovierzwo

nick,
@nick@norden.social avatar

@Hiker

Mhmm, sollte laut Doku doch eigentlich laufen?

https://mariadb.com/kb/en/optimize-table/

@feb @zwovierzwo

Hiker,

@nick
Hab es jetzt auch gelesen - es optimiert aber wirft trotzdem die Meldung. @feb @zwovierzwo

raroun,

@nick @feb @Hiker @zwovierzwo
Nur MyISAM Tabllen unterstützen eine Optimierung.
InnoDB halt nicht.
Das Ergebnis ist nahezu das gleiche. MyISAM kann "on the fly" optimiert werden, InnoDB nicht.
Bei InnoDB wir die Tabelle Analysiert und und dann ohne Lücken neu erstellt (also sauber kopiert) - von daher die Meldung.

Hiker,

@raroun Das löst , je nach Einstellung selber aus. Aber wenn die Datenbank gross oder riesig wird, wird das offenbar ein langer Prozess. Mein Provider hat mich gemahnt, das sei zu lang, da würde der automatische Backup-Prozess gestört... @zwovierzwo @nick @feb

raroun,

@zwovierzwo @nick @feb @Hiker
Nicht alle Tabellen werden von Friendica automatisch optimiert.
Die Dauer der Optimierung hängt stark von der zur Verfügung stehen Leistung ab.
Hier dauert die Optimierung einer kompletten 160gbyte großen Friendica Datenbank derzeit ca.25 Minuten.

Hiker,

@raroun Ja und wenn genau in diese Zeit das Backup laufen soll, dann gibts einen Konflikt - Backup einer Datenbank, die gerade neu geschrieben wird, ist relativ schwierig... @zwovierzwo @nick @feb

raroun,

@zwovierzwo @nick @feb @Hiker
Das geht problemlos mit Dateisystem-Snapshots, machen wir auch so.
Be einem Shared hoster ist es leider schwierig nachvollziehen, bzw. zu erahnen wie dort die Datensicherungen durchgeführt werden.
Eine Lösung hierfür habe ich nicht, aber vielleicht kann man mit dem Anbieter kommunizieren und eine Lösung finden, die beide Seiten zufrieden stellt.
Sollte dies fehlschlagen - aus welchem Grund auch immer - Anbieterwechsel und vorher die Anforderungen schildern.

Hiker,

@raroun Hab ich schon versucht - bis zum Deaktivieren der Optimierung in Friendica bin ich noch nicht weiter gekommen... @zwovierzwo @nick @feb

zwovierzwo,

@feb @Hiker
50GB 😳
Ich will ja nix sagen aber wahrscheinlich hast du zig 100 Nutzer 🤔

raroun,

@Hiker @feb @zwovierzwo
Die Nutzerzahl ist gar nicht so entscheidend - eher wie stark die Instanz "vernetzt" ist und ob relay Server abonniert sind, oder halt nicht.

zwovierzwo,

@Hiker @feb
wäre es da nicht sinnvoll wenn man eine "anständige" Datenbank wie Postgres verwendet

Hiker,

@zwovierzwo Das müssten wir die Autoren von fragen... @feb

feb,

@zwovierzwo @Hiker
Was macht die "anständiger" als mysql? Du wirst nur andere Herausforderungen haben.

zwovierzwo,

@feb
nun eine Postgres ist für große Daten gut geeignet
@Hiker

feb,

@zwovierzwo @Hiker
Jede DB braucht Pflege (egal wie sie heißt). Wer die vernachlässigt wird unweigerlich in einen Flaschenhals hinein laufen.

Hiker,

@feb Aber wenn auf einer Ein-User-Instanz die Datenbank innert paar Monaten über 1 GB gross wird (trotz der automatischen Optimierung durch Friendica) und der Provider reklamiert, der Backup-Prozess werden immer wieder gestört, wirft das Fragen auf.
Wenn ich den Provider richtig verstanden habe, wird jedes Mal, wenn worker gestartet wird (also relativ oft (alle 10 Min zB), wird auch an den Tabellen optimiert. @zwovierzwo

zwovierzwo,

@feb
Nun das sollte die Anwendung übernehmen
@Hiker @helpers

abu,

@zwovierzwo Ich denke nicht, dass ein DB-Wechsel diese Probleme wirklich lösen würde. Für mich riecht das eher nach einem konzeptionellen Problem.

@Hiker @feb

zwovierzwo,

@abu @Hiker @feb
das mag wohl sein - so genau hab ich mir die Datenbankstruktur noch nicht angeschaut.

abu,

@Hiker @zwovierzwo
Ich habe das «Wachstum» der DB eine Weile überwacht. Die Grösse steigt unaufhaltsam um ca. 4.5 MB/Tag.

nick,
@nick@norden.social avatar

@abu @Hiker @zwovierzwo

Wo lagert bei Euch ein Mediencache von anderen Instanzen?

feb,
zwovierzwo,

@feb
Ok danke - hoffen wir mal das dies funktioniert - weil so geht das mit der DB nicht mehr weiter - alles wird zäher und zäher

  • All
  • Subscribed
  • Moderated
  • Favorites
  • helpers@forum.friendi.ca
  • GTA5RPClips
  • DreamBathrooms
  • thenastyranch
  • magazineikmin
  • Durango
  • cubers
  • Youngstown
  • mdbf
  • slotface
  • rosin
  • ngwrru68w68
  • kavyap
  • tacticalgear
  • ethstaker
  • JUstTest
  • InstantRegret
  • Leos
  • normalnudes
  • everett
  • khanakhh
  • osvaldo12
  • cisconetworking
  • modclub
  • anitta
  • tester
  • megavids
  • provamag3
  • lostlight
  • All magazines