際際滷

際際滷Share a Scribd company logo
SZPIEG Z KRAINY BAZY DANYCH
czyli Change Tracking w su甜bie MSSQL

Kamil Nowiski
PRELEGENT

Kamil
Nowiski

Ponad 10-letnie dowiadczenie (App, DB)
Technologie Microsoft:
Programowanie: VB6, VB.NET, C#, .NET Framework
Bazy danych: Microsoft SQL 2000  2012 (T-SQL)
Pasjonat baz danych
Certyfikaty: MCITP, MCP, MCTS
Zainteresowania zawodowe:
Optymalizacja baz danych
Hurtownie danych
SQL Server Integration Services (SSIS)
AGENDA










Cel do osignicia
Og坦lna koncepcja CHANGE TRACKING
Korzyci
Spos坦b uruchomienia
Ustawienia i uprawnienia
Funkcje zmian
DEMO
CDC  czym to si r坦甜ni?
Czy CT mo甜e by przydatny?
CHANGE TRACKING
 Cel:
 Wskazanie wierszy, kt坦re ulegy zmianie/usuniciu od czasu

 Jak to byo wczeniej
 DML Triggers  bardzo kosztowne operacje (wzrost czasu wykonania)
 Dodatkowe tabele  przechowywanie info o zmianach
 Konieczno czyszczenia dodatkowych tabel

 Wady:
 Czasochonne (kosztowne) tworzenie wyzwalaczy i tabel dodatkowych
 Spadek wydajnoci
 Zo甜one procesy
CHANGE TRACKING
 Koncepcja:
 ledzimy zmiany DML: INSERT, UPDATE, DELETE
 Poszczeg坦lne wiersze wybranej tabeli
 Interesuje nas tylko ostatnia zmiana
o Nie: ile razy wiersz zosta zmodyfikowany
o Nie: jakie wartoci (historyczne) byy przed zmianami

 Funkcjonalno wprowadzona w SQL 2008

 Korzyci:







Brak koniecznoci tworzenia wyzwalaczy i dodatkowych tabel
Nieobci甜ajce silnika bazy danych
Prostota dziaania
Minimalna zajto przestrzeni dyskowej
Wbudowane funkcje pobierania zmian w zapytaniach
Auto Clean Up
CHANGE TRACKING
 Uruchomienie mechanizmu:
 Wczenie dla bazy danych
 Ustawienie parametr坦w

 Wczenie dla wybranej tabeli/tabel

 Narzdzia:
 SSMS
 T-SQL (ALTER DATABASE, ALTER TABLE)
CHANGE TRACKING

 Poziom kompatybilnoci >= 90
 Uprawniania:
 SELECT (min. do PK tabeli 添r坦dowej)
 VIEWCHANGETRACKING

 Ka甜da tabela = jedna tablica zmian
 Przechowywanie wartoci klucza g坦wnego
 Zmiany dostpne przez tzw. funkcje zmian
CHANGE TRACKING

 CHANGETABLE()
 CHANGES  lista zmian od czasu X
 VERSION  informacja o wskazanym wierszu






CHANGE_TRACKING_CURRENT_VERSION()
CHANGE_TRACKING_MIN_VALID_VERSION(table)
CHANGE_TRACKING_IS_COLUMN_IN_MASK()
WITH CHANGE_TRACKING_CONTEXT()
DEMO
CHANGE TRACKING
Differences Between
Change Data Capture and Change Tracking
Change Tracking
Q&A
Dzikuj za uwag.
Kamil Nowiski
kamil@nowinski.net
GSM: +48 601 696 733
息 2011 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.
The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market
conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation.
MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

More Related Content

Change Tracking

  • 1. SZPIEG Z KRAINY BAZY DANYCH czyli Change Tracking w su甜bie MSSQL Kamil Nowiski
  • 2. PRELEGENT Kamil Nowiski Ponad 10-letnie dowiadczenie (App, DB) Technologie Microsoft: Programowanie: VB6, VB.NET, C#, .NET Framework Bazy danych: Microsoft SQL 2000 2012 (T-SQL) Pasjonat baz danych Certyfikaty: MCITP, MCP, MCTS Zainteresowania zawodowe: Optymalizacja baz danych Hurtownie danych SQL Server Integration Services (SSIS)
  • 3. AGENDA Cel do osignicia Og坦lna koncepcja CHANGE TRACKING Korzyci Spos坦b uruchomienia Ustawienia i uprawnienia Funkcje zmian DEMO CDC czym to si r坦甜ni? Czy CT mo甜e by przydatny?
  • 4. CHANGE TRACKING Cel: Wskazanie wierszy, kt坦re ulegy zmianie/usuniciu od czasu Jak to byo wczeniej DML Triggers bardzo kosztowne operacje (wzrost czasu wykonania) Dodatkowe tabele przechowywanie info o zmianach Konieczno czyszczenia dodatkowych tabel Wady: Czasochonne (kosztowne) tworzenie wyzwalaczy i tabel dodatkowych Spadek wydajnoci Zo甜one procesy
  • 5. CHANGE TRACKING Koncepcja: ledzimy zmiany DML: INSERT, UPDATE, DELETE Poszczeg坦lne wiersze wybranej tabeli Interesuje nas tylko ostatnia zmiana o Nie: ile razy wiersz zosta zmodyfikowany o Nie: jakie wartoci (historyczne) byy przed zmianami Funkcjonalno wprowadzona w SQL 2008 Korzyci: Brak koniecznoci tworzenia wyzwalaczy i dodatkowych tabel Nieobci甜ajce silnika bazy danych Prostota dziaania Minimalna zajto przestrzeni dyskowej Wbudowane funkcje pobierania zmian w zapytaniach Auto Clean Up
  • 6. CHANGE TRACKING Uruchomienie mechanizmu: Wczenie dla bazy danych Ustawienie parametr坦w Wczenie dla wybranej tabeli/tabel Narzdzia: SSMS T-SQL (ALTER DATABASE, ALTER TABLE)
  • 7. CHANGE TRACKING Poziom kompatybilnoci >= 90 Uprawniania: SELECT (min. do PK tabeli 添r坦dowej) VIEWCHANGETRACKING Ka甜da tabela = jedna tablica zmian Przechowywanie wartoci klucza g坦wnego Zmiany dostpne przez tzw. funkcje zmian
  • 8. CHANGE TRACKING CHANGETABLE() CHANGES lista zmian od czasu X VERSION informacja o wskazanym wierszu CHANGE_TRACKING_CURRENT_VERSION() CHANGE_TRACKING_MIN_VALID_VERSION(table) CHANGE_TRACKING_IS_COLUMN_IN_MASK() WITH CHANGE_TRACKING_CONTEXT()
  • 10. CHANGE TRACKING Differences Between Change Data Capture and Change Tracking
  • 12. Q&A Dzikuj za uwag. Kamil Nowiski kamil@nowinski.net GSM: +48 601 696 733
  • 13. 息 2011 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries. The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.

Editor's Notes

  • #11: Green - Use for Mission Critical Confidence specific content
  • #12: Green - Use for Mission Critical Confidence specific content
  • #13: Q&A