Smalltalk - Labern, reden, diskutieren...

  • vermutlich ist das TIMESTAMP ein Keyword, du brauchst dann Backticks

    Ja, hat auch nicht geholfen. ;)

    Selbst Schuld :)

    Da will man EINMAL weniger Stress bei Updates haben... ;(

    Welche Keys existieren denn jetzt?

    Zu dem Zeitpunkt existierten alle aus dem CREATE TABLE weiter oben.

    Habe jetzt alle rausgeschmissen, bis auf den PRIMARY auf linkid (weil, um, das ist halt die Auto Increment), und den hier erstellt (ohne die `, und das ging)

    Code
    ALTER TABLE links_perdate ADD INDEX filterKey (timestamp, domain, sourceid, urlhash);

    Woraufhin der EXPLAIN so aussieht:

    Milestones:

    • 18.02.2022 19:14 CET: Erste PWA installiert (und es war ausgerechnet YouTube Music)
  • Hallo,

    Habe jetzt alle rausgeschmissen, bis auf den PRIMARY auf linkid (weil, um, das ist halt die Auto Increment), und den hier erstellt (ohne die `, und das ging)

    der urlHash in dem Key ist absolut nutzlos, weil er nicht Bestandteil vom Query ist.

    Mich würde mal interessieren, ob ein '2022-02-01' <= timestamp AND timestamp < '2022-03-01' irgendwas ändert.

    Ansonsten:

    • Wenn du immer auf Basis eines kompletten Monats selektierst, dann die Tabelle partitionieren: https://dev.mysql.com/doc/refman/8.0/en/partitioning.html
    • Vielleicht sind deine INDEX-Statistiken fehlerhaft: ANALYZE kann helfen.
    • Subselect einführen: Erst die IDs der Einträge von Interesse holen und anschließend aufsummieren. Dann kann MySQL jeweils den passenden Key für die passende Aufgabe wählen.
    • Vielleicht ist das was du haben willst auch einfach konzeptionell „aufwändig“: Kann man nichts machen, dann ist das so.
  • OK ich glaube, ich habe jetzt eine Eingebung gehabt. Nur damit ichs verstehe:

    - Man kann mehrere Indizes haben, aber MySQL verwendet nur einen pro Abfrage (das was bei EXPLAIN unter key steht)?

    - Ein Index sollte über alle Spalten gehen, die im WHERE vorkommen?

    - MariaDB 10.5 ist kein MySQL 8 *hust*

    Irgendwo hat sich in meinem Kopf noch festgesetzt, dass man INT-Spalten nicht indexieren muss, weil das durch INT ohnehin gegeben ist, aber dem ist wohl nicht so?

    Mich würde mal interessieren, ob ein '2022-02-01' <= timestamp AND timestamp < '2022-03-01' irgendwas ändert

    LIKE '2022-02%': 1,23s (hey, immerhin, vorher warens knapp 6)

    '2022-02-01' <= timestamp AND timestamp < '2022-03-01': 226ms

    huch?

    Ich danke euch auf jeden Fall SEHR für eure Hilfe, das sind viele sehr gute Insights.

    Milestones:

    • 18.02.2022 19:14 CET: Erste PWA installiert (und es war ausgerechnet YouTube Music)
  • Hallo,

    - Man kann mehrere Indizes haben, aber MySQL verwendet nur einen pro Abfrage (das was bei EXPLAIN unter key steht)?

    Ja.

    - Ein Index sollte über alle Spalten gehen, die im WHERE vorkommen?

    Nein.

    Display Spoiler

    Nicht unbedingt. Der INDEX sollte nur effizient den Großteil der Daten wegfiltern. Wenn beispielsweise zwei deiner Spalten das Ergebnis auf 30 Zeilen reduzieren und dann noch eine weitere Spalte das Ergebnis auf 20 Zeilen reduziert, dann ist es effizienter die 30 Zeilen einfach durchzugucken, statt die dritte Spalte noch zusätzlich mit in den INDEX aufzunehmen.

    - MariaDB 10.5 ist kein MySQL 8 *hust*

    Ja.

    Irgendwo hat sich in meinem Kopf noch festgesetzt, dass man INT-Spalten nicht indexieren muss, weil das durch INT ohnehin gegeben ist, aber dem ist wohl nicht so?

    Ja, dem ist nicht so.

    huch?

    :)

  • Vom PCR Test oder meinst du eher den Bescheid für die Absonderung in die häusliche Quarantäne?

    PCR Test, Absonderung von Gesundheitsamt habe ich noch nicht erhalten meine Quarantäne ist seit dem 13.2 vorbei😱

    Was du heute kannst besorgen, verschiebe lieber gleich auf morgen.

  • PCR Test, Absonderung von Gesundheitsamt habe ich noch nicht erhalten meine Quarantäne ist seit dem 13.2 vorbei😱

    Bei uns im LK hängen die damit auch extrem hinterher. Alles muss händisch ins Fachverfahren eingegeben werden, um letztlich den Absonderungsbescheid ausstellen zu können. Kein Automatismus, obwohl man anhand der DEMIS Meldungen bereits sämtliche relevanten Daten hat, die letztlich nur mit den im Fachverfahren hinterlegten Datensätzen abgleichen müsste. Einige LK haben bereits auf Allgemeinverfügungen für Indexfälle umgestellt.

  • Was bei mir in BaWü witzig ist man schaut auf den websiten nach das die Polzeipräsidien die Bestätigungen für den AG ausstellen… rufe ich bei meinem an sagen die mir das es nur das Gesundheitsamt macht

    Was du heute kannst besorgen, verschiebe lieber gleich auf morgen.

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!