El:Βάση δεδομένων

From OpenStreetMap Wiki
(Redirected from El:Database)
Jump to navigation Jump to search

Η κύρια βάση δεδομένων είναι ένα βασικό κομμάτι του OpenStreetMap, καθώς εκεί βρίσκονται όλα μας τα δεδομένα (προφανώς).

Αξίζει να σημειωθεί ότι αυτή δεν είναι η μόνη βάση δεδομένων που χρησιμοποιείται για την δημιουργία χαρτών. Δείτε τη επισκόπηση στοιχείων για να δείτε τι άλλες βάσεις δεδομένων υπάρχουν.

Η πρόσβαση στην κύρια βάση δεδομένων για την επεξεργασία γίνεται μέσω του API. Αν θέλετε να λάβετε δεδομένα δείτε APIs για πολλές διαθέσιμες επιλογές.

Μοντέλο δεδομένων

Σχήμα κύριας βάσης δεδομένων OSM, παρουσίαση με λογισμικό Navicat

Η βάση δεδομένων περιέχει πίνακες για κάθε τύπο στοιχείου (κόμβοι, γραμμές και σχέσεις). Για την ακρίβεια, κάθε ένα από αυτά είναι πολλαπλοί πίνακες δεδομένων: current (τρέχων), history (ιστορικό), current_tags (τρέχουσες ετικέτες), και history_tags (ιστορικές ετικέτες). Επίσης υπάρχουν πίνακες στη βάση δεδομένων για την αποθήκευση συνόλων αλλαγών, αρχείων gpx, χρηστών, καταχωρήσεις σε ημερολόγια, συνεδριών, OAuth, κτλπ.

Σχήμα βάσης δεδομένων: https://github.com/openstreetmap/openstreetmap-website/blob/master/db/structure.sql, Rails port/Database schema.

Μεγέθη πινάκων στη συστάδα της κύριας βάσης δεδομένων: Database/TableInfoDump

Χρησιμοποιούνται ευρετήρια QuadTiles για όλους τους κόμβους για γρηγορότερα επερωτήματα (κάντοντας χρήση ενός ευρετηρίου B-tree σε PostgreSQL).

Οι βάσεις δεδομένων σε άλλα μέρη θα έχουν διαφορετική δομή. Για παράδειγμα, οι εφαρμογές χρειάζονται μόνο τα τρέχονται δεδομένα του χάρτη. Διαφορετικά εργαλεία OSM χρησιμοποιούν διαφορετικές διατάξεις για τις βάσεις δεδομένων τους (δείτε El:Βάσεις_δεδομένων#Σχήματα_βάσεων_δεδομένων).

Postgres server instance

Για προβλήματα δείτε Platform Status.

H συστάδα ρυθμίζεται μέσω της διαμόρφωσης Chef, που βρίσκεται στη διεύθυνση: https://github.com/openstreetmap/chef

Το τι συμβαίνει σε κάθε μηχάνημα ορίζεται στους ρόλους και η ρύθμιση των μηχανημάτων που σχετίζονται με τη βάση δεδομένων ελέγχεται από το "db" cookbook. https://github.com/openstreetmap/chef/tree/master/roles https://github.com/openstreetmap/chef/tree/master/cookbooks/db

Σταστιστικά βάσης δεδομένων

Διαθέτουμε παρακολούθηση Munin για όλους τους διακομιστές (γραφήματα σε πραγματικό χρόνο με την χρήση των πόρων διακομιστή).

Υπάρχει επίσης το https://hardware.openstreetmap.org/, το οποίο δημιουργείται αυτόματα από την διαμόρφωση Chef.

Δείτε επίσης την σελίδα Στατιστικά.

Ιστορικό

19 Απριλίου 2009 - Το OpenStreetMap άλλαξε από διακομίστη [[{LL|MySQL}}|MySQL]] σε [[{LL|PostgreSQL}}|PostgreSQL]] για την κύρια ιστοσελίδα του [1] που είναι τμήμα του rails port.

1 Απριλίου 2012 - ξεκίνησε η διαδικασία της μεταφοράς σε νέο διακομιστή.