PC über Internet ins eigene Heimnetzwerk
Geizhals » Forum » Netzwerk » PC über Internet ins eigene Heimnetzwerk (18 Beiträge, 633 Mal gelesen) Top-100 | Fresh-100
Du bist nicht angemeldet. [ Login/Registrieren ]
.....
Re(5): PC über Internet ins eigene Heimnetzwerk
04.11.2012, 11:49:00
  Ok, und gibt es irgendeine Möglichkeit herauszufinden ob "Full Table Scans"
notwendig sind

Real: NEIN.

Der Full Table Scan ist per se noch nicht böse - die Frage ist nur, wo er passiert. Wenn er auf dem Rechner passiert, wo die Datenfiles liegen: Alles ist in Ordnung. Wenn aber alle Files über das Netz übertragen werden müssen und die Client-App sich die passenden Datensätze raussucht: Dann kann es seeehr teuer werden (Dann könnten ja Terabytes über das Netz übertragen werden müssen). Dann ist die Applikation aber unsauberst programmiert.


Mein Vorschlag wäre, OpenVPN einzusetzen und es zu versuchen. Bei einer "normalen" Datenbank-Applikation funktionieren die Zugriffe bei brauchbarer Internetverbindung [fast] genausoschnell wie wenn Du sie @home verwendest. Der Engpass bei Datenbankverbindungen ist ja:
(i) CPU-Bound: Mit Masse Indexkalkulationen
(ii) IO-Bound: Mit Masse Full Table Scans, aber auch beim Auftreten von massiv-parallelen relativen Zugriffen.

(i) Passiert oft nicht am Client-Rechner. Aber selbst wenn es am Client passiert - es schmerzt Dich genausoviel, wie wenn Du @home arbeitest.
(ii) Massiv parallele Zugriffe wird es bei Dir nicht geben - das wird eher Thema wenn Hunderte oder Tausende Benutzer gleichzeitig auf die DB zugreifen... Dann werden die IOPS deines Datenbankrechners spannend. Das wird aber bei Dir nicht der Fall sein. Dann bleibt nur noch die Frage, wo der FileIO passiert... Passiert er auf dem Rechner mit den Datenbankfiles - wird kein sinnloses Byte über das Netz übertragen - und die Welt ist schön.

Bescheuert wäre nur der Fall, wenn Du die Datenbankfiles zB über SMB oder NFS über das Netz zu Dir holen musst... Dann kann es sehr teuer werden, wenn keine brauchbaren Indizes existieren und Full Table Scans ausgelöst werden müssen...  Dann wäre VNC oder ähnliches sinnvoll.


Nur falls Full Table Scans nicht bekannt sind:

Die Applikation schickt zB bei der Anmeldung die Query "Sag mir, ob der Benutzer 'Bubu Franz' das Kennwort '354764872' hat".

Die Datenbank hat dann 2 Möglichkeiten:
- Wenn sie einen Index auf die Felder hat, liest sie die passenden Indexblöcke für Benutzer 'Bubu Franz' (z.B.: 9 zu je 8KB) und findet so raus, dass die Antwort in Datensatz Nummer 123'456'789 steht. Dann liest sie noch den Datenblock (also z.B. auch 8KB) - und hat alle I/Os abgeschlossen. Kostet also im Beispiel 80 KB an Daten, die aus dem File gelesen werden müssen. Die 80 KB werden kaum wehtun, selbst wenn alle Filezugriffe über das Netz passieren.
- Wenn sie aber _KEINEN_ Index hat, muss sie aber im Extremfall _alle_ Datensätze der Tabelle auslesen - das wäre ein Full Table Scan. Wenn das ein Datenbankfile ist, das 10 GB groß ist - dann müssten 10 GB über das Internet übertragen werden - das ist also zu vergessen.


Daher: Wenn die Datenbank sauber ist, passieren alle I/Os eh auf der Maschine mit den Datenbankfiles. Dann wird die VPN-Lösung um Eckhäuser schneller sein als VNC/...
Wenn die Datenbank Indizes verwendet und die Masse der Zugriffe über Index rennt (das ist bei sauberen Datenbanken auch so) - dann wäre es sogar [fast] wurscht, wenn die Files über das Netz übertragen werden müssen - die VPN-Lösung wäre noch immer besser.

Nur wenn beides nicht erfüllt ist - kann VNC/... Sinn machen. Da würde ich aber vorab in gottesgerechtem Zorn die Entwickler mit einem Löffel totprügeln - vgl. http://www.youtube.com/watch?v=9VDvgL58h_Y

Genau wissen können wir es nicht - weil wir deine Applikation nicht kennen - daher ausprobieren.

OpenVPN ist sehr stark - und recht einfach zu konfigurieren, Du wirst es in längstens 2-3 Stunden haben (inklusive Testungen). Daher einfach ausprobieren.

Antworten PM Übersicht Chronologisch Zum Vorgänger
 
Melden nicht möglich
 

Dieses Forum ist eine frei zugängliche Diskussionsplattform.
Der Betreiber übernimmt keine Verantwortung für den Inhalt der Beiträge und behält sich das Recht vor, Beiträge mit rechtswidrigem oder anstößigem Inhalt zu löschen.
Datenschutzerklärung