IOPS, MySQL schneller mit SSD?

  • Keine Ahnung welcher Prozessor (bei mir mit 4 Kernen) da emuliert wird, aber bei solchen Abfragen ist der Prozessor auch zweitrangig. Viel wichtiger ist ausreichend Speicher (>8 GB für den DB Server) und eine gute Anbindung an das IO-Subsystem.

  • Ok, ich möchte hier keine Wortklauberei betreiben, weil ich mich in den Details einer VM (bei mir ist es eine VMWare mit Windows 10 Installation) zu wenig auskenne. Diese VM ist konfiguriert mit 4 Kernen und 16 GB Hauptspeicher.

    Diese Konfiguration, das wollte ich aussagen, ist grundsätzlich potent genug, um Datenbank Inhalte angemessen schnell zu verarbeiten.

  • Ist immernoch keine Antwort auf die Specs des eigentlichen Servers.


    "4 Kerne" ja von welcher Basis ? Atom,Celeron,Pentium,I3/5/7/9,Xeon | Ryzen


    Ist doch ne ganz einfache Frage und keine Wortklauberei

  • Basis (sprich mein PC) ist ein schon fast betagter i7 (6700K) mit 32 GB Hauptspeicher und 2 SATA SSDs (500GB und 2TB). Du kannst mir aber glauben, dass das nur sehr wenig mit der Performance des SQL Server in der VM zu tun hat.

    Vielmehr ist es das gesamte Paket, das darüber entscheidet, ob die Abfragen performant laufen oder nicht.

  • Du kannst mir aber glauben, dass das nur sehr wenig mit der Performance des SQL Server in der VM zu tun hat.

    Vielmehr ist es das gesamte Paket, das darüber entscheidet, ob die Abfragen performant laufen oder nicht.

    Zum Thema Paket, bitte diesen Post beachten. Hab ja nie was anderes gesagt.

  • Zum Thema Paket, bitte diesen Post beachten. Hab ja nie was anderes gesagt.

    Offenbar bin ich zu blöde, um Deine Posts zu verstehen. Für mich sieht es eher danach aus, als hättest Du von der Materie keine Ahnung, aber wenn Du meinst, dann halte ich mich jetzt einfach zurück.

  • Du erzählst hier was von Datenbanken auf nem I7 (auch Typ2 Hypervisor so wie es scheint) , mit ner Gastmaschine mit 4 Kernen.

    Das ist mitnichten das gleiche wie ein Celeron (hat an sich nur 4 Kerne) mit QTS>KVM (VM Station) mit ner VM die einen Datenbank Server beheimatet


    Wo ist denn ein kleiner Celeron NAS das gleiche "Gesamtpaket" wie ein Dicker i7 ?


    Klar kann man sagen .. ja aber ich geb der VM ja 4 Kerne, aber dann ist das Gesamtpacket immer noch nicht gleich (egal wie viel RAM und IOPS storage dahinter
    stehen.


    Aber ich hab halt keine Ahnung .. bin halt nur Flaschensammler von Beruf.. wa ?

  • Rudern wir einfach mal ein flaches Wasser zu zurück hier...


    @Qnatsch


    Wie wäre es denn mal dein Query hier zu posten ?


    Dann könnten dann mal Experten (Gondil1704) drüber gucken und ggf. Tips geben wie man nicht ein 'hartes select' auf über 111 Millionen Datensätze fahrt (indexes,etc)


    Die GUI Software scheint das ja auch ohne Probleme hinzubekommen.. also sollte das ja möglich sein

  • Wie wäre es denn mal dein Query hier zu posten ?

    ja :)

    SELECT * FROM `data` WHERE channel_id=25 ORDER BY `data`.`value` ASC


    viel ist es nicht.

    Aber der NAS ist es wohl zuviel.

  • @Qnatsch, das ist so ziemlich die einfachste Form einer Abfrage an den DB Server. Optimierungspotential besteht natürlich trotzdem. Zunächst würde ich die Spaltenliste genau benennen (also: Select Feld1, Feld2, ..., Feldn). Danach sollte vielleicht einfach mal die Anzahl der Datensätze gezählt werden, um vor Überraschungen sicher zu sein: Select count(*) From 'data' Where channel_id = 25.

    Diese Anzahl darf natürlich nicht zu groß sein, weil ansonsten das Ergebnis nur mit großem Aufwand zurückgegeben werden kann.

    Die Sortierung würde ich zunächst einmal komplett weglassen, weil diese natürlich auch ein Performancekiller sein kann (z.B. wenn die Daten dafür zunächst temporär zwischengespeichert werden müssen).

    Wenn das alles nicht weiterhilft würde ich einen Index auf das Feld channel_id legen:

    Create index idx_channel_id on data (channel_id);

  • Kannst Du denn schon eine Antwort darauf geben, wieviele Datensätze von der Abfrage betroffen sind? Alternativ kannst Du natürlich auch direkt größte und kleinste Werte abfragen:

    Select min(value), max(value) From data where channel_id = 25