Database


μάθετε τα βασικά της SQL

databaseΗ γλώσσα προγραμματισμού σχεσιακών βάσεων δεδομένων SQL είναι εδώ και χρόνια ένα βασικό εργαλείο για την λειτουργία του web όπως τον ξέρουμε σήμερα και πλέον έχει φτάσει να χρησιμοποιείται σε μια σειρά  εφαρμογών ακόμη και σε κινητά τηλέφωνα (μέσω της SQLite).  Ο Rahul Batra ανέβασε στο Dream In Code ένα pdf e-book με κάποιες βασικές αρχές της SQL που νομίζω αξίζει να διαβάστε αν κάνετε τα πρώτα σας βήματα στην SQL (ή αν σκέφτεστε να τα κάνετε) νομίζω ότι είναι μια καλή αρχή.

Αν θέλετε ρίξτε του μια ματιά. Έχω εδώ και ένα τεταρτάκι που το διαβάζω και αν και σίγουρα οι δικές μου περιορισμένες γνώσεις καλύπτονται κάτι μου λέει ότι υπάρχουν αναγνώστες που μπορούν να φτιάξουν αντίστοιχα e-books και στην γλώσσα μας.


η Postgres πλέον στην έκδοση 9.1

Η βάση δεδομένων PostgreSQL (γνωστή στους φίλους ως Postgres) προχώρησε στην έκδοση 9.1 με τα ακόλουθα πρόσθετα χαρακτηριστικά σε σχέση με την προηγούμενη.

  • Συγχρονισμένο Replication: Επιτρέπει υψηλή διαθεσιμότητα (high-availability) με ταυτόχρονη εγγύηση ακεραιότητας δεδομένων πάνω από πολλαπλούς κόμβους.
  • Per-Column Collations: Υποστήριξη για γλωσσικά-σωστή ταξινόμηση ανά βάση δεδομένων, πίνακα ή στήλη. Ειδικά για εμάς που στην Ευρώπη χρησιμοποιούμε πολλές γλώσσες ταυτόχρονα είναι ότι πρέπει
  • Unlogged Tables: Βελτιώνει σε μεγάλο βαθμό την απόδοση χρήσης προσωρινών δεδομένων (φυσικά στην περίπτωση που κρασάρει αυτά τα tables δεν ανακτώνται)
  • K-Nearest-Neighbor Indexing: index στην «απόσταση» για ταχύτερο εντοπισμό και ερωτήματα αναζήτησης κειμένου κάτι που βελτιώνει ακόμη περισσότερο την απόδοση της βάσης μας
  • Serializable Snapshot Isolation : Διατηρεί ταυτόχρονα transactions χωρίς κλείδωμα, με χρήση της τεχνικής «true serializability» χωρίς να χρειάζεται να θυσιάστε τόσο throughput όσο πριν.
  • Writeable Common Table Expressions : Εκτέλεση πολύπλοκων και σε πολλαπλά στάδια ερωτημάτων αλλαγής δεδομένων σε ενα ερώτημα (ουσιαστικά επεκτείνει την σύνταξη with)
  • Ενίσχυση ασφάλειας : η PostgreSQL είναι η μόνη (!) βάση δεδομένων που ακολουθεί το πρότυπο SE-Linux (όπως αυτό αναπτύσσεται από την NSA (γνωστή και ως National Security Agency των ΗΠΑ). (ειδικά αν ασχολείστε με ευαίσθητες κυβερνητικές εφαρμογές καλό είναι να ρίξτε μια ματιά)
  • Foreign Data Wrappers: σύνδεση και ερωτήματα σε άλλες βάσεις δεδομένων (και όχι μόνο) πλην της PostgreSQL (χαρακτηριστικά παραδείγματα είναι SQL βάσεις δεδομένων όπως οι Oracle και MySQL, NoSQL βάσεις όπως οι CouchDΒ και Redis, η  δυνατότητα χρήσης του ODBC driver σε βάσεις δεδομένων όπως οι Oracle, DB2, Microsoft SQL Server, Sybase, Pervasive SQL, IBM Lotus Domino, MySQL, PostgreSQL ακόμη και η Microsoft Access καθώς και wrappers για CSV,ακόμη και για δυνατότητα να κατεβάζει κανείς Tweets (!))
  • Extensions: ευκολία στην φόρτωση, και διαχείριση νέων λειτουργιών της PostgreSQL πολλά από τα extensions της Postgres θα τα βρείτε στο PGXN

Κλείνοντας δεν μπορώ να μην μπω στο πειρασμό να αναφερθώ σε μερικούς από τους χρήστες της PostgreSQL όπως το Yahoo! (το οποίο διατηρεί μια βάση δεδομένων ιδιαίτερα τροποποιημένη στα εσωτερικά της querys αλλά συμβατή στο εξωτερικά της χαρακτηριστικά με την Postgres προκειμένου να χρησιμοποιεί διάφορα εξωτερικά εργαλεία), το MySpace (ναι κάποτε αυτό είχε τεράστια κίνηση), το OpenStreetMap, μέχρι και στον Διεθνή Διαστημικό Σταθμό (ναι αυτός με τα Android powered robot).

Περισσότερα για την Postgres μπορείτε να δείτε στο PostgresSQL.gr και στη σχετική ανακοίνωση για την PostgreSQL 9.1 στην οποία βασίστηκε το άρθρο αυτό.