Aracılığıyla paylaş


Veri Ambarında Oluşan Şema Çakışmalarını Çözümleme

Ekip proje koleksiyonları üzerinde rapor edilebilir alanlara ait öznitelikler kümesi farklılık gösterdiğinde şema çakışmaları ortaya çıkar. Bir şema çakışması oluştuğunda, o şema ile ilişkilendirilmiş veri, veri ambarına ve SQL Server Çözümleme Hizmetleri veri küpüne gidemez. Ambarın ilişkili verilerinin işleme engelini kaldırmak ve ilişkilendirilmiş raporların etkin verileri görüntülemesi için, tüm şema çakışmalarını düzeltmeniz gerekir.

Önemli

Şema çakışmaları oluştuğunda Visual Studio Team Foundation Server 2010 için Hizmet Paketi 1'i (SP1) yükleyerek veri ambarı engellemesini kaldırabilirsiniz. Yüklü SP1 ile çakışma içinde olmayan alanlar her zamanki gibi işlenir. Çakışan alanlara, çakışmayı giderinceye ve her zamanki gibi işlem yapıncaya kadar boş değerler atanır.

Ayrıca sistem bulduğu her çakışma için bir uyarı olayı oluşturur. Olaya abone olarak, bir koleksiyon için tanımlanmış herhangi bir ekip projesi için şema çakışmaları oluştuğunda uyarılar alabilir hale gelirsiniz.

Visual Studio Team Foundation Server dağıtımı için tüm proje koleksiyonlarında tanımlanan tüm ekip projelerindeki raporlanabilir tüm veriler, ilişkisel tek bir veri ambarına yazılır. Ardından söz konusu ambardaki veriler işlenir ve küpe yazılır. Verilerin tek bir veri ambarında toplanması ekip projeleri arasında raporlamayı destekler. Ancak, her proje koleksiyonu için alanlar belirgin olarak yönetildiği için, farklı tanımlar aynı raporlama başvuru adı atanmış bir veya daha fazla alanının özniteliklerine farklı tanımlar atandığında, şema çakışmaları oluşabilir.

Bu konuda

  • Şema Çakışmalarını Bildiren Hata İletileri

  • Şema Çakışmalarının Kaynakları

  • Şema Çakışmalarını Giderin.

  • Şema Çakışmalarının Çözülmüş Olduğunu Doğrulayın

Şema Çakışmalarını Bildiren Hata İletileri

Bir şema çakışması oluştuğunda aşağıdaki konumlarda bir hata iletisi belirir:

  • Uygulama katmanı sunucusu için olay günlüğü.

    Not

    Team Foundation Server veri çakışması çözülene kadar her gün olay günlüğüne bir hata iletisi kaydeder.

  • MSF işlem şablonlarıyla birlikte sunulan ve Rapor Yöneticisi üzerinden görüntülediğiniz bir rapor.

  • MSF işlem şablonlarıyla birlikte sunulan ve proje portalı üzerinden görüntülediğiniz bir pano.

    Not

    Her raporun ve panonun sağ alt köşesinde görünen Son Güncelleme Tarihi zaman damgasını bulduğunuz takdirde, bir raporun veya panonun en son ne zaman güncellendiğini belirleyebilirsiniz. Zaman damgası, işlemesi başarıyla bitirilen her proje koleksiyonu için tamamlanmak üzere planlanan her ambar bağdaştırıcı işine ilişkin en son saate karşılık gelir. Zaman damgası hesaplama, özel bağdaştırıcı işleri içerir ve Ambar Denetim Web hizmetinin çalışmasını engellediği bağdaştırıcı işleri yoksayar.

    Bir şema çakışması, rapor verilerinin veri ambarına girmesini engelliyorsa, rapor için zaman damgası güncelleştirilmeyecektir.

Önceki iletilere ek olarak Ambar Denetim Web hizmetinin GetProcessingStatus işlemini kullanarak daha fazla bilgi edinebilirsiniz. Daha fazla bilgi için bkz. Team Foundation Server için Veri Ambarını ve Analysis Services Küpünü El ile İşleme.

Şema Çakışmalarının Kaynakları

Proje yöneticisi aşağıdaki eylemlerden birini gerçekleştirdiğinde şema çakışması ortaya çıkar:

  • Proje koleksiyonundaki bir iş öğesi türüne raporlanabilir alan ekler ve bu alana atanan öznitelikler, diğer proje koleksiyonlarındakilerle uyuşmaz.

  • Söz konusu değişiklikler diğer koleksiyonlara ait atama işlemleri ile çakışsa bile, birden fazla proje koleksiyonunda kullanılan iş öğesi alanına atanan özniteliği değiştirir.

    Not

    Bir proje yöneticisi, önceki listede bulunan hataları yalnızca bir dağıtım içindeki birden çok proje koleksiyonu arasında tanımlanan alanların öznitelik atamalarını gözden geçirerek önleyebilir.

Hatalar ya bir alan aynı başvuru adına ya da çoklu proje koleksiyonları üzerinde aynı raporlama başvurusu adına sahip olduğunda ve o alan için aşağıdaki özniteliklerden bir veya daha fazlası iki veya daha fazla koleksiyon üzerinde eşleşmediğinde meydana gelir.

  • name: Alanın bir çalışma öğesi sorgusu oluşturduğunuzda seçenek olarak görünen kolay adı.

  • reportingname: Raporlarda görünen addır. Değer belirtmezseniz, name özniteliğine atanmış değer kullanılır.

  • reportable/reportingtype: Alandaki veri raporlara dahil edilip edilemeyeceği bilgisi, edilebilirse raporlanabilir tür (örneğin, None, Detail, Dimensionveya Measure).

    Not

    FIELD öğesi reportable özniteliğini kullandı ve witadmin changefield komutu reportingtype özniteliğini kullanır. Bu öznitelikler aynı bilgiyi tanımlar.

  • type: Alanın kabul ettiği veri türü (örneğin, Integer, HTML, String, Double, veya DateTime).

Aşağıdaki tablo şema çakışmalarına neden olacak öznitelik atamalarının örneklerini sağlar. Bu örneklerde, raporlama başvuru adı ve raporlama adı atanmamıştır.

Öznitelik

Proje Koleksiyonu 1

Proje Koleksiyonu 2

Şema çakışması

Type

Dize

Integer

Veri türleri eşleşmiyor.

ReportingName

Etkinlik

Ortak Etkinlik

Raporlama adları eşleşmiyor.

Raporlanabilir

Ayrıntı

Boyut

Raporlama türleri eşleşmiyor.

Şema Çakışmalarını Giderin.

Bir şema çakışmasına neden olan alan hakkında daha fazla bilgi edinmek için uygulama katmanı sunucusundaki olay günlüğünü gözden geçirebilirsiniz. Çakışmaya neden olan alan veya alanları belirledikten sonra, şu adımları izlemelisiniz:

  1. Tüm proje koleksiyonları alanına atanan öznitelikleri gözden geçirin. Sözdizimi aşağıdaki gibi olan witadmin listfields komutunu kullanabilirsiniz:

    witadmin listfields /collection:CollectionURL /n:RefName [/unused]
    

    Daha fazla bilgi için bkz. İş Öğesi Alanlarını Yönetme [witadmin].

  2. Çakışmayı aşağıdaki yollardan hangisiyle çözmek istediğinizi belirleyin:

    • Bir proje koleksiyonundaki alanın özniteliğini, diğer proje koleksiyonlarında yapılan atamalarla eşleştirmek için değiştirin. Ekiplerin aynı şekildeki benzer raporlar veya projeler arası raporlama için alanı kullandıkları zaman bu eylemi gerçekleştirmelisiniz.

    • Çakışan alanın raporlama başvuru adını yeniden etiketleyin. Alanlar farklı şekillerde kullanılırsa veya farklı bir alan oluşturmanız gerekirse bu eylemi gerçekleştirmelisiniz. Bu durumda, alan, projeler arası raporlama için farklı proje koleksiyonlarında çalışan takımlar tarafından kullanılmaz.

      Daha fazla bilgi için bkz. Destekleme Raporu'na Çalışma Alanları'nı Ekleme ve Değiştirme.

    • Bir alanı bir veya daha fazla koleksiyon için rapor edilemez olarak işaretle. Alan bu proje toplamalarıyla ilgili raporlar için kullanılmadığı zaman bu eylemi geçekleştirmelisiniz.

    • Alanı ekip projesi koleksiyonundan kaldırın. Alan herhangi bir ekip projesi veya raporu tarafından kullanılmazsa bu eylemi gerçekleştirmelisiniz.

      Not

      Raporda kullanılan bir alanı kaldırırsanız, rapor artık doğru olarak görüntülenmeyecektir.

  3. Önceki adımda verdiğiniz kararlara dayanarak bir alana atanan özniteliği değiştirin. Sözdizimi aşağıdaki gibi olan witadmin changefield komutunu kullanabilirsiniz:

    witadmin changefield /collection:CollectionURL /n:RefName [/name:NewName] [/syncnamechanges:true | false] [/reportingname:ReportingName] [/reportingrefname:ReportingRefName] [/reportingtype:Type] [/reportingformula:Formula] [/noprompt]
    
  4. Bir proje koleksiyonundan bir alan silmek için aşağıdaki söz dizimini içeren witadmin deletefield komutunu kullanabilirsiniz:

    witadmin deletefield /collection:CollectionURL /n:RefName
    

    Önemli

    Bir alanı kalıcı olarak silerseniz veri depolamadan sakladığı bütün verileri ve alanı kaldırırsınız.

Şema Çakışmalarının Çözülmüş Olduğunu Doğrulayın

Şema çakışmalarının istendiğinde veri ambarları işlenerek ve raporların güncelleştirilmiş olup olmadığının belirlenmesi için denetlenerek çözüldüğünü doğrulayabilirsiniz. Veya varsayılan zamanlamalarına bağlı olarak depo bağdaştırıcı işleri çalışana kadar bekleyebilirsiniz. Varsayılan olarak, ilişkisel veritabanı birkaç dakikada bir işlenir. Ancak, Çözümleme Hizmetleri küpü varsayılan olarak her iki saatte bir işlenir.

Not

Ambar Denetimi Web hizmeti hakkında daha fazla bilgi için bkz. Team Foundation Server için Veri Ambarını ve Analysis Services Küpünü El ile İşleme.

  1. WarehouseControlService hizmetinin ProcessWarehouse işlemini kullanarak isteğe bağlı ilişkisel veri ambarını işleyin.

  2. WarehouseControlService hizmetinin ProcessAnalysisDatabase işlemini kullanarak isteğe bağlı küpü işleyin.

  3. Bir gösterge tablosu veya Rapor Yöneticisi açıp raporların güncellendiğini doğrulayın. Daha fazla bilgi için bkz. Kontrol panelleri (etkin) veya Raporlar (etkin).

Hata iletileri görüntülenmeye devam ederse, WarehouseControlService içinden GetProcessingStatus işlemini çalıştırarak veri çatışması ve etkilenen engellenmiş bağdaştırıcılar hakkında daha fazla bilgi edinebilirsiniz.

Ayrıca bkz.

Başvuru

İş Öğesi Alanlarını Yönetme [witadmin]

Kavramlar

Visual Studio ALM İçin Raporlar Oluşturma ve Özelleştirme

Diğer Kaynaklar

Destekleme Raporu'na Çalışma Alanları'nı Ekleme ve Değiştirme

Team Foundation Server için Veri Ambarını ve Analysis Services Küpünü El ile İşleme