v.charalab Posted June 4, 2012 Report Share Posted June 4, 2012 Αντιγράφω από απάντηση του Παναγιώτη Καναβού στο dotnetzone.gr: (http://www.dotnetzone.gr/cs/forums/70513/ShowThread.aspx#70513) Πιο συντηρητική λύση, εφόσον μιλάμε για ένα γραφείο, είναι να στηθεί SQL Server και στο δεύτερο γραφείο και να στηθεί replication μεταξύ των δύο βάσεων. Τα περισσότερα δεδομένα έτσι κι αλλιώς δεν αλλάζουν συνέχεια και μπορούν να αντιγράφονται σχετικά αραιά π.χ. μέσω merge replication. Για δεδομένα που πρέπει να εμφανίζονται και στις δύο βάσεις όσο γίνεται γρηγορότερα μπορεί να χρησιμοποιηθεί transactional replication. Και εδώ έρχεται η ερώτηση μου: Είναι κάτι που θα καταφέρω μόνος ενώ δεν το έχω δει ποτέ να γίνεται αν ακολουθήσω το roadmap (εδώ) Είναι γενικά κάτι που δουλεύει καλά? Τι κινδύνους παίζει να αντιμετωπίσω? Οι τοπολογία είναι: ένα κτίριο στο Ηράκλειο και ένα στην Αθήνα που συνδέονται με VPN το οποίο είναι βασισμένο σε 2 WatchGuard πάνω σε Vodafone γραμμές (Business double play). Ένα XTM505 και ένα XTM22. Πάνω στο VPN αυτό παίζει ήδη DFSR μεταξύ των 2 server οι οποίοι είναι και DC's. Επίσης πάνω από το VPN περνά και IP τηλεφωνία μεταξύ 2 τηλ κέντρων Panasonic. Ευχαριστώ εκ των προτέρων για το ενδιαφέρον και ευελπιστώ στις προτάσεις σας. Link to comment Share on other sites More sharing options...
antonch Posted June 4, 2012 Report Share Posted June 4, 2012 Καλησπέρα Εκτός από το roadmap, έχω έδω και καιρό μιλήσει για αυτό στο 7ο SQL Server Saturday Night το οποίο μπορείς να βρεις από εδω (http://www.sqlschool.gr/pages/SqlSaturdayNights.aspx). Το replication είναι κάτι το οποίο δουλεύει καλά. Ιδιαίτερα όμως το transactional replication χρειάζεται αξιοπιστία στην γραμμή και ταχύτητα. Θα έλεγα ότι καλύτερα να ήταν σε ξεχωριστή γραμμή αλλά αν αυτό δεν παίζει σαν σενάριο τότε καλό θα είναι να μην είναι αυτή υπερφορτωμένη. Προσωπικά έχω υλοποίησει αρκετές λύσεις replication με μεγάλο όγκο δεδομένων πάνω από ΤΒ. Δες το SQL Saturday Night και τα λέμε ξάνα. Φιλικά Link to comment Share on other sites More sharing options...
v.charalab Posted June 12, 2012 Author Report Share Posted June 12, 2012 Το παρακολούθησα και είναι μια χαρά για μένα που το βλέπω και πρώτη φορά το θέμα. Με ενδιαφέρει το merge replication. Έφτιαξα ένα demo αλλά είχα θέματα με τα primary keys όταν και ο Publisher και ο Subsciber έγγραφαν στον ίδιο πίνακα ταυτόχρονα. Γενικά τι τακτική είναι σωστό να ακολουθείς με τα primary? Να κάνεις κάποιο άλλου είδους primary εκτός του τύπου int? και αν ναι πως γιατί δεν το έχω ξανακάνει. Ευχαριστώ εκ των προτέρων και πολλά μπράβο και πολλά ευχαριστώ για το school σου. Link to comment Share on other sites More sharing options...
antonch Posted June 13, 2012 Report Share Posted June 13, 2012 Το Merge είναι από το δύσκολα σενάρια σε υλοποίηση καθώς το μεγάλο θέμα είναι αυτό που αντιμετώπισες. Η ιδανική λύση για αυτό είναι να έχεις composite primary key πχ στο πίνακα των τιμολογίων το κλειδί θα είναι ο κωδικός του καταστήματος και ο αριθμός του τιμολογίου. Υπάρχουν και άλλες λύσεις όπως όταν έχεις το primary key identity μπορείς να πεις για καθε εμπλεκόμενη replica το διάστημα από όπου θα παίρνει τιμές ή να έχεις uniqueidentifier αλλά δεν στο συνιστώ. Προσωπικά εφόσον έχω την δυνατότητα να πειράξω το σχήμα της βάση φτιάχνω composite primary keys. Link to comment Share on other sites More sharing options...
Recommended Posts