6.1.1

6.1.1 Χαρακτηριστικά NoSQL Βάσεων Δεδομένων
Σχετικά με ότι έχει αναφερθεί έως τώρα, το βασικότερο πεδίο εφαρμογών που διακρίνονται οι βάσεις NoSQL είναι αυτό των δικτυακών εφαρμογών μεγάλου εύρους. Μήπως αυτό σημαίνει ότι θα διερευνούμε την αναγκαιότητα χρήσης NoSQL βάσεων δεδομένων μόνο στις περιπτώσεις που μας απασχολούν προβλήματα κλίμακας της εφαρμογής; //Φυσικά όχι!// Οι NoSQL βάσεις δεδομένων έχουν πολλά περισσότερα να προσφέρουν πέρα από την επίλυση των προβλημάτων της κλίμακας.

Πιο συγκεκριμένα, όφελος από την χρήση τους μπορούμε να έχουμε εκμεταλλευόμενοι και τα παρακάτω χαρακτηριστικά τους:


 * **Αδόμητη ή ημιδομημένη αναπαράσταση δεδομένων** (schemaless data representation): Η πλειοψηφία των NoSQL βάσεων ακολουθούν αδόμητη ή ημιδομημένη αναπαράσταση δεδομένων. Αυτό σημαίνει ότι δεν χρειάζεται να προβλέψουμε το μοντέλο δεδομένων που θα χρειαστεί η εφαρμογή μας στο μακρινό μέλλον, αλλά να καθορίσουμε την δομή που είναι κατάλληλη στο παρόν και να την εξελίσσουμε στο χρόνο ανάλογα με τις ανάγκες μας, όπως για παράδειγμα να προσθέτουμε νέα “πεδία” μόνο στις “εγγραφές” που αυτό είναι απαραίτητο.
 * **Ταχύτητα ανάπτυξης εφαρμογής**: Για την χρήση μιας NoSQL βάσης δεν χρειάζεται πάντα η γνώση μιας ξεχωριστής γλώσσας, όπως η SQL, αλλά μας διατίθενται βιβλιοθήκες (APIs) η χρήση των οποίων ακολουθεί την μορφή της γλώσσας ανάπτυξης της εφαρμογής (π.χ. javascript, ή php) διευκολύνοντας έτσι τον προγραμματιστή.
 * **Ταχύτητα απόκρισης**: Η τεχνολογία ανάπτυξης των NoSQL βάσεων δεδομένων, έχοντας σαν σκοπό να καλύψει τις ανάγκες του μεγάλου αριθμού πιθανών χρηστών των διαδικτυακών εφαρμογών, πετυχαίνει ταχύτατους χρόνους απόκρισης, κάτι που κάνει την εμπειρία χρήσης αυτών των εφαρμογών περισσότερο επιτυχημένη.
 * **Προσαρμοστικότητα στον φόρτο**: Τα περισσότερα συστήματα διαχείρισης NoSQL βάσεων δεδομένων είναι σχεδιασμένα με τρόπο ώστε, χωρίς να χρειάζονται ιδιαίτερες ρυθμίσεις και πρόβλεψη διαθεσιμότητας σε υποδομές, να ανταποκρίνονται άμεσα σε μεγάλες αλλαγές στις απαιτήσεις των χρηστών. Έτσι δεν υπάρχει μεγάλη δυσκολία (και είναι οικονομικό) να αναπτύσσουμε εφαρμογές, οι οποίες να λειτουργούν το ίδιο καλά με μικρούς αλλά και μεγάλους αριθμούς χρηστών, ακόμα και αν αυτοί οι αριθμοί αλλάζουν απότομα από στιγμή σε στιγμή. Με άλλα λόγια οι NoSQL βάσεις μπορούν αν διαχειρίζονται ικανοποιητικά ξαφνικές αιχμές του φόρτου.

Η παραπάνω λίστα με τα θετικά χαρακτηριστικά των NoSQL βάσεων φυσικά δεν είναι με κανένα τρόπο πλήρης. Ένα επιπλέον θετικό σημείο που πρέπει να προσθέσουμε είναι ότι οι περισσότερες από τις NoSQL βάσεις δεδομένων είναι ΕΛ/ΛΑΚ και η εξέλιξή τους υποστηρίζεται από την παγκόσμια κοινότητα προγραμματιστών.