PokerOffice schneller machen!

    • Jasmin87
      Jasmin87
      Bronze
      Dabei seit: 10.05.2006 Beiträge: 722
      Hallo,

      ich glaube ich habe einen Weg gefunden um PokerOffice wesentlich schneller zu machen. Vor allem das TableOverlay. Bei mir hat es immer 2-3 Sekunden gedauert bis alles da war. Nach meiner ßnderung dauert es nunmehr nicht mal mehr eine Sekunde. Was ich gemacht habe? Hier ist es:

      MySQLAdministrator von der MySQL Seite laden. Dann auf die PokerOffice Datenbank connecten und unter Catalogs die Pokeroffice DB suchen. Dann auf die Tabelle ACTION doppelklicken und unten Links ein kleines Plus anklicken. Damit legt ihr einen neuen Index an. Ihr gebt dem Index einen Namen wie z.B. "index_all" ohne " und klickt OK. Dann aus der oberen großen Liste folgende Spalten in die Rechte untere kleine Liste ziehen.

      1. playerid
      2. gameid
      3. cards
      4. seats


      dann klickt ihr auf "Apply changes" und "Execute".

      Sagt mir bitte ob es auch bei euch den LiveTracker schneller macht. Bei mir ist es eine verbesserung von fast 300%



      EDIT(ciRith): Habe den Thread mal im Inhaltsverzeichnis eingetragen und den Post weiter unten hinzugefügt.

      Original von ciRith
      hier noch nen weiterer interessanter post:

      Original von koma
      Original von ciRith
      ist völlig normal.
      die DB wird mit der zeit auch immer langsamer.. meine größte hat 1GB und braucht pro hand 1 sec.. rechne nach *g*
      Du musst Dich auch ein bischen um die Pflege Deiner Datenbank kümmern. Lade Dir mal das MySQL Administrator Tool runter und mache dann folgendes:
      - Installiere das Tool
      - Starte das Tool
      - gehe auf den Punkt "Catalogs"
      - Suche Dir die DB
      - markiere die Tabellen mit Inhalt
      - Klicke auf "Maintenance"
      - Wähle "Optimize Table"
      - Klicke auf "Next"
      - Klicke auf "Optimize Tables"

      Das kann bei großen DBs allerdings ein bischen dauern, ist aber notwendig, da er hierbei die Indexes optimiert, die für eine schnelle Datensuche notwendig sind. Ist immer wichtig, nachdem große ßnderungen an der DB gemacht worden sind, sollte aber auch mal von Zeit zu Zeit gemacht werde.

      Gruß
      Koma

      ich werde das auch mal testen.
      hab ne 1gb große db genommen mit wohl 1mio. händen (die war unspielbar mit 2 tischen ohne db ordnung, danach ging 4 table +glh locker.) bin mal gespannt wie es nun geht
  • 45 Antworten
    • Battlecrab
      Battlecrab
      Bronze
      Dabei seit: 21.01.2005 Beiträge: 208
      Hi, mal 'ne Frage:
      Wie connecte ich denn zu meiner DB mit dem Admin tool. Bei mir kommt immer so ein Abfragefenster mit "stored connection, server host, username, pw, was muss ich da eingeben? Bin nicht so vom Fach was das angeht :)
      Thx!!
    • Arngrim
      Arngrim
      Bronze
      Dabei seit: 03.02.2005 Beiträge: 846
      Vielleicht können das wirklich mal ein paar "Versuchskaninchen" austesten. Wenn es einen hinreichend großen Unterschied macht (gerade bei großen Datenbanken vermutlich spürbar) kann ich das als Option in den Gamblers Little Helper einbinden!
    • Jasmin87
      Jasmin87
      Bronze
      Dabei seit: 10.05.2006 Beiträge: 722
      Username: root
      Server: localhost
      Port: 3306

      dann sollte es eigentlich gehen. Habe das dem PokerOffice Support gemeldet die sollen das mal testen. Theoretisch sollte es gerade mit großen Datenbanken klappen.

      Edit: Passwort sollte eigentlich leer sein nach Standart MySQL Einstellungen wenn du nichts geändert hast.
    • Segglmeister
      Segglmeister
      Bronze
      Dabei seit: 03.02.2006 Beiträge: 243
      Original von Arngrim
      Vielleicht können das wirklich mal ein paar "Versuchskaninchen" austesten. Wenn es einen hinreichend großen Unterschied macht (gerade bei großen Datenbanken vermutlich spürbar) kann ich das als Option in den Gamblers Little Helper einbinden!
      das wär natürlich hammercool, gerade auch, weil GLH viel von PO-Nutzern in Gebrauch ist.
    • Segglmeister
      Segglmeister
      Bronze
      Dabei seit: 03.02.2006 Beiträge: 243
      Original von Jasmin87
      .......
      . Ihr gebt dem Index einen Namen wie z.B. "index_all" ohne " und klickt OK. Dann aus der oberen großen Liste folgende Spalten in die Rechte untere kleine Liste ziehen.

      1. playerid
      2. gameid
      3. cards
      4. seats


      dann klickt ihr auf "Apply changes" und "Execute".

      Sagt mir bitte ob es auch bei euch den LiveTracker schneller macht. Bei mir ist es eine verbesserung von fast 300%

      sag mal bitte, was ich das bedeutet.... ich hab null plan von SQL
      Ich fasse etwas zusammen, das ist klar, aber gibts dan einbussen bei PO??
    • ciRith
      ciRith
      Bronze
      Dabei seit: 25.03.2005 Beiträge: 18.556
      hier noch nen weiterer interessanter post:

      Original von koma
      Original von ciRith
      ist völlig normal.
      die DB wird mit der zeit auch immer langsamer.. meine größte hat 1GB und braucht pro hand 1 sec.. rechne nach *g*
      Du musst Dich auch ein bischen um die Pflege Deiner Datenbank kümmern. Lade Dir mal das MySQL Administrator Tool runter und mache dann folgendes:
      - Installiere das Tool
      - Starte das Tool
      - gehe auf den Punkt "Catalogs"
      - Suche Dir die DB
      - markiere die Tabellen mit Inhalt
      - Klicke auf "Maintenance"
      - Wähle "Optimize Table"
      - Klicke auf "Next"
      - Klicke auf "Optimize Tables"

      Das kann bei großen DBs allerdings ein bischen dauern, ist aber notwendig, da er hierbei die Indexes optimiert, die für eine schnelle Datensuche notwendig sind. Ist immer wichtig, nachdem große ßnderungen an der DB gemacht worden sind, sollte aber auch mal von Zeit zu Zeit gemacht werde.

      Gruß
      Koma

      ich werde das auch mal testen.
      hab ne 1gb große db genommen mit wohl 1mio. händen (die war unspielbar mit 2 tischen ohne db ordnung, danach ging 4 table +glh locker.) bin mal gespannt wie es nun geht
    • Baroozo
      Baroozo
      Bronze
      Dabei seit: 12.02.2006 Beiträge: 191
      hab mal den link rausgesucht für das tool: http://dev.mysql.com/downloads/administrator/1.1.html
    • Jasmin87
      Jasmin87
      Bronze
      Dabei seit: 10.05.2006 Beiträge: 722
      Um das mal kurz zu erklären für diejenigen die sich nicht so damit auskennen.

      Ein Index ist wie eine Sprungmarke. Die PO Coder suchen über mehrere Spalten in der Tabelle. Und da auf diesen Spalten nicht ein zusammenhängender Index angelegt wurde wird einfach in der DB jeder Datensatz einzeln durchgegangen. Durch den neuen Index weiß die Datenbank viel schneller an welcher Position sich unser gesuchter Datensatz eigentlich befinden müsste und springt dort hin. Somit wurde dann je nach größe der DB mehrere Tausend Datensätze übersprungen die wir ja auch gar nicht benötigen. Und ERST dann wird Datensatz nach Datensatz durchsucht.
      Ich habe leider noch nicht so viele Datensätze bei mir drin wie Cirith aber mit knapp 15k gespielten Händen und 40k Händen von Gegnern in der DB ging es von 3 Sekunden für den Aufbau runter auf unter einer Sekunde OBWOHL ich meine eigenen Stats auch mit anzeigen lasse. Also es sind auch so schon mindestens 20k Datensätze die er mir an einen Tisch holt.
    • incognito
      incognito
      Bronze
      Dabei seit: 24.02.2006 Beiträge: 2.728
      verbessert das auch die allgemeine performance von PO?

      denn mit dem overlay hab ich keine probleme, das ist nur wenn PO startet oder die hände beim schließen des tables eingelesen werden, oder man nen anderen reiter auswählt, dauert das ewig.
      ich benutze den live tracker auch nicht, nur das overlay.
    • Segglmeister
      Segglmeister
      Bronze
      Dabei seit: 03.02.2006 Beiträge: 243
      Original von incognito
      verbessert das auch die allgemeine performance von PO?

      denn mit dem overlay hab ich keine probleme, das ist nur wenn PO startet oder die hände beim schließen des tables eingelesen werden, oder man nen anderen reiter auswählt, dauert das ewig.
      ich benutze den live tracker auch nicht, nur das overlay.
      Ich habe beides nun gemacht.....
      einmal die Tabellen zusammen gefasst und dann auch die Datenbank optimiert, wie ein paar Post unten drunter beschrieben steht.

      Es hat etwas gebracxht, auch wenn nicht gerade gewaltig viel, aber es ist doch spürbar flotter. (Warten muss man dennoch, wenn man PO startet)

      Meine Datenbank: ich habe ca. 200k Handhistories drauf.
    • Jasmin87
      Jasmin87
      Bronze
      Dabei seit: 10.05.2006 Beiträge: 722
      Mittlerweile steh ich mit dem PO Support in Kontakt wegen den Performance Problemen. Ich denke Sie werden mir heute oder morgen mehr Informationen zukommen lassen wie Sie die Anfragen an die Datenbank genau stellen dann kann ich bestimmt noch mehr Optimieren da alles in der MySQL DB ziemlich unprofessionell aussieht.

      Der Wortlaut aus einer PO Support mail war:

      Wir sind alle keine Datenbank Experten deshalb kann es gut zu solchen Fällen kommen.

      Werd euch natürlich weiter mit Infos versorgen.
    • Jasmin87
      Jasmin87
      Bronze
      Dabei seit: 10.05.2006 Beiträge: 722
      Original von incognito
      verbessert das auch die allgemeine performance von PO?

      denn mit dem overlay hab ich keine probleme, das ist nur wenn PO startet oder die hände beim schließen des tables eingelesen werden, oder man nen anderen reiter auswählt, dauert das ewig.
      ich benutze den live tracker auch nicht, nur das overlay.
      Gerade das Overlay ist definitiv schneller auf dem Tisch sichtbar mit diesen ßnderungen. Ich habe ca 70k HH in meiner DB und ich habe zu testzwecken auch mal dieses "exclude stats for own player" wieder ausgemacht und man spürt keinen unterschied mehr. also werden mal so locker an einem Tisch 20k HH eingelesen. Wo schon 13k von mir sind.
    • smallframe
      smallframe
      Bronze
      Dabei seit: 15.04.2005 Beiträge: 174
      Wenn ich versuche den MySQL Administrator zu connecten kommt immer die Fehlermeldung:

      MySQL Error Number 2003
      Cant connect to My SQL Server on "localhost" 10061


      Hoffe hier kann mir jemand helfen.
      PO spackt nur noch seit die DB grösser wird.

      PS: Habe es mit "localhost", "root", "3306" versucht
    • Jasmin87
      Jasmin87
      Bronze
      Dabei seit: 10.05.2006 Beiträge: 722
      Sieht so aus als wenn der MySQL Dienst nicht gestartet ist. Starte mal PO und dann den Administrator.

      BTW:

      PO hat mir grade wieder geschrieben. Sie haben ein wenig getestet und Bemerkt das es wirklich wesentlich schneller ist. Sie werden nun über alle Tabellen gehen und die Indices überprüfen lassen. Somit sollte PO in der nächsten Version einen deutlichen Performanceschub bekommen. Mal sehen was draus wird.

      PO war übrigens so freundlich mir nen kostenlosen Key für meine Mühen zu geben. :D
    • smallframe
      smallframe
      Bronze
      Dabei seit: 15.04.2005 Beiträge: 174
      Das ging ja mal fiix :)

      PO läuft, aber:

      Mir fällt gerade auf, dass im Task Manager kein MYSQL zu finden ist(sollte es doch oder?)
      Ist aber auf MYSQJ umgestellt, also sollte es doch automatisch starten wenn ich PO öffne, oder?

      Hmm, werd mal versuchen MYSQL anders zu starten...


      Edit: Habe es jetzt über GLH verbunden und nun startet das AdminTool auch, allerdings kann ich dieses kleine Plus unten Links nicht finden,
      Bin ich blind?

      ...Sorry, dass ich so viele Fragen stelle :rolleyes:
    • Jasmin87
      Jasmin87
      Bronze
      Dabei seit: 10.05.2006 Beiträge: 722
      Es ist wirklich sehr klein du musst doppelt auf die tabelle action klicken und dann unten links ist eine kleine liste mit den indices darunter ist ein winziges plus symbol
    • smallframe
      smallframe
      Bronze
      Dabei seit: 15.04.2005 Beiträge: 174
      Hmmm, auf den Doppelklick wär ich selbst nicht gekommen :rolleyes:

      Manchmal steht man echt auf dem Schlauch.


      Jetzt hats funktioniert, konnte aber leider keine deutliche verbesserung feststellen.

      Aber Danke für den support!


      PS:My Sql startet bei mir tatsächlich nicht automatisch bin PO,Geht nur über das glh tool.
      Kann man das irgendwo einstellen?
    • Jasmin87
      Jasmin87
      Bronze
      Dabei seit: 10.05.2006 Beiträge: 722
      Du kannst einen MySQL Dienst installieren. Schau mal in Start -> Alle Programme -> MySQL -> MySQL Server 4.1 -> MySQL Instance Manager

      Da kannst du einen Dienst relativ einfach erstellen. Aber keine Garantie. MySQL ist manchmal bischen zickig
    • ciRith
      ciRith
      Bronze
      Dabei seit: 25.03.2005 Beiträge: 18.556
      es ist spürbar schneller geworden allerdings hab ich keine werte :/

      lohnen tut es sich