Zum Inhalt springen

Empfohlene Beiträge

Geschrieben

Hallo zusammen,

komme bei einer Lösung einfach nicht auf die korrekt angegebene Lösung von der IHK...

Vllt. könnt ihr mit ja helfen

Die Daten der Gemälde sollen in einer Datenbank folgender Struktur abgeleogt werden.

Bildname(char40)

Maler(char40)

Erstellungsjahr(integer)

Breite(integer)

Höhe(integer)

Verkauft(boolean)

Preis(Float)

- Integer 64 Bit, Float 32 Bit, Char und Boolean 1 Byte

- Blockgröße 4 Kilobyte

- Jeder Block soll bis zu maximal 80 % belegt werden (also 4/100*80 = 3,2 Kilobyte)

- In einem Block sollen nur ganze Datensätze abgelegt werden.

Ermitteln Sie die Anzahl Blöcke die für eine Tabelle mit 5.000 Bildern reserviert werden müssen.

Ich habe folgendes gerechnet:

Pro Bild fallen 248 Bit(3xinteger,2xchar,boolean,float) an

Ein Block hat 3,2*1024*8 = 26214,4 Bit zur Verfügung

26214,4/248= 105,7032258 Bilder passen pro Block abgerundet 105

Nun teile ich doch einfach die 5000 Bilder durch Anzahl Bilder/Block (5000/105=47,619...)

also wäre mein Ergebnis 48 Blöcke lt. IHK sollte es 167 sein....

Hab ich nen schwerwiegenden Fehler in meiner Rechnung?

Ja ich weis... die Schreibweise ist nicht die beste^^

Geschrieben

Moin,

Du rechnest:

4*0.8*1024 = 3276.8

Dann: 3276.8 / 109Byte = 30,06238532 (Uns intresiert nur die Zahl vor dem Komma!)

Dann: 5000 / 30 = 166,6666667 ( hier runden wir nun auf 167 ^^)

Du musst natürlich aus den 64Bit Byte machen also 64/8 = 8 Byte....

und das gleiche bei 32Bit / 8 = 4Byte......

Gruß, Moritz

Geschrieben (bearbeitet)

Also ich komme gerundet auf 166 nicht 167...meint ihr das is schlimm? Gibts da wenigstens noch Teilpunkte?

Blockgröße 4 kilobyte (max blockgröße 80%: 4/100*80 = 3,2kb)

Bildname: 40*1byte = 40 byte

Maler: 40*1 byte = 40 byte

Erstellungsjahr: 64 bit (64 bit / 8 = 8 byte)

Breite 64 bit (64 / 8 = 8 byte)

Höhe: 64 bit (64 / 8 = 8 byte)

Verkauft (1 byte)

preis 32 bit (32 /8 = 4 byte)

Ein Datensatz : 40+ 40 + 8 + 8 + 8 + 1 + 4 = 109 byte pro Datensatz

=========

109byte pro datensatz * 5000 = 545000 Byte insgesamt // in Kilobyte: geteilt durch 1024 = 532,226562 kbyte

532,226562kbyte : 3,2kbyte = = 166,32

Bearbeitet von Waschmaschine
Geschrieben

Soweit ich weis gibt es keine Teilpunkte in der Zwischenprüfung bin mir aber auch nicht sicher.

Bei dem Ergebnis bleibt dir aber nichts anderes als aufzurunden da du ja die Anzahl von Blöcken brauchst wo alle Daten unterkommen.

Folge mit 166 Blöcken würden dir 0,32 fehlen also musst du 167 Blöcke verwenden.

Dein Kommentar

Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.

Gast
Auf dieses Thema antworten...

×   Du hast formatierten Text eingefügt.   Formatierung wiederherstellen

  Nur 75 Emojis sind erlaubt.

×   Dein Link wurde automatisch eingebettet.   Einbetten rückgängig machen und als Link darstellen

×   Dein vorheriger Inhalt wurde wiederhergestellt.   Editor leeren

×   Du kannst Bilder nicht direkt einfügen. Lade Bilder hoch oder lade sie von einer URL.

Fachinformatiker.de, 2024 by SE Internet Services

fidelogo_small.png

Schicke uns eine Nachricht!

Fachinformatiker.de ist die größte IT-Community
rund um Ausbildung, Job, Weiterbildung für IT-Fachkräfte.

Fachinformatiker.de App

Download on the App Store
Get it on Google Play

Kontakt

Hier werben?
Oder sende eine E-Mail an

Social media u. feeds

Jobboard für Fachinformatiker und IT-Fachkräfte

×
×
  • Neu erstellen...