BonJovi Δημοσ. 7 Φεβρουαρίου 2011 Δημοσ. 7 Φεβρουαρίου 2011 Καλησπέρα, θα ήθελα να ρωτήσω σχετικά με το data storage και τα μεγέθη των πεδίων ενός πίνακα στη mysql. 1. Έστω ότι δηλώνουμε ένα πεδίο text σε έναν πίνακα. Ποιο είναι το μέγεθος του πεδίου? 4096 bytes ή 65536 bytes? 2. Έστω μία εγγραφή στον παραπάνω πίνακα, του οποίου η τιμή στο παραπάνω πεδίο είναι 'text goes here'. Όταν κάνεις select την εγγραφή από τον πίνακα, τι μέγεθος τραβάει? Τόσα bytes όσοι είναι και οι χαρακτήρες που αποτελούν την τιμή του πεδίου ή ολόκληρο το μέγεθος που δεσμεύει η mysql για το πεδίο text? 3. Έχω έναν πίνακα του οποίου το μέγεθος είναι 39.3 Mb(!). Ο πίνακας αποτελείται από 10,480 εγγραφές. Έχει νόημα να διαιρέσω τις δύο τιμές μεταξύ τους? Δηλαδή, στην ουσία κάθε εγγραφή έχει το ίδιο μέγεθος το οποίο ισούται με τα μεγέθη που δεσμεύονται από τη mysql για κάθε πεδίο του πίνακα?
taazz Δημοσ. 7 Φεβρουαρίου 2011 Δημοσ. 7 Φεβρουαρίου 2011 http://dev.mysql.com/doc/refman/5.0/en/storage-requirements.html
_tasos Δημοσ. 8 Φεβρουαρίου 2011 Δημοσ. 8 Φεβρουαρίου 2011 Το πεδίο TEXT αποθηκεύει μέχρι 65536 bytes. Αυτό μπορείς να το δεις σε ένα πίνακα στο link που έδωσε ο taazz. Τα TEXT πεδία είναι variable length. Αυτό σημαίνει ότι δεν αποθηκεύονται κάθε φορά τα 65536 bytes αλλά ακριβώς η τιμή (κείμενο) που δίνεις. Απλά στην αρχή του πεδίου αποθηκεύεται και το μέγεθος (σε bytes) της τιμής του πεδίου για να ξέρει πόσο να διαβάσει. Άρα οι εγγραφές σου δεν έχουν το ίδιο μέγεθος.
Προτεινόμενες αναρτήσεις
Αρχειοθετημένο
Αυτό το θέμα έχει αρχειοθετηθεί και είναι κλειστό για περαιτέρω απαντήσεις.