odbc sürücüsü performans profil oluşturma

The SQL Server Native Client ODBC driver can profile two types of performance data: 

  • Uzun süre çalıştırılan sorgular.

    Sürücü bir günlük dosyası için yanıt saat içinde belirtilen miktarda sunucudan almak herhangi bir sorgu yazabilirsiniz.Araştırma her ne onun performansı belirlemek için sql deyim oturum bundan sonra uygulama programcıları veya veritabanı yöneticileri kullanabilirsiniz.

  • Sürücü performans verisi.

    Sürücü performans istatistiklerini kaydedebilir ve ya da bir dosyaya yazmak veya bir uygulamaya sqlperf adlı bir sürücüye özgü veri yapısı üzerinden kullanılabilir hale getirmek.Performans istatistiklerini içeren destekler sekmeyle ayrılmış dosyalar, Microsoft Excel gibi bir elektronik tablo ile kolayca çözümlenebilir sekmeyle ayrılmış bir dosya dosyasıdır.

Her iki türdeki profil oluşturma tarafından açılabilir:

  • Veri bağlama kaynak günlük belirtir.

  • Arayan sqlkümeConnectAttr için küme sürücüye özgü öznitelikleri o denetim profil oluşturma.

Her uygulama işlemini kendi kopyasını alır SQL Server yerel istemci odbc sürücüsü ve profil genel birleşimine bir sürücü kopya ve bir uygulama süreci.Ne zaman uygulama içindeki herhangi bir şeyi profil oluşturma, profil oluşturma bilgileri kaydeder tüm bağlantılar için etkin sürücü bu uygulamadan açar.Özellikle profil oluşturma için arama hatta bağlantıları dahil edilir.

Sürücü (performans veri veya sorgu günlük uzun süre çalışan) bir profil oluşturma günlük açıldıktan sonra bir uygulama sürücüyü açılan tüm ortamı tutamaçları serbest bırakır, sürücü odbc Sürücü Yöneticisi tarafından kaldırıldı kadar günlük kapatmaz.Uygulamayı yeni bir ortam tanıtıcısı açar, sürücünün yeni bir kopyası yüklenir.Uygulamanın ardından ya da bağlanırsa, bir veri kaynak aynı günlük dosyasını belirtir veya aynı dosyaya kaydetmesi için sürücüye özgü özniteliklerini belirler, sürücü eski günlüğü üzerine yazar.

Profil oluşturma günlük dosyasına bir uygulamayı başlatır ve aynı günlük dosyası için profil oluşturma başlatmak ikinci bir uygulamanın çalışır, ikinci uygulama herhangi bir profil oluşturma verileri günlüğe kaydetmek mümkün değil.İkinci uygulamanın ilk uygulama, sürücü kaldırıldı sonra profil oluşturma başlarsa, ikinci uygulama ilk uygulamadan günlük dosyasının üzerine yazar.

Bir uygulama için bir veri bağlanırsa, kaynak olan etkin profil oluşturma, uygulama, sürücü SQL_ERROR hatası döndürür SQLSetConnectOption günlüğü başlatmak için.Çağrı SQLGetDiagRec sonra aşağıdaki döndürür:

SQLState: 01000, pfNative = 0
ErrorMsg: [Microsoft][SQL Server Native Client]
   An error has occurred during the attempt to access
   the log file, logging disabled.

Sürücü ortam tanıtıcısı kapalı olduğunda performans verileri toplama durur.Yoksa bir SQL Server yerel istemci uygulaması vardır, her biri kendi ortam tanıtıcısı ile birden çok bağlantı sonra sürücü ilişkili ortam tutamaçlardan birini kapandıktan sonra performans verileri toplama durur.

Sürücü performans verisi sqlperf veri yapısı içinde depolanan veya sekmeyle sınırlanmış bir dosyasında günlüğe.Aşağıdaki kategorilere istatistik verileri içerir:

  • Uygulama profili

  • Bağlantı

  • Time

Aşağıdaki tablo, sqlperf veri yapısı alanlarında açıklamalarını performans günlük dosyasında kaydedilen istatistikleri için de geçerlidir.

Uygulama profili istatistikleri

sqlperf alan

Açıklama

TimerResolution

Sunucunun saatinin en düşük çözünürlüğü saat milisaniye cinsinden.Bu genellikle 0 (sıfır) olarak bildirilir ve yalnızca bildirilen sayıyı büyük düşünülmelidir.Sunucu saatinin en düşük çözünürlüğü timer tabanlı istatistikleri bazıları için büyük olasılıkla aralığından daha büyük ise, bu İstatistikler inflated.

SQLidu

INSERT, delete veya update deyimleri sql_perf_start sonra sayısı.

SQLiduRows

INSERT, delete veya update deyimleri sql_perf_start sonra sayısı.

SQLSelects

select deyimleri sql_perf_start sonra işlenen sayısı.

SQLSelectRows

sql_perf_start sonra seçili satır sayısı.

İşlemler

Geri alma dahil olmak üzere, sql_perf_start sonra kullanıcı işlem sayısı.Bir odbc uygulaması SQL_AUTOCOMMIT_ON ile çalışırken, her komutun bir hareket olarak kabul edilir.

SQLPrepares

Sayısı SQLPrepare sql_perf_start sonra çağrılar.

ExecDirects

Sayısı SQLExecDirect sql_perf_start sonra çağrılar.

SQLExecutes

Sayısı SQLExecute sql_perf_start sonra çağrılar.

CursorOpens

Sayısı sürücü sql_perf_start sonra sunucu imleci açtı.

CursorSize

İmleçler tarafından sql_perf_start sonra açılan sonuç kümesindeki satır sayısını belirtir.

CursorUsed

Satır sayısı gerçekte imleçler sürücüsünden aracılığıyla sql_perf_start sonra alındı.

PercentCursorUsed

CursorUsed/CursorSize'e eşittir.Örneğin, bir uygulama "count(*) from yazarlar SEÇMEK için" sunucu imleci açmak sürücü neden oluyorsa, 23 satır içinde olacak sonuç küme için deyim.Uygulama yalnızca üçünde bu getirir, CursorUsed/CursorSize PercentCursorUsed 13.043478, bu nedenle 3/23 olur.

AvgFetchTime

SQLFetchTime/SQLFetchCount'e eşittir.

AvgCursorSize

CursorSize/CursorOpens'e eşittir.

AvgCursorUsed

CursorUsed/CursorOpens'e eşittir.

SQLFetchTime

Toplam miktarını saat fetches tamamlamak için sunucu imleçler karşı sürdü.

SQLFetchCount

Fetches sql_perf_start sonra sunucu imleçler karşı yapılan sayısı.

CurrentStmtCount

Deyim sayısının tüm bağlantılarda sürücüde açık açık.

MaxOpenStmt

En fazla sayısı aynı anda açılan deyim sql_perf_start sonra işler.

SumOpenStmt

sql_perf_start sonra açılan deyim tanıtıcısı sayısı.

Bağlantı istatistikleri:

 

CurrentConnectionCount

Uygulama etkin bağlantı tanıtıcısı geçerli sayısı sunucuya açın.

MaxConnectionsOpened

En fazla eşzamanlı bağlantı tutamaçları sql_perf_start sonra açılan sayısı.

SumConnectionsOpened

sql_perf_start sonra açılan bağlantı tanıtıcısı sayısı toplamı.

SumConnectionTime

Miktarı toplamı saat tüm bağlantıları sql_perf_start sonra açılmıştır.Örneğin, bir uygulama 10 bağlantı açılır ve her bağlantı için 5 saniye tutulan, SumConnectionTime 50 saniye olacaktır.

AvgTimeOpened

SumConnectionsOpened eşittir / SumConnectionTime.

Ağ istatistikleri:

 

ServerRndTrips

Kaç kez sürücü komutları sunucuya gönderilen ve bir yanıt geri aldı.

BuffersSent

Sekmeli veri akışı (tds) gönderilen paketleri sayısı SQL Server sürücü sql_perf_start sonraBüyük komutları birden çok arabellekleri, böylece büyük bir komut gönderilir, sunucu ve onu doldurur altı paket, ServerRndTrips değeri bir artırılır ve BuffersSent tarafından altı artırılır alabilir.

BuffersRec

Sürücü tarafından alınan tds paket sayısı SQL Server sonra uygulamanın başlatılmasından kullanarak sürücü.

BytesSent

Gönderilen veri baytları sayısı SQL Server tds paketlerinde sonra uygulamanın başlatılmasından kullanarak sürücü.

BytesRec

tds paketleri sürücüsünden tarafından alınan veri bayt sayısı SQL Server sonra uygulamanın başlatılmasından kullanarak sürücü.

Süresi istatistikleri

sqlperf alan

Açıklama

msExecutionTime

Toplu sürücü harcanan süreyi sql_perf_start sonra işleme saat de dahil olmak üzere sunucu yanıtları başlamasının.

msNetworkServerTime

Sunucudan yanıt bekleniyor sürücü harcanan saat toplu tutarı.