CDC 變更資料擷取技術的問題及局限,cdc捕獲

來源:互聯網
上載者:User

CDC 變更資料擷取技術的問題及局限,cdc捕獲
現在的cdc功能仍然還是會讓你失望的。 
優點就不說了,就是聯機叢書裡面寫的那些。
缺點如下:
1、目前為止cdc無法與記錄檔關聯,更多有用的資訊,仍需要進行前後資料比對擷取。(一般仍會使用觸發器進行替代記錄)
2、目前為止cdc可以記錄DDl的相關處理,但是更多的資訊,如記錄IP等使用者資訊仍然需要另外的代碼支援。


select * into PT_CUSTOMER_INFO_BAK from PT_CUSTOMER_INFO

類似oracle的create table as select * from t;

約束也不會帶過來。


alt + q
看sql server的執行計畫。


叢集索引表:和oracle的iot表,索引表是一樣的概念,表和索引是在一起的,即:表就是排序的。

非叢集索引表:就是堆表

執行計畫:

1. 【Table Scan】:遍曆整個表,尋找所匹配的記錄行。這個操作將會一行一行的檢查,當然,效率也是最差的。

2. 【Index Scan】:根據索引,從表中過濾出來一部分記錄,再尋找所匹配的記錄行,顯示比第一種方式的尋找範圍要小,因此比【Table Scan】要快。

3. 【Index Seek】:根據索引,定位(擷取)記錄的存放位置,然後取得記錄,因此,比起前二種方式會更快。

4. 【Clustered Index Scan】:和【Table Scan】一樣。注意:不要以為這裡有個Index,就認為不一樣了。

    其實它的意思是說:按叢集索引來漸進式掃描每一行記錄,因為記錄就是按叢集索引來順序存放的。
    
    而【Table Scan】只是說:要掃描的表沒有叢集索引而已,因此這二個操作本質上也是一樣的。

5. 【Clustered Index Seek】:直接根據叢集索引擷取記錄,最快!


還有一個小問題,刪除索引 和 刪除主鍵的方式不同,因為主鍵屬於約束,不是索引。

刪除索引:drop index IDX_PROVINCE_ID on PT_CUSTOMER_INFO_BAK

刪除主鍵:alter table PT_CUSTOMER_INFO_BAK drop constraint PK_PT_CUSTOMER_INFO_BAK

添加主鍵:

ALTER TABLE PT_CUSTOMER_INFO_BAK
ADD CONSTRAINT PK_PT_CUSTOMER_INFO_BAK PRIMARY KEY nonclustered(ID);
go 

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.