unixforum.net - Der Treffpunkt für UNIX Fans Der Treffpunkt für UNIX Fans seit 2002
  Übersicht   Forum   Hilfe Suche Einloggen Registrieren   *
Suche
Google
Erweiterte Suche
Willkommen Gast. Bitte einloggen oder registrieren.
24. Mai 2012, 03:16:12

Einloggen mit Benutzername, Passwort und Sitzungslänge
Letzte 5 Shouts:
31. Dezember 2011, 22:28:22
Dann mal einen guten Rutsch!

Greez aus der Noris
25. September 2011, 08:05:05
Gute Besserung!
07. September 2011, 14:20:51
An diesem Tag hattest du also kein(en) Plan. Wink
04. September 2011, 19:04:39
ja, genau die. Bei mir war der Server wohl genau diesen Tag down. Alternative:
http://lsub.org/sys/src
01. September 2011, 20:10:10
Spenden
Berechtigungen

Anzeige
Anzeige
Seiten: [1]   Nach unten
  Drucken  
Autor Thema: files als datenbank ?  (Gelesen 786 mal)
tassilo
Unix Master
****
Offline Offline

Beiträge: 379



Profil anzeigen
« am: 15. Juni 2011, 15:10:32 »

moin moin

hab heute einen komischen vorgang auf den tisch bekommen und wollte mal eure meinung dazu hören.

problem : rechner (gut ausgestattet) antwortet nur sehr langsam nach einspielen von "livedaten". ich gucks mir an. sehe ich doch 3 verzeichnisse min insgesammt 18,8 millionen dateien da drin. das kann doch nicht performant sein.
der entwickler hält dagegen er habe das so gelernt und das sei das "nonplusultra"... hmm ein rm auf eine datei braucht schon -je nach verzeichnis- zwischen 40 sek und 3 minuten... lange wartezeiten auf io usw..
da ich ja nur n popeliger system engineer bin und der entwickler "master developer mit doktortitel" hab ich nun den schwarzen peter und muss die maschiene schnell machen damit sein system läuft. aber irgendwie glaub ich immer noch nicht das millionen von kleinen dateien in einem verzeichnis performant sein sollen...

grüße

tassilo
Gespeichert
unixforum.net - Der Treffpunkt für UNIX Fans
« am: 15. Juni 2011, 15:10:32 »

 Gespeichert
Toktar
Unix Junior
**
Offline Offline

Beiträge: 52



Profil anzeigen
« Antworten #1 am: 15. Juni 2011, 15:22:06 »

Hast Du noch weitere Daten? Filesystem/OS, Single IDE-Platte/Raid10 aus 15kSAS, Blockgröße usw.

PS: das Entwickler mal irgendwas irgendwo so gelernt haben und danach lernresistent werden ist allgemein bekannt....
Gespeichert

Toktar
--
Jawoll!
Und DNS braucht's nicht, das ist was fuer Weicheier, die sich keine Zahlen merken koennen.
[Karlheinz Boehme in dcsf]
Fleedwood
Unix Guru
*****
Offline Offline

Beiträge: 734


Profil anzeigen
« Antworten #2 am: 15. Juni 2011, 15:28:50 »

das ist nicht performant mit Standard Directory Zugriff. Es gibt da btree/hashes zur Directory Verwaltung, die
könnten das abfangen (keine persönliche Erfahrung damit), aber Datenbank schreibt man anders. Das dumme
bei sowas ist einfach, daß man hier mit Metadaten rumdaddelt für die oftmals anderes Caching betrieben wird
um eben im Fall eines Crashes nicht das ganze Filesystem zu verlieren. Das drückt alles auf die Performance.

BTW. je nach Filesystem ist mit dem Wahnsinn bei ~2^32 Dateine Schluß, weil dann die Max Inode Grenze erreicht ist.

Thomas.
Gespeichert

life is too short to spend debugging Intel parts [Van Jacobson]
tassilo
Unix Master
****
Offline Offline

Beiträge: 379



Profil anzeigen
« Antworten #3 am: 15. Juni 2011, 17:35:48 »

Hast Du noch weitere Daten? Filesystem/OS, Single IDE-Platte/Raid10 aus 15kSAS, Blockgröße usw.

"normaler" server , 4 core, 16gb ram, 6 sata platten (raid5 mit raidcontroller) -imho- 10k platten, 4k blockgröße, sles11 (ich kann morgen mal nach den eckdaten gucken, habe es für heute erst mal verdrängt)

grüße

tassilo
Gespeichert
Fleedwood
Unix Guru
*****
Offline Offline

Beiträge: 734


Profil anzeigen
« Antworten #4 am: 15. Juni 2011, 18:35:54 »

"normaler" server , 4 core, 16gb ram, 6 sata platten (raid5 mit raidcontroller) -imho- 10k platten, 4k blockgröße, sles11 (ich kann morgen mal nach den eckdaten gucken, habe es für heute erst mal verdrängt)

welches Filesystem ? Wenns ext3 ist, kann man mit  "tune2fs -O dir_index" b-tree hashes einschalten.

Thomas.
Gespeichert

life is too short to spend debugging Intel parts [Van Jacobson]
unixforum.net - Der Treffpunkt für UNIX Fans
« Antworten #4 am: 15. Juni 2011, 18:35:54 »

 Gespeichert
oreissig
Unix Bachelor
***
Offline Offline

Beiträge: 132


Profil anzeigen
« Antworten #5 am: 15. Juni 2011, 22:48:42 »

dass es quatsch ist seine daten in millionen von files abzulegen sollte auf der hand liegen. schon allein das ablegen ist mega ineffizient und wie er darauf effektiv sucht ist sicher auch spannend

ganz primär würd mich aber mal interessieren, wo er das denn gelernt haben will.
nur mal so vorsorglich, falls ich mal wieder was von dort höre, dass ich das nur mit nem guten schuss sarkasmus genieße.
Gespeichert
Marcus
Unix Rookie
*
Offline Offline

Beiträge: 41


Profil anzeigen
« Antworten #6 am: 16. Juni 2011, 01:06:35 »

Hallo!

Also, das letzte Mal, dass ich von so einer Konstruktion gehört habe, war das unter COMET (das war auf NIXDORF Quattro das, was heute SAP R/3 ist). Da wurden die Daten tatsächlich in Textdateien gespeichert. Aber das ist 25 Jahre her...

Das Ganze kann allerdings halbwegs sinnvoll sein, wenn eine Datei praktisch einen Datensatz darstellt. Dann kann man die nämlich ganz ohne Datenbank (Kosten, Einfachheit,...) anlegen, löschen, ändern und vorallem suchen! Die Arbeit nimmt einem nämlich das Dateisystem ab. Nur eine Volltextsuche ist vielleicht etwas zeitraubender. Man sollte aber darauf achten, dass sich die Satzgröße nicht verändert, sonst fragmentiert das Ganze und dann wird es echt ärgerlich. Man sollte auch die Blockgröße halbwegs anpassen, sonst wird das Ganze zur Geldverschwendung. Aber das ist ja heute nicht mehr so wild.

Also, machen kann man das. Ob es im Einzelfall sinnvoll ist, ist was anderes. Ich denke, um die Kiste schneller zu bekommen wäre ein schnelles Platten-Subsystem das vernünftigste. Kein RAID5, lieber 10, und Platten, die niedrige Zugriffszeiten haben. Ob "viel Cache" sinnvoll ist, hängt davon ab, in welcher Reihenfolge voraussichtlich auf die Dateien zugegriffen wird.

Alles in Allem ist das aber trotzdem eher eine Bastellösung als professionelles Datenmanagement.

Gruß!
Gespeichert
Toktar
Unix Junior
**
Offline Offline

Beiträge: 52



Profil anzeigen
« Antworten #7 am: 16. Juni 2011, 07:39:18 »

Wenn Du das mit Technik erschlagen musst, dann würde ich auch RAID10 machen, möglicherweise auch noch Btrfs. Ich weiß nur aus dem Hut nicht, ob SLES 11 das schon supportet. SSD wären auch noch eine Option, alles eine Frage der finanziellen Möglichkeiten.

<Ironie> Als ich noch 8bit Assembler programmierte und jedes Register kannte, ja da war das schon so........</Ironie>
Gespeichert

Toktar
--
Jawoll!
Und DNS braucht's nicht, das ist was fuer Weicheier, die sich keine Zahlen merken koennen.
[Karlheinz Boehme in dcsf]
tassilo
Unix Master
****
Offline Offline

Beiträge: 379



Profil anzeigen
« Antworten #8 am: 16. Juni 2011, 08:25:58 »

moin

da wir noch eine ramdisk herumliegen haben (steckkarte mit 4gb und akkupack) werd ich das mal versuchen da das erst mal nix kostet. daten sind nicht viel, nur viele dateien. dann ein sync alle 15 min auf platte was sich geändert hat. sollte -imho- doch schon was bringen.

grüße

tassilo
Gespeichert
tassilo
Unix Master
****
Offline Offline

Beiträge: 379



Profil anzeigen
« Antworten #9 am: 16. Juni 2011, 13:04:23 »

kurzes update... die ramdisk bringt eine menge. nur das "syncen auf platte" macht probleme. ein rsync braucht gut 1,5h für das "hole fileliste" was gegen die idee spricht das alles 15 min laufen zu lassen. wäre zu schön gewesen. also doch ssd

grüße

tassilo
Gespeichert
Seiten: [1]   Nach oben
  Drucken  
 
Gehe zu:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.11 | SMF © 2006, Simple Machines LLC
TinyPortal v0.9.8 © Bloc
Prüfe XHTML 1.0 Prüfe CSS
sonnenblen.de, mood-indigo.org, unixforum.net und realcomputers.org sind Projekte der steinbruch.info GbR

Google war zuletzt hier Heute um 01:26:34