mysql + cluster + replikation ????

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • mysql + cluster + replikation ????

    Hallöle zusammen,

    ich hab mal ne ganz spezielle Frage. Und zwar soll ein Projekt einiger Studenten im Oktober online gehen. Aufgrund des Umfanges des Portales gehen wir davon aus, dass ein Datenbankserver allein die Last nicht bewältigen kann.

    Momentan planen wir die einzelen datenbanken auf mehrere Rechner zu verteilen (also nicht redundant) und dann in den php-skripten die Datenbankserver direkt anzusprechen.

    Das dies nicht der Weisheit letzter Schluss ist, ist uns allen klar. Gerade weil das System nicht beliebig weiter skalierbar ist und im Vorfeld auch schlecht abschätzbar ist welche Rubrik des Portales nun wieviel Seitenabrufe hat (anhand unserer Schätzung werden halt die Datenbanken auf unsere Server verteilt)

    Drum mein letzter Hilfeschrei

    Wie können wir unsere mysql-db's noch clustern??? Die Datenbanken einfach nur replizieren und dann bei jedem insert / update alle datenbankserver ansprechen ist wohl auch nicht so clever oder? (Probleme mit Konsistenz der Daten und ausserdem macht das unser System ja auch nicht gerade schneller wenn wir nun 5 inserts machen statt wie vorher einen)

    mmh? Also wir sind echt für jede Hilfe dankbar!! Vielleicht ist ja ein erfahrener Sysadmin unter euch

    Gruss

    Thommy
    www.unister.de

    what students want!

  • #2
    Also es gibt diverse MySQL-Clustering Software (z.B.Prometheus, andere Links finde ich im Moment nicht) Ihr könnt auch die MySQL eigene Replikation verwenden ... allerdings hat keine von mir bisher getestete Variante einen wirklich befriedigenden Erfolg gebracht ... allerdings zeigt die Erfahrung das im Zusammenhang mit PHP-Generierten Seite bei bis zu 150.000 Zugriffen/Tag meistens der/die Webserver der Engpaß ist.

    Voraussetzung dafür ist natürlich ein entsprechend ausgestatteter und konfigurierter (MySQL) Server (Hardware).

    Auch ist ein Blick auf die Datenbankstruktur (insbesondere die Indizes) auch mit Hinblick auf die verwendeten Queries unabdingbar.
    carpe noctem

    [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
    [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

    Kommentar


    • #3
      Hi,

      ich bin zwar 'erfahrener System-Admin' (wie immer der auch aussehen mag), aber zum Thema Clustering kann ich Dir dennoch einiges erzählen:

      Vorweg: Euch ist natürlich klar, dass das kein 'kleines' Projekt ist. Clusterprogrammierung gehört mit zu den ansprechensten Aufgaben, die ich kenne. Man braucht eine Menge Erfahrung und vor allem Zeit, um so eine Lösung umzusetzen.

      Ok! Der wichtigste Schlüssel zu Allem ist der Back-Bone-Switch. Er muss entscheiden, wann wie welcher Rechner über welchen Knoten angesteuert wird. Diese Ergebnisse triift er aufgrund eines gemeinsamen Speicherbereiches (shared memory). Da solche Entscheidungen stark Geschwindigkeitsabhägig sind, würde ich den Switch in C++ programmieren - php ist für solche Zwecke viel zu langsam. Die zugewiesen Aufgabe werden an den einzelnen PC in ihren exklusiven Speicherbereich verarbeitet (destributed memory), auf dem in euren Fall die MySQL Datenbanken laufen.

      Unter Linux gibt es ein Freeware Programm namen bWatch oder fertige Instalationsprogramme wie FAI (www.informatik.uni-koeln.de/fai ), dass Dir die Verwaltung einzelener Rechner abnehmen kann und Knoten entsprechend ausbalancieren (load balancing). Dies Programm wurde eigentlich geschrieben um Hochleistungs-Groß-Cluster zu unterstützen, also jene die Du hier wiederfinden wirst - www.top500.org/ Wenn Ihr schon einen Cluster betreibt, sollten Ihr im Rahmen der Hochverfügbarkeit jeder DB spiegel mit - was war das nochmal RAID 0?! Egal. - Hast dann auch kein Problem mit den Balancierung.

      Für Windows findest Du in VisualStudio >6.0 ein Standard-Projekt für die Clusterprogrammierung, das aufgrund einfacher Vorgaben - Zuweisen von Servern und Art der Daten, sowie der Knotenstruktur eine Code-Vorlage liefert. Aber nicht erschrecken, der hat es in sich . Unter win2k server findest Du auch noch Einrichtungsmöglichkeiten unter Clusterstruktur, nur erspart es Dir die Programmierung nicht.

      Bezüglich der Skalierung von ca. 4 Servern würde ich mir noch keine Gedanken machen. Wohl über die Netzwerk-Technik, ich bin da nicht mehr so up-to-date, aber Ende 2000 kostete eine gute Clusterknotenkarte ca. 2.500,- Dm bzw. 1250,- € (SCi, Myrinet,Atom o.a.)

      Probleme, die ich sehe :
      1) Müßt Ihr euch nich die Frage stellen, wenn euer Studentenportal den Trafik aufnehmen kann, aber die DB nicht, dass eure Struktur schlecht gewählt ist ? .
      2) Wie kommt Ihr von PHP-Scripts an das Back-Bone-Script bzw. der zügehörigen Software.
      3) Und vor allem umgekehr! D.h. an die Remote-Struktur des Webservers. Weil der Prozess nicht, wie sonst üblich bei skarierbaren Quest, aufrecht erhalten werden kann.

      Jau! Da habt Ihr euch was vorgenommen ...

      Hoffe, konnte euch ernüchtern

      Blaster
      Zuletzt geändert von Blaster; 27.06.2002, 23:34.
      Yuppi, endlich Elite ...

      Kommentar


      • #4
        JAAA ... JAAAAAA ... JAAAAAAAAAAAAAAAA ... *ROTFL*

        Blaster ich liebe Dich ... laß uns viele kleine Blaster machen ... !
        carpe noctem

        [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
        [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

        Kommentar


        • #5
          @goth:

          Ohhh! Prometheus! Respekt,Respekt!!!

          Ist es jetzt gut!
          Yuppi, endlich Elite ...

          Kommentar


          • #6
            Was kann ich dafür das das Projekt Prometheus so heißt wie es heißt ...

            Aber Du bist immer wieder süß ... *ROTFL*
            carpe noctem

            [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
            [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

            Kommentar


            • #7
              mmh, ich glaub ich hab da demnächst noch n paar Fragen euch, aber jetz geh ich erst mal schlafen

              Gruss + Danke

              Thommy
              www.unister.de

              what students want!

              Kommentar


              • #8
                Hey,

                noch ne Frage. Wenn wir bei einem Enpass eines Datenbankservers (wo die Datenbank einer Rubrik unseres Portales drauf ist) den Datenbankserver austauschen mit einem Mehrprozessor-Rechner austauschen. Da ich wie immer keine Erfahrung mit sowas habe erstmal die Fragen:

                Wie teuer ist so'ein System ?
                Bieten Provider das auch als Hosting - Lösung
                Wieviel mehr Seitenbarufe verkraftet der Server wenn er 4 statt 1 prozessor hat bei genügend Arbeitspeicher?
                Wieviel Arbeitspeicher sollte man nehmen ?

                naja das wärs erstmal


                Gruss

                Thommy
                www.unister.de

                what students want!

                Kommentar


                • #9
                  Bei uns habe Datenbank-Rechner mindestens 2 Prozessoren und 3 GB Ram ... ganz billig sind die allerdings nicht der genaue Preis hängt natürlich mit der Ausstattung zusammen ( 5.000 € bis Ende offen ) ... alternativ dazu kannst Du natürlich auch immer noch (eine entsprechende Kapitaldecke vorausgesetzt) auf die Sun Enterprise Klasse zurückgreifen ...

                  Provider schon ... aber mit Sicherheit nicht die bekannten Massenhoster ... wende Dich einfach mal an den Provider Deines Vertrauens und laß Dich da richtig beraten ... dann wirst Du schon mal sehen ob der Sein Handwerk versteht ... .
                  carpe noctem

                  [color=blue]Bitte keine Fragen per EMail ... im Forum haben alle was davon ... und ich beantworte EMail-Fragen von Foren-Mitgliedern in der Regel eh nicht![/color]
                  [color=red]Hinweis: Ich bin weder Mitglied noch Angestellter von ebiz-consult! Alles was ich hier von mir gebe tue ich in eigener Verantwortung![/color]

                  Kommentar


                  • #10
                    Mahlzeit!

                    Beschreib erstmal deine genaue Topologie und den zu erwartenden Traffic. Wieso glaubt ihr das die DB überlastet wird.

                    So genau wie möglich!

                    cu

                    Blaster
                    Yuppi, endlich Elite ...

                    Kommentar


                    • #11
                      Höhöm,knurrr..

                      http://www.php-resource.de/forum/sho...?threadid=8310

                      VII !!!!!
                      Yuppi, endlich Elite ...

                      Kommentar


                      • #12
                        ja wie soll ich denn den Topologie - plan hier posten,
                        war wirklich net bös gemeint, aber das Teil ist wirklich ne ecke anschaulicher, als ein paar Zeilen Text

                        Aber wenns denn unbedingt in Textform seien soll

                        also zunächst mal haben wir ein Cluster von 3 Apache-webservern (beliebig erweiterbar) 1Apache hat dabei nur die Aufgabe die user zu verteilen entsprechend des aktuellen Loads der Apaches. Das funktioniert auch momentan ganz gut und macht zumindest im moment :-) noch nicht das grosse Kopfzerbrechen. (wir benutzen übrigens das Apache - Modul backhand )

                        In der 2 Ebene befinden sich unserer DB-server (derzeit sind 7 Stück geplant), wobei halt in der derzeitigen Planung einfach die datenbanken auf die server verteilt werden (halt nicht redundant)

                        Wir sind derzei am prüfen, ob wir die Datenbank-datein auf ein storage-array beim Provider packen können (Vorteile Backup, Ausfallsicherheit und mann brauch halt nicht selbst mit irgenwelchen raid-systemen sich rumschlagen ) und dann das ganze mit ner 1Gb-Verbindung zu den DB-Servern verbinden

                        zusätzlich haben wir noch 3 Dienstserver (Chatserver, P2P-server, Mailserver) und ein Admin-Server von welchem aus wir in unserem Netzwerk operieren.

                        Ausgelegt sollte das System sein für ca 20 Mio Pageimpressions

                        Naja soweit erstmal der grobe Überblick, bei Bedarf gibsts noch ne Grafik dazu

                        Bis denne
                        www.unister.de

                        what students want!

                        Kommentar


                        • #13
                          So!

                          Also ich habe mal in meinen Archiv geschaut und in der LAN-Line Ausgabe 11/2001. Hat alles Wissenswerte was Du für SAN (storage area network) und NAS( network attached storage) brauchst, mit Firmen und Produktlisten ect. ( www.awi.de ). Das Heft koste 14 ,- DM und beschäftigt sich nur mit 'deinen Problemen'
                          Abtippen werde ich es für Dich nicht.

                          Vielleicht bekommst Du den Jahrgang noch auf CD als PDF.

                          Anderfalls mußt Du googlen, oder in der Uni-Bibio schauen.

                          cu

                          Blaster
                          Yuppi, endlich Elite ...

                          Kommentar


                          • #14
                            Nachtrag!

                            AWI hat ein Volltext-Archiv das Du nutzen kannst!

                            Noch viel Erfolg!

                            Blaster
                            chief of information
                            Yuppi, endlich Elite ...

                            Kommentar


                            • #15
                              danke erstmal, ich werd mich mal durchwurschteln !!!

                              Gruss

                              Thommy
                              www.unister.de

                              what students want!

                              Kommentar

                              Lädt...
                              X