Σημείωση
Η πρόσβαση σε αυτή τη σελίδα απαιτεί εξουσιοδότηση. Μπορείτε να δοκιμάσετε να συνδεθείτε ή να αλλάξετε καταλόγους.
Η πρόσβαση σε αυτή τη σελίδα απαιτεί εξουσιοδότηση. Μπορείτε να δοκιμάσετε να αλλάξετε καταλόγους.
Αυτό το άρθρο περιλαμβάνει σημαντικά βήματα για τη βελτιστοποίηση των επιδόσεων της βάσης δεδομένων προέλευσης και κατοπτρισμού βάσης δεδομένων από τον SQL Server στο Microsoft Fabric.
Έλεγχος απόδοσης σάρωσης
Όταν ο κατοπτρισμός είναι ενεργοποιημένος σε πίνακες μιας βάσης δεδομένων, μια διαδικασία σάρωσης καταγράφει περιοδικά τις αλλαγές με τη συγκομιδή του αρχείου καταγραφής συναλλαγών. Αυτή η διαδικασία ξεκινά από το LSN της παλαιότερης μη αναπαραγόμενης δεσμευμένης συναλλαγής και σαρώνει τις επόμενες αναπαραγόμενες συναλλαγές N-1, όπου το N αντιπροσωπεύει τον αριθμό των συναλλαγών που καθορίζονται χρησιμοποιώντας την @maxtrans παράμετρο στο sys.sp_change_feed_configure_parameters. Η maxtrans τιμή της παραμέτρου υποδεικνύει τον μέγιστο αριθμό συναλλαγών προς επεξεργασία σε κάθε κύκλο σάρωσης.
Σε περιπτώσεις όπου ο λανθάνων χρόνος σάρωσης είναι πολύ υψηλός, η χρήση υψηλότερης maxtrans τιμής μπορεί να είναι επωφελής, ενώ σε περιπτώσεις που περιλαμβάνουν αραιά αναπαραγόμενες ή σχετικά μεγάλες συναλλαγές, μπορεί να είναι προτιμότερη μια χαμηλότερη maxtrans ρύθμιση. Η λειτουργία δυναμικών μέγιστων συναλλαγών βελτιστοποιεί αυτήν τη διαδικασία προσδιορίζοντας αυτόματα τη βέλτιστη maxtrans τιμή κατά τη διάρκεια κάθε σάρωσης με βάση άλλους παράγοντες όπως η χρήση του αρχείου καταγραφής, ο λανθάνων χρόνος σάρωσης και ο φόρτος εργασίας. Όταν είναι ενεργοποιημένη η dynamicmaxtrans ρύθμιση αλλαγής τροφοδοσίας, το Fabric προσαρμόζει δυναμικά την παράμετρο maxtrans, διασφαλίζοντας τη βέλτιστη απόδοση σάρωσης.
Επαληθεύστε τη ρύθμιση της δυνατότητας δυναμικών μέγιστων συναλλαγών με sys.sp_help_change_feed_settings ή χρησιμοποιήστε repl_logscan_dynamic_maxtrans εκτεταμένο συμβάν για να παρακολουθείτε τις τιμές χρόνου εκτέλεσης για κάθε σάρωση.
Για να ενεργοποιήσετε τη δυνατότητα δυναμικών μέγιστων συναλλαγών, ορίστε @dynamicmaxtrans την τιμή .1 Για παράδειγμα:
USE <Mirrored database name>
GO
EXECUTE sys.sp_change_feed_configure_parameters
@dynamicmaxtrans=1;
Για να τροποποιήσετε τα μέγιστα και κατώτερα όρια για τη δυνατότητα δυναμικών μέγιστων συναλλαγών, χρησιμοποιήστε @maxtrans και @dynamicmaxtranslowerbound αντίστοιχα. Για παράδειγμα:
USE <Mirrored database name>
GO
EXECUTE sys.sp_change_feed_configure_parameters
@dynamicmaxtrans=1
, @dynamicmaxtranslowerbound=5
, @maxtrans=5000;
Ζητήματα που πρέπει να λάβετε υπόψη για τη ρύθμιση δυναμικών μέγιστων συναλλαγών
Η δυνατότητα δυναμικών μέγιστων συναλλαγών είναι ενεργοποιημένη από προεπιλογή στον SQL Server 2025. Η δυνατότητα δυναμικών μέγιστων συναλλαγών είναι ενεργοποιημένη και δεν είναι δυνατή η διαχείριση ή η απενεργοποίησή της στη βάση δεδομένων SQL Azure και στη διαχειριζόμενη παρουσία SQL Azure.
Όταν είναι ενεργοποιημένη η δυναμική maxtrans, ο κατοπτρισμός επεξεργάζεται έως και 10.000 συναλλαγές (από προεπιλογή) ή τη ρυθμισμένη μέγιστη τιμή συναλλαγών κατά τη φάση σάρωσης του αρχείου καταγραφής. Για να αποφευχθεί η υπερβολική εκτέλεση αυτής της φάσης, επιβάλλεται χρονικό όριο τριών λεπτών. Τυχόν συναλλαγές που υποβάλλονται σε επεξεργασία πριν από τη λήξη του χρονικού ορίου δημοσιεύονται στη βάση δεδομένων κατοπτρισμού και οι υπόλοιπες συναλλαγές θα καταγράφονται κατά την επόμενη σάρωση.
Οι βέλτιστες τιμές για τη δυνατότητα δυναμικών μέγιστων συναλλαγών διαφέρουν ανάλογα με τον φόρτο εργασίας, τον λανθάνοντα χρόνο και άλλους παράγοντες. Εξετάστε το ενδεχόμενο ενεργοποίησης της δυναμικής λειτουργίας maxtrans όταν ο λανθάνων χρόνος είναι υψηλότερος από τον επιθυμητό και transaction_count σε κάθε παρτίδα είναι μεγαλύτερος από τη ρύθμιση κατώτερου ορίου (200, από προεπιλογή). Αυτό μπορεί να παρακολουθείται χρησιμοποιώντας τη latency στήλη μέσα sys.dm_change_feed_log_scan_sessions ή χρησιμοποιώντας το εκτεταμένο συμβάν repl_logscan_dynamic_maxtrans για να δείτε αν φτάνει current_maxtrans στο maxtrans σύνολο. Εάν ο λανθάνων χρόνος εξακολουθεί να είναι υψηλός, εξετάστε το ενδεχόμενο να αυξήσετε το maxtrans ανώτατο όριο χρησιμοποιώντας sys.sp_help_change_feed_settings.
Χρησιμοποιήστε το εκτεταμένο συμβάν repl_logscan_dynamic_maxtrans για να παρακολουθείτε εάν τα χρονικά όρια συμβαίνουν συχνά. Το πεδίο prev_phase2_scan_termination_reason θα έχει μια τιμή LogScanTerminationReason_MaxScanDurationReached όταν συμβεί ένα χρονικό όριο από τη σάρωση. Εξετάστε το ενδεχόμενο να μειώσετε maxtrans ή να απενεργοποιήσετε το δυναμικό maxtrans χρησιμοποιώντας sys.sp_help_change_feed_settings εάν παρατηρήσετε συχνά χρονικά όρια.
Διαχείριση πόρων για κατοπτρισμό SQL Server
Στον SQL Server 2025, μπορείτε να δημιουργήσετε ένα χώρο συγκέντρωσης διαχειριστών πόρων για να διαχειριστείτε και να περιορίσετε τον φόρτο εργασίας του κατοπτρισμού Fabric στον SQL Server σας. Μπορείτε να χρησιμοποιήσετε το ρυθμιστή πόρων για να διαχειριστείτε την κατανάλωση πόρων του μηχανισμού βάσης δεδομένων και να επιβάλετε πολιτικές για φόρτους εργασίας χρηστών. Ο διαχειριστής πόρων σάς επιτρέπει να δεσμεύετε ή να περιορίζετε διάφορους πόρους διακομιστή, συμπεριλαμβανομένης της ποσότητας CPU, μνήμης και φυσικής εισόδου/εξόδου που μπορούν να χρησιμοποιήσουν οι φόρτοι εργασίας ερωτήματος χρήστη. Με αυτόν τον τρόπο, μπορείτε να προστατεύσετε τους κύριους φόρτους εργασίας της επιχείρησής σας από την πίεση από τη συλλογή δεδομένων ροής αλλαγών του Fabric Mirroring. Για περισσότερες πληροφορίες, ανατρέξτε στο θέμα Διαχειριστής πόρων.
Για να ξεκινήσετε τη ρύθμιση παραμέτρων ομάδων φόρτου εργασίας στον SQL Server 2025 για κατοπτρισμό δομής, χρησιμοποιήστε το ακόλουθο δείγμα δέσμης ενεργειών και οδηγιών.
- Μπορείτε να επιλέξετε οποιοδήποτε όνομα για το
RESOURCE POOLαρχείο . - Αυτό το δείγμα δέσμης ενεργειών ρυθμίζει τις παραμέτρους ενός ανώτατου ορίου για ένα επιθυμητό ποσοστό CPU ώστε να επιτρέπεται ο κατοπτρισμός Fabric. Το παρακάτω δείγμα χρησιμοποιεί
50για 50 τοις εκατό. Αυτή η τιμή είναι το μέγιστο μέσο εύρος ζώνης CPU που μπορούν να λάβουν όλες οι αιτήσεις στο χώρο συγκέντρωσης πόρων όταν υπάρχει διένεξη CPU. Χρησιμοποιήστε χαμηλότερη τιμή για περαιτέρω στραγγαλισμό του κατοπτρισμού υφασμάτων. - Τα
WORKLOAD GROUPονόματα πρέπει να ταιριάζουν με τις τιμές στο παράδειγμα δέσμης ενεργειών. Κάθε ομάδα φόρτου εργασίας προορίζεται για μια συγκεκριμένη φάση κατοπτρισμού. Κάθε ομάδα φόρτου εργασίας μπορεί να βρίσκεται στον ίδιο ή διαφορετικό χώρο συγκέντρωσης, ανάλογα με τον τρόπο με τον οποίο σχεδιάζετε τους χώρους συγκέντρωσης πόρων και τους φόρτους εργασίας. - Πριν ρυθμίσετε τις παραμέτρους του ρυθμιστή πόρων για πρώτη φορά στην παρουσία του SQL Server, εξετάστε προσεκτικά την τεκμηρίωση, τα παραδείγματα και τις βέλτιστες πρακτικές του Resource governor.
--Create resource pool for Fabric mirroring
CREATE RESOURCE POOL [ChangeFeedPool] WITH (MAX_CPU_PERCENT = 50);
--Create workload groups for Fabric mirroring. Do not modify.
CREATE WORKLOAD GROUP [x_ms_reserved_changefeed_snapshot_group] USING [ChangeFeedPool];
CREATE WORKLOAD GROUP [x_ms_reserved_changefeed_capture_group] USING [ChangeFeedPool];
CREATE WORKLOAD GROUP [x_ms_reserved_changefeed_publish_group] USING [ChangeFeedPool];
CREATE WORKLOAD GROUP [x_ms_reserved_changefeed_commit_group] USING [ChangeFeedPool];
CREATE WORKLOAD GROUP [x_ms_reserved_changefeed_notification_group] USING [ChangeFeedPool];
Για να εφαρμόσετε τις αλλαγές και να ενεργοποιήσετε τον διαχειριστή πόρων, ως συνήθως:
ALTER RESOURCE GOVERNOR RECONFIGURE