Aracılığıyla paylaş


Veriler FinOps hub'larında nasıl işlenir?

FinOps hub'ları verileri temizlemek, normalleştirmek ve iyileştirmek için birçok veri işleme etkinliği gerçekleştirir. Aşağıdaki bölümlerde, verilerin Maliyet Yönetimi'nden merkez örneğine nasıl aktığı gösterilmektedir.


Kapsam kurulumu

Kapsam, bulut kaynağı ve hesap hiyerarşisinde maliyet, kullanım ve karbon verilerine erişim sağlayan bir düzeydir. FinOps hub'ları için genellikle Kurumsal Anlaşma (EA) ödeme hesaplarını veya Microsoft Müşteri Sözleşmesi (MCA) faturalama profillerini kullanmanızı öneririz, ancak tüm bulut kapsamları temel analiz için yeterlidir. Maliyet Yönetimi verileri yalnızca EA faturalama hesapları ve MCA faturalama profilleri için kullanıma sunmadığından, asıl endişe fiyat ve rezervasyon verilerinin gerekli olup olmadığıdır.

FinOps hub'ları, Maliyet Yönetimi dışarı aktarmalarını el ile yapılandırarak veya Sizin yerinize kapsamları yönetmek için FinOps hub'larına erişim vererek kapsamların yapılandırılmasını destekler. Yönetilen kapsamlar, hub depolamadaki yapılandırma/settings.json dosyasında yapılandırılır. Bilgiler, bu dosyaya yeni, yönetilen bir kapsam eklendiğinde ne olacağını açıklar. Maliyet Yönetimi dışarı aktarmalarının el ile yapılandırıldığı yönetilmeyen kapsamlar, başka bir kurulum gerektirmez.

Kapsam kurulum işlemini gösteren diyagram.

  1. settings.json dosyası güncelleştirildiğinde config_SettingsUpdated tetikleyicisi çalışır.
  2. config_ConfigureExports işlem hattı, eklenen tüm yeni kapsamlar için yeni dışarı aktarmalar oluşturur.

Veri alımı

Aşağıdaki diyagramda FinOps hub'ları içindeki uçtan uca veri alımı işlemi gösterilmiştir:

Veri alımı işlemini gösteren diyagram.

  1. (İsteğe bağlı) Yönetilen dışarı aktarmalar kullanılıyorsa:
    1. config_DailySchedule ve config_MonthlySchedule tetikleyicileri, veri alımını başlatmak için ilgili zamanlamalarında çalışır.
    2. config_StartExportProcess işlem hattı, çalışmakta olan zamanlama için geçerli dışarı aktarmaları alır.
    3. config_RunExportJobs işlem hattı, seçilen dışarı aktarmaların her birini yürütür.
  2. Maliyet Yönetimi ham maliyet ayrıntılarını msexports kapsayıcısına aktarır . Daha fazla bilgi edinin.
  3. msexports_ExecuteETL işlem hattı, dosyalar msexports kapsayıcısına eklendiğinde extract-transform-load (ETL) işlem hattını kuyruğa alır.
  4. msexports_ETL_ingestion işlem hattı, verileri Parquet biçimine dönüştürür ve ölçeklenebilir bir dosya yapısı kullanarak alma kapsayıcısına taşır. Daha fazla bilgi edinin.
  5. (İsteğe bağlı) Azure Veri Gezgini kullanılıyorsa:
    1. ingestion_ExecuteETL işlem hattı, manifest.json dosyalar ingestion kapsayıcısına eklendiğinde, Data Explorer alım işlem hattını kuyruğa alır.
      • Maliyet Yönetimi dışarı aktarmaları dışında özel veri kümeleri alıyorsanız, diğer tüm dosyalar hazır olduktan sonra hedef veri alım klasöründe boş bir manifest.json dosyası oluşturun (dosyalar karşıya yüklenirken bu dosyayı eklemeyin). manifest.json dosyası ayrıştırılmadığından boş olabilir. Tek amaç, bu veri alma işi için tüm dosyaların eklendiğini belirtmektir.
      • Küme çalışmıyorsa işlem hattı onu başlatır. Azure Veri Gezgini'nin başlatılması 15 dakika veya daha uzun sürebilir.
    2. ingestion_ETL_dataExplorer işlem hattı, verileri Veri Gezgini'ndeki {dataset}_raw tablosuna aktarır.
      • Veri kümesi adı, yükleme kapsayıcısındaki ilk klasördür.
      • Tüm ham tablolar Veri Gezgini'ndeki Alma veritabanında yer alır.
    3. Veri Gezgini'ndeki ham tablolara veri alındığında, güncelleştirme ilkesi tüm verileri FOCUS 1.0 ile uyumlu olacak şekilde normalleştirmek için {dataset}_final_v1_0 işlevini kullanarak verileri ilgili {dataset}_transform_v1_0() tablosuna kopyalar.
    4. Veri alımından sonra ingestion_ETL_dataExplorer işlem hattı, veri saklama süresini geçen son tablodaki verileri temizleme de dahil olmak üzere bazı temizleme işlemleri gerçekleştirir.
      • Veri Gezgini 0.7 itibarıyla ham tablolarda veri saklama uygular, son tablolarda veri saklama ise veri alım hattı tarafından uygulanır. Veri alımı durursa geçmiş veriler temizlenmez.
      • Veri saklama, şablon dağıtımı sırasında yapılandırılabilir veya depolamadaki yapılandırma/settings.json dosyasında el ile yapılandırılabilir.
  6. Raporlar ve Power BI gibi diğer araçlar, Veri Gezgini'nden veya alma kapsayıcısından verileri okur.
    • Veri Gezgini'ndeki veriler Hub veritabanından okunabilir.
      • {dataset}() En son şemayı kullanmak için işlevini kullanın.
        • Bu işlev hızlı araştırma için kullanışlıdır, ancak FinOps hub örneği güncelleştirildikçe büyük değişikliklerle karşılaşılabilir.
      • {dataset}_v1_0() FOCUS 1.0 şemasını kullanmak için işlevini kullanın.
        • Sürüme alınan işlev şemaları zaman içinde değişmemelidir, ancak veri kaynağı bu değerleri değiştirirse değerler değişebilir.
      • Sorgular için Veri Alma veritabanını kullanmaktan kaçının. Açıkça yasaklanmasa da Ingestion veritabanı, etaplama ve veri hazırlama için bir iç alan olarak kabul edilmelidir.
    • Depolamadaki veriler ingestion/<dataset>/<year>/<month>/<scope-path>'dan okunabilir.
      • Veriler veri kümesi klasöründen özyinelemeli olarak okunmalı ve isteğe bağlı olarak, özgüllük için gereken daha fazlasını içermelidir.
      • Her veri kümesi klasöründeki dosyaların veri kaynağına ve hesap türüne göre farklı şemaları olabilir. Microsoft Fabric gibi diğer sistemlerde veri alımı sırasında verileri dönüştürmeye hazır olun.
      • Performans nedeniyle depolamadan okuma önerilmez. Veri Gezgini, 1 milyon ABD dolarından fazla maliyet bildirilirken önerilir.

Veri Gezgini veri işleme hakkında

Veriler Veri Gezgini'ne alındığında, {dataset}_transform_v1_0() işlevler veri alımı veritabanında dönüşüm kuralları uygular. Her veri kümesinin aşağıdaki bölümlerde ele alınan farklı bir dönüştürme kuralları kümesi vardır.

İstenen değişikliklerin listesi, dikkate alınan fikirler ve temel alınan Maliyet Yönetimi veri kümeleri hakkındaki açık sorular için bkz. sorun #1111. Herhangi bir endişeyi giderme veya belirli sorunlardan herhangi birine yönelik desteğinizi dile getirmek için fırsatlar bulursanız bu sorunla ilgili yorumlar bırakın.

Maliyet verisi dönüşümleri

Desteklenen veri kümeleri:

  • Microsoft FocusCost: 1.2-preview, 1.0r2, 1.0, 1.0-preview(v1)

Aşağıdaki veri kümeleri tasarımda hesaba katılsa da yerel olarak desteklenmemektedir. Bu veri kümelerini almak için, parquet dosyalarını depolama alanındaki ingestion/Costs/yyyy/mm/{scope-path} klasörüne gönderen bir veri hattı (veya dış işlem) oluşturun. {scope-path}, aws/123 veya gcp/projects/foogibi herhangi bir benzersiz yol olabilir. Tek gereksinim, her kapsamın ayrı bir klasörde olduğundan emin olmaktır. Dış içeriği kopyaladıktan sonra, Veri Gezgini alımını tetikleyen bir manifest.json dosyası da oluşturun.

  • Alibaba Bulut FOCUS 1.0
  • Amazon Web Services (AWS) FOCUS 1.0
  • Google Cloud Platform (GCP) FOCUS 1.0
  • Oracle Bulut Altyapısı (OCI) FOCUS 1.0
  • Tencent Cloud FOCUS 1.0

Dönüştüren:

  • v0.7+:
    • FOCUS 1.0 önizleme sütun adlarını FOCUS 1.0 ile hizalayın.
      • FOCUS 1.0 önizlemesini 1.0'a dönüştürmeyi içerir.
    • Satırın en son ne zaman güncelleştirildiğini belirtmek için x_IngestionTime ekleyin.
    • Bir satırdaki verilerin hub'lar tarafından ne zaman değiştirildiğini belirlemek için ekleyin x_SourceChanges .
    • Belirtilmediğinde ProviderName ve PublisherName güncelleştirin.
    • Alınan özgün veri kümesini tanımlamak için x_SourceName, x_SourceProvider, x_SourceTypeve x_SourceVersion ekleyin.
    • Fiyat listesini temel alarak eksik ListCost, ListUnitPrice, ContractedCostve ContractedUnitPrice değerlerini doldurun.
      • Bu işlem, fiyatların maliyet öncesinde dışarı aktarılabilmesini gerektirir. Ayın fiyatları henüz mevcut değilken maliyetler alınırsa, ayın ilk günü için fiyatlar eksik olacaktır.
    • Yanlış ayarlanan ContractedCost'ı Maliyet Yönetimi'ndeki bir hatadan dolayı düzelt.
    • ResourceName ve x_ResourceGroupName'i küçük harfe çevirerek gruplama ve filtrelemeyi bozan büyük/küçük harf tutarlılığı sorunlarını giderin.
    • Hesap türüne göre x_BillingAccountAgreement ekleyin.
  • v0.8+:
    • İç kaynak türü kimliklerini kullanan ResourceType değerlerini düzeltin (örneğin, microsoft.compute/virtualmachines).
  • v0.9+:
    • Fiyat birleştirmenin tüm satırlara uygun hale gelmesi için BillingAccountId küçük harfe dönüştürün.
    • Yinelenen satırları önlemek için verileri toplarken CommitmentDiscountId'yi küçük harfe dönüştür.
    • Yeni x_SourceChanges kontrollerini ListCostLessThanContractedCost ve ContractedCostLessThanEffectiveCost için ekleyin.
  • v0.10+:
    • x_EffectiveUnitPrice hesaplandığında ve x_BilledUnitPrice veya ContractedUnitPrice ile karşılaştırıldığında bir yuvarlama hatası varsa düzeltin.
    • Maliyet varken ancak miktar olmadığında PricingQuantity ve ConsumedQuantity değerini hesaplayın.
    • Ayarlanmadığında ContractedCost, EffectiveCost olarak ayarlayın.
    • Ayarlanmadığında ListCost, ContractedCost olarak ayarlayın.
    • Sütundaki "-2" öğesini x_InvoiceSectionId kaldırın.
    • x_InvoiceSectionName sütunundaki "Atanmamış" öğesini kaldırın.
    • Hesaplandığında ve yuvarlama hatası olduğunda düzeltildi x_EffectiveUnitPrice .
    • x_SourceChanges için, MissingConsumedQuantity, MissingPricingQuantity ve XEffectiveUnitPriceRoundingError yeni denetimler ekleyin.
  • v0.11+:
    • BillingPeriodStart ve BillingPeriodEnd öğelerini ayın ilk günü olacak şekilde değiştirin.
  • v12+:
    • FOCUS 1.0-preview ve 1.0 verilerini FOCUS 1.2'ye dönüştürün.
      • x_InvoiceId yeniden InvoiceId olarak adlandırıldı.
      • x_PricingCurrency yeniden PricingCurrency olarak adlandırıldı.
      • x_SkuMeterName yeniden SkuMeter olarak adlandırıldı.
      • x_SkuDetails SkuPriceDetails olarak dönüştürüldü:
        • CoreCount, x_SkuDetails.VCPUs, ve x_SkuDetails.VCores tabanlı SKU'nun çekirdek sayısı için anahtar eklendi x_SkuDetails.vCores.
        • SKU boyutu için InstanceType ve x_SkuDetails.ServiceType'ye bağlı x_SkuDetails.ServerSku anahtar eklendi.
        • OperatingSystem tabanlı x_SkuDetails.ImageType için VM işletim sistemine anahtar eklendi.
        • Diğer tüm anahtarların önüne x_ eklendi.
    • Maliyet Yönetimi tarafından ayarlanmadığında aşağıdaki sütunlar uygulandı:
      • CapacityReservationId
      • CapacityReservationStatus
      • CommitmentDiscountQuantity
      • CommitmentDiscountUnit
      • x_CommitmentDiscountNormalizedRatio
    • Amorti edilmiş satın almaları filtrelemek ve tasarruf hesaplamalarında ListCost ve ContractedCost çift sayımından kaçınmak için x_AmortizationClass eklendi.
    • Taahhüt indirimi kullanımını hesaplamak için x_CommitmentDiscountUtilizationPotential ve x_CommitmentDiscountUtilizationAmount eklendi.
    • x_SkuCoreCount ve x_ConsumedCoreHours için, çekirdek sayısı ve çekirdek saatleri, x_SkuDetails.VCPUs, x_SkuDetails.VCores, ve x_SkuDetails.vCores'e dayanarak SKU'ya eklendi.
    • x_SkuInstanceType tabanlı x_SkuDetails.ServiceType ve x_SkuDetails.ServerSku için SKU boyutu eklendi.
    • tabanlı x_SkuOperatingSystemVM işletim sistemi için eklendix_SkuDetails.ImageType.
    • Azure Hibrit Avantajı sütunları eklendi:
      • x_SkuLicenseQuantity
      • x_SkuLicenseStatus
      • x_SkuLicenseType
      • x_SkuLicenseUnit
    • İndirim ve tasarruf sütunları eklendi:
      • x_NegotiatedDiscountSavings
      • x_CommitmentDiscountSavings
      • x_TotalSavings
      • x_NegotiatedDiscountPercent
      • x_CommitmentDiscountPercent
      • x_TotalDiscountPercent
    • x_SourceValues veri alımı sırasında veri değişikliklerini izlemek için eklendi.

Fiyat veri dönüşümleri

Desteklenen veri kümeleri:

  • Microsoft PriceSheet: 2023-05-01 (EA ve MCA)

Dönüştüren:

  • v0.7+
    • Sütun adlarını FOCUS 1.0 ile uyumlu hale getirin.
      • EA ve MCA sütun adı tutarlılığını sağlamayı içerir.
      • EA ve MCA arasında farklılık gösterebilecek temel değerleri değiştirmez.
    • Maliyet ayrıntılarını eşleştirmek için ISO süresini belirli sayıda aya dönüştürün x_SkuTerm .
      • FOCUS'un bu değeri ISO veya başka bir biçime değiştirmeden önce süreleri nasıl tanımlayacağımızı belirlemesini bekliyoruz.
    • Tasarruf planı kullanımı için ContractedUnitPrice'u isteğe bağlı eşdeğerle değiştirin.
    • Tasarruf planı kullanımı için ListUnitPrice isteğe bağlı eşdeğer olarak ayarlayın.
    • SkuPriceIdv2, şu anda maliyet ayrıntılarında bulunandan daha doğru bir SkuPriceId değeri olarak ekleyin.
    • Satırın en son ne zaman güncelleştirildiğini belirtmek için x_IngestionTime ekleyin.
    • x_CommitmentDiscountSpendEligibility ve x_CommitmentDiscountUsageEligibilityekleyin.
    • x_PricingUnitDescription PricingUnit ve x_PricingBlockSizeolarak genişletin.
    • Hesap türüne göre x_BillingAccountAgreement ekleyin.
    • x_EffectivePeriodEnd özel bir bitiş tarihi olacak şekilde değiştirin.
    • SKU başına kullanılabilir indirimleri özetlemek için x_EffectiveUnitPriceDiscount, x_ContractedUnitPriceDiscountve x_TotalUnitPriceDiscount ekleyin.
    • SKU başına indirim yüzdesini özetlemek için x_EffectiveUnitPriceDiscountPercent, x_ContractedUnitPriceDiscountPercentve x_TotalUnitPriceDiscountPercent ekleyin.
    • Alınan özgün veri kümesini tanımlamak için x_SourceName, x_SourceProvider, x_SourceTypeve x_SourceVersion ekleyin.
  • v0.9+:
    • Maliyet birleştirmesinin tüm satırlarla eşleşmesini sağlamak için BillingAccountId öğesini küçük harfe çevirin.
  • v12+:
    • Sütun adlarını FOCUS 1.2 ile hizalama:
      • x_PricingCurrency yeniden PricingCurrency olarak adlandırıldı.
      • x_SkuMeterName yeniden SkuMeter olarak adlandırıldı.
    • Maliyet Yönetimi tarafından ayarlanmadığında aşağıdaki sütunlar uygulandı:
      • CommitmentDiscountUnit

Öneri veri dönüşümleri

Desteklenen veri kümeleri:

  • Microsoft Rezervasyon Önerileri: 2023-05-01 (EA ve MCA)

Dönüştüren:

  • v0.7+:
    • Sütun adlarını FOCUS 1.0 ile uyumlu hale getirin.
      • EA ve MCA sütun adı tutarlılığını sağlamayı içerir.
      • EA ve MCA arasında farklılık gösterebilecek temel değerleri değiştirmez.
    • Alınan özgün veri kümesini tanımlamak için x_SourceName, x_SourceProvider, x_SourceTypeve x_SourceVersion ekleyin.

İşlem verileri ve dönüşümleri

Desteklenen veri kümeleri:

  • Microsoft Rezervasyon İşlemleri: 2023-05-01 (EA ve MCA)

Dönüştüren:

  • v0.7+:
    • Sütun adlarını FOCUS 1.0 ile uyumlu hale getirin.
      • EA ve MCA sütun adı tutarlılığını sağlamayı içerir.
      • EA ve MCA arasında farklılık gösterebilecek temel değerleri değiştirmez.
    • Alınan özgün veri kümesini tanımlamak için x_SourceName, x_SourceProvider, x_SourceTypeve x_SourceVersion ekleyin.
  • v12+:
    • Sütun adlarını FOCUS 1.2 ile hizalama:
      • x_InvoiceId yeniden InvoiceId olarak adlandırıldı.

Taahhüt indirimi kullanım verileri dönüşümleri

Desteklenen veri kümeleri:

  • Microsoft Rezervasyon Detayları: 2023-03-01 (EA ve MCA)

Dönüştüren:

  1. Sütun adlarını FOCUS 1.0 ile uyumlu hale getirin.
    • EA ve MCA sütun adı tutarlılığını sağlamayı içerir.
    • EA ve MCA arasında farklılık gösterebilecek temel değerleri değiştirmez.
  2. Kaynak türü görüntüleme adıyla ResourceType sütunu ekleyin.
  3. ServiceName, ServiceCategoryve x_ServiceModel sütunları ekleyin.
  4. x_CommitmentDiscountNormalizedGroupiçin "NA"yı null ile değiştir.
  5. FOCUS 1.1'e göre x_CommitmentDiscountQuantity ekleyin.

Alma kapsayıcısı hakkında

FinOps hub'ları, alım depolama kapsayıcısında belirli bir klasör yolu ve dosya adlandırma formatına bağlıdır.

ingestion/{dataset}/{date-folder-path}/{scope-id-path}/{ingestion-id}__{original-file-name}.parquet
  • ingestion , veri işlem hattının verileri kaydettiği kapsayıcıdır.
  • {dataset} , dışarı aktarılan veri kümesi türüdür. Azure Veri Gezgini'ne veri yükleniyorsa, Ingestion veritabanında büyük/küçük harfe duyarlı bir "_raw" tablosu (örneğin, "Costs_raw") bulunmalıdır. FinOps hub'ları bu sürümde aşağıdaki veri kümelerini destekler:
    • CommitmentDiscountUsage - Maliyet Yönetimi rezervasyon ayrıntıları dışa aktarma.
    • Maliyetler - ODAK maliyeti ve kullanım verileri.
    • Fiyatlar - Maliyet Yönetimi fiyat çizelgesi dışa aktarımı.
    • Önerileri - Maliyet Yönetimi rezervasyon önerilerini dışarı aktarma.
    • İşlemler - Maliyet Yönetimi rezervasyon işlemlerini dışa aktarma.
    • Özel veri setlerini yutmak için, {dataset}_raw veritabanında eşleşen bir tablosu ve parquet yutma eşlemesi oluşturun.
  • {date-folder-path}, kaç tane alınan veri kümesinin saklanması gerektiğini gösteren bir veya daha fazla klasör olabilir. Örnekler:
    • Veri kümesinin geçmişini izlememek amacıyla all (veya herhangi bir yer tutucu) kullanın. Her veri girişi önceki verilerin yerini tamamen alır. Depolama tabanlı Power BI raporlarında desteklenmez.
    • {yyyy} yılda yalnızca en son alımı korumak için dışarı aktarılan veri kümesinin dört basamaklı bir yılı olarak. Depolama tabanlı Power BI raporlarında desteklenmez.
    • {yyyy}/{mm} her ay için en son veri yüklemesini saklamak amacıyla, dışarı aktarılan veri kümesinin dört basamaklı yılı ve iki basamaklı ayı olarak.
    • {yyyy}/{mm}/{dd} veri kümesinin günlük en son alımı sürdürmek için dört basamaklı yıl, iki basamaklı ay ve iki basamaklı gün olarak dışa aktarılması. Depolama tabanlı Power BI raporlarında desteklenmez.
  • {scope-id-path} verilerin geldiği kapsamın tam kaynak kimliğidir. Azure dışı verileri alıyorsanız, veri kapsamına (örneğin, aws/{account-id}, , gcp/{project-name}oci/{component-id}/{component-id}) dayalı bir mantıksal hiyerarşi kullanmanızı öneririz.
  • {ingestion-id}, alınan veri kümesinin benzersiz bir kimliğidir. Alınan veri kümesi için tüm dosyalar arasında tutarlı olduğu sürece bu kimlik bir GUID, zaman damgası veya herhangi bir değer olabilir. Bu değer, aynı klasör yolunda daha önce alınan verileri kaldırmak için kullanılır.
  • {original-file-name} özgün dosya adı veya dosyadaki verilerin nereden kaynaklandığını belirten başka bir tanımlayıcı olması amaçlanmıştır. Bu değer yalnızca sorun giderme amacıyla kullanılır.

Verilerin depolama alanında veya Azure Veri Gezgini'nde çoğaltılmadığından emin olmak için tam klasör yolu ve alma kimliği kullanılır. Özgün dosya adı, sorun giderme amacıyla Azure Veri Gezgini kapsamlarına eklenir, ancak FinOps hub'ları tarafından başka bir şekilde izlenmez veya kullanılmaz.

Azure dışı verileri izlemek için hub'ları kullanmanız gerekiyorsa, bu kılavuzu kullanarak verileri FOCUS'a dönüştürün ve alma kapsayıcısına bırakın. Azure dışı veriler için destek, en son sürümde açıkça test edilmemiştir. Herhangi bir sorunla karşılaşırsanız bir sorun oluşturun.


Dışarı aktarmalar hakkında

FinOps hub'ları maliyet verilerini almak için Maliyet Yönetimi dışarı aktarmalarından yararlanıyor. Maliyet Yönetimi, msexports depolama kapsayıcısında dışarı aktarılan verilerin klasör yapısını denetler. Tipik bir yol şöyle görünür:

{container}/{path}/{date-range}/{export-name}/{export-time}/{guid}/{file}

FinOps hub'ları kapsamı, veri kümesini, ayı vb. tanımlamak için bildirim dosyasını kullanır. Hub'lar için yolun tek önemli bölümü,msexports olması gereken kapsayıcıdır.

Verileri ingestion kapsayıcısına dışa aktarmayın. Dışarı aktarılan CSV'lerin hubs altyapısı tarafından işlenebilmesi için msexports kapsayıcısına yayımlanması gerekir.

Özel verileri almak için, FinOps araç seti Power BI raporlarının beklendiği gibi çalışabilmesi amacıyla parquet dosyalarını veri alma kapsayıcısına kaydedin. Tüm parquet dosyaları eklendikten sonra, yükleme işlemini tetiklemek için boş bir manifest.json dosyası ekleyin.

CSV dosyasını Maliyet Yönetimi dışa aktarımlarından almak için dosyaları msexports kapsayıcısında belirli bir klasöre kaydedin. Tüm dosyalar eklendikten sonra aşağıdaki şablonu temel alan bir manifest.json dosyası ekleyin. Alma işleminin başarılı olmasını sağlamak için aşağıdaki değişiklikleri yapın:

  1. Alınan veri kümesinin kapsamındaki benzersiz bir değere <export-name> değiştirin.
    • Bu yalnızca alınan ve yalnızca dışarı aktarma bildiriminden tanımlanmayan birçok farklı öneri türünü ayırt etmeye yönelik öneriler için kullanılır. Rezervasyon önerileri için ideal olarak hizmeti, kapsamı (tek/paylaşılan) ve geriye dönük dönemi dahil edin.
  2. <dataset> ve <version> değerlerini Maliyet Yönetimi dışa aktarma türü ve sürümüne değiştirin. Desteklenen veri kümeleri için aşağıdaki listeye bakın.
  3. Verilerin geldiği kapsam için <scope>'yi Azure kaynak kimliği ile değiştirin.
  4. <guid> öğesini benzersiz bir GUID'ye değiştirin.
  5. Veri kümesinin yıl ve ayı olarak değiştirin <yyyy-MM> .
  6. Kapsayıcının altındaki tam klasör yoluna geçin <path-to-file> ("msexports" eklemeyin).
  7. "<file-name>'ü, depolama alanına yüklenen ilk dosyanın adıyla değiştirin."
  8. Birden fazla CSV dosyanız varsa, karşıya yüklediğiniz her dosyanın blob nesnesini kopyalayın ve dosya adını güncelleştirin.
{
  "blobCount": 1,
  "dataRowCount": 1,
  "exportConfig": {
    "exportName": "<export-name>",
    "type": "<dataset>",
    "dataVersion": "<version>",
    "resourceId": "<scope>/providers/Microsoft.CostManagement/exports/export-name"
  },
  "runInfo": {
    "runId": "<guid>",
    "startDate": "<yyyy-MM>-01T00:00:00"
  },
  "blobs": [
    {
      "blobName": "<path-to-file>/<file-name>.csv"
    }
  ]
}

FinOps hub'ları aşağıdaki veri kümesi türlerini, sürümlerini ve API sürümlerini destekler:

  • FocusCost: 1.0r2, 1.0, 1.0-preview(v1)
  • Fiyat Sayfası: 2023-05-01
  • Rezervasyon Detayları: 2023-03-01
  • RezervasyonTavsiyeleri: 2023-05-01
  • Rezervasyon İşlemleri: 2023-05-01
  • API sürümleri: 2023-07-01-preview

FinOps hubs v0.6

Aşağıdaki bölümlerde FinOps hub'ları 0.6'daki veri işlemi açıklanmaktadır.

v0.6 sürümünde kapsam ayarlama

Aşağıdaki adımlar, bir hub örneğine yeni, yönetilen bir kapsam eklendiğinde gerçekleşir. Yönetilmeyen kapsamlar (Maliyet Yönetimi dışarı aktarmalarının el ile yapılandırıldığı) hub'larda herhangi bir kurulum gerektirmez.

  1. settings.json dosyası güncelleştirildiğinde config_SettingsUpdated tetikleyicisi çalışır.
  2. config_ConfigureExports işlem hattı, eklenen tüm yeni kapsamlar için yeni dışarı aktarmalar oluşturur.

v0.6'da veri alımı

Veri alımı iki bölüme ayrılabilir:

  1. Dışa aktarımlar verileri depolama alanına iteler.
  2. Hubs verileri işler ve alır.

Yönetilen kapsamlar için hub'lar aşağıdaki adımları gerçekleştirir:

  1. config_DailySchedule ve config_MonthlySchedule tetikleyicileri, veri alımını başlatmak için ilgili zamanlamalarında çalışır.
  2. config_StartExportProcess işlem hattı, çalışmakta olan zamanlama için geçerli dışarı aktarmaları alır.
  3. config_RunExportJobs işlem hattı, seçilen dışarı aktarmaların her birini yürütür.
  4. Maliyet Yönetimi ham maliyet ayrıntılarını msexports kapsayıcısına aktarır . Daha fazla bilgi edinin.
  5. msexports_ExecuteETL işlem hattı, dosyalar msexports kapsayıcısına eklendiğinde extract-transform-load (ETL) işlem hattını kuyruğa alır.
  6. msexports_ETL_ingestion işlem hattı, verileri Parquet biçimine dönüştürür ve ölçeklenebilir bir dosya yapısı kullanarak alma kapsayıcısına taşır. Daha fazla bilgi edinin.
  7. Power BI veya diğer araçlar, veri alım kapsayıcısından verileri okur.

Dışarı aktarmalar çalıştırıldıktan sonra( yönetilen veya yönetilmeyen) hub'lar aşağıdaki adımları gerçekleştirir:

  1. msexports_ExecuteETL işlem hattı, dosyalar depolama alanına eklendiğinde ayıklama-dönüştürme-yükleme (ETL) işlemini başlatıyor.
  2. msexports_ETL_ingestion işlem hattı, verileri Parquet biçimine dönüştürür ve ölçeklenebilir bir dosya yapısı kullanarak alma kapsayıcısına taşır. Daha fazla bilgi edinin.
  3. Power BI veya diğer araçlar, veri alım kapsayıcısından verileri okur.

v0.6 versiyonunda veri alımı hakkında

FinOps hub'ları, alma kapsayıcısında belirli bir klasör yoluna ve dosya adı biçimine dayanır:

ingestion/{dataset}/{date-folder-path}/{scope-id-path}/{ingestion-id}__{original-file-name}.parquet
  • ingestion , veri işlem hattının verileri kaydettiği kapsayıcıdır.
  • {dataset} , dışarı aktarılan veri kümesi türüdür.
  • {date-folder-path}, kaç tane alınan veri kümesinin saklanması gerektiğini gösteren bir veya daha fazla klasör olabilir. Örnekler:
    • Veri kümesinin geçmişini izlememek amacıyla all (veya herhangi bir yer tutucu) kullanın. Her veri girişi önceki verilerin yerini tamamen alır. Depolama tabanlı Power BI raporlarında desteklenmez.
    • {yyyy} yılda yalnızca en son alımı korumak için dışarı aktarılan veri kümesinin dört basamaklı bir yılı olarak. Depolama tabanlı Power BI raporlarında desteklenmez.
    • {yyyy}/{mm} her ay için en son veri yüklemesini saklamak amacıyla, dışarı aktarılan veri kümesinin dört basamaklı yılı ve iki basamaklı ayı olarak.
    • {yyyy}/{mm}/{dd} veri kümesinin günlük en son alımı sürdürmek için dört basamaklı yıl, iki basamaklı ay ve iki basamaklı gün olarak dışa aktarılması. Depolama tabanlı Power BI raporlarında desteklenmez.
  • {scope-id-path} verilerin geldiği kapsamın tam kaynak kimliğidir. Azure dışı veriler alınıyorsa, verilerin kapsamına (örneğin, "aws/{account-id}", "gcp/{project-name}", "oci/{component-id}/{component-id}") dayalı bir mantıksal hiyerarşi kullanmanızı öneririz.
  • {ingestion-id}, alınan veri kümesinin benzersiz bir kimliğidir. Alınan veri kümesi için tüm dosyalar arasında tutarlı olduğu sürece bu kimlik bir GUID, zaman damgası veya herhangi bir değer olabilir. Bu değer, aynı klasör yolunda daha önce alınan verileri kaldırmak için kullanılır.
  • {original-file-name} özgün dosya adı veya dosyadaki verilerin nereden kaynaklandığını belirten başka bir tanımlayıcı olması amaçlanmıştır. Bu değer yalnızca sorun giderme amacıyla kullanılır.

Verilerin depolama alanında veya Azure Veri Gezgini'nde çoğaltılmadığından emin olmak için tam klasör yolu ve alma kimliği kullanılır. Özgün dosya adı, sorun giderme amacıyla Azure Veri Gezgini kapsamlarına eklenir, ancak FinOps hub'ları tarafından başka bir şekilde izlenmez veya kullanılmaz.

Azure dışı verileri izlemek için hub'ları kullanmanız gerekiyorsa, bu kılavuzu kullanarak verileri FOCUS'a dönüştürün ve alma kapsayıcısına bırakın. Azure dışı veriler için destek, en son sürümde açıkça test edilmemiştir. Herhangi bir sorunla karşılaşırsanız bir sorun oluşturun.


v0.6'daki dışarı aktarmalar hakkında

FinOps hub'ları maliyet verilerini almak için Maliyet Yönetimi dışarı aktarmalarını kullanır. Maliyet Yönetimi, msexports kapsayıcısında dışarı aktarılan verilerin klasör yapısını denetler. Tipik bir yol şöyle görünür:

{container}/{path}/{date-range}/{export-name}/{export-time}/{guid}/{file}

0,4 itibarıyla FinOps hub'ları dosya yollarına güvenmez. Hub'lar kapsamı, veri kümesini, ayı vb. tanımlamak için bildirim dosyasını kullanır. Hub'lar için yolun tek önemli bölümü, msexports olması gereken kapsayıcıdır.

Uyarı

  • Verileri ingestion kapsayıcısına dışa aktarmayın. Dışarı aktarılan CSV'lerin hubs altyapısı tarafından işlenebilmesi için msexports kapsayıcısına yayımlanması gerekir.
  • Özel verileri işlemek için, FinOps araç seti Power BI raporlarının beklendiği gibi çalışabilmesi için FOCUS ile hizalanmış parquet dosyalarını ingestion kapsayıcısına kaydedin.

Dışarı aktarma bildirimleri API sürümleriyle değişebilir. API sürümüyle ilgili bir örnek aşağıda verilmişti 2023-07-01-preview:

{
  "exportConfig": {
    "exportName": "<export-name>",
    "resourceId": "/<scope>/providers/Microsoft.CostManagement/exports/<export-name>",
    "dataVersion": "<dataset-version>",
    "apiVersion": "<api-version>",
    "type": "<dataset-type>",
    "timeFrame": "OneTime|TheLastMonth|MonthToDate",
    "granularity": "Daily"
  },
  "deliveryConfig": {
    "partitionData": true,
    "dataOverwriteBehavior": "CreateNewReport|OverwritePreviousReport",
    "fileFormat": "Csv",
    "containerUri": "<storage-resource-id>",
    "rootFolderPath": "<path>"
  },
  "runInfo": {
    "executionType": "Scheduled",
    "submittedTime": "2024-02-03T18:33:03.1032074Z",
    "runId": "af754a8e-30fc-4ef3-bfc6-71bd1efb8598",
    "startDate": "2024-01-01T00:00:00",
    "endDate": "2024-01-31T00:00:00"
  },
  "blobs": [
    {
      "blobName": "<path>/<export-name>/<date-range>/<export-time>/<guid>/<file-name>.<file-type>",
      "byteCount": ###
    }
  ]
}

FinOps hub'ları aşağıdaki özellikleri kullanır:

  • exportConfig.resourceId kapsamı belirlemek için.
  • exportConfig.type veri kümesi türünü tanımlamak için.
  • exportConfig.dataVersion veri kümesi sürümünü tanımlamak için.
  • runInfo.startDate dışa aktarılan ayı belirlemek için.

FinOps hub'ları aşağıdaki veri kümesi türlerini, sürümlerini ve API sürümlerini destekler:

  • FocusCost: 1.0, 1.0-preview(v1)
  • Fiyat Sayfası: 2023-05-01
  • Rezervasyon Detayları: 2023-03-01
  • RezervasyonTavsiyeleri: 2023-05-01
  • Rezervasyon İşlemleri: 2023-05-01
  • API sürümleri: 2023-07-01-preview

FinOps hubs v0.4-0.5

Aşağıdaki bilgiler, Verilerin FinOps hubs v0.4 ve v0.5'te nasıl işlendiğini açıklar.

v0.4-0.5'te Scope ayarları

  1. settings.json dosyası güncelleştirildiğinde config_SettingsUpdated tetikleyicisi çalışır.
  2. config_ConfigureExports işlem hattı, eklenen tüm yeni kapsamlar için yeni dışarı aktarmalar oluşturur.

v0.4-0.5'te veri alımı

Yönetilen kapsamlar için:

  1. config_DailySchedule ve config_MonthlySchedule tetikleyicileri, veri alımını başlatmak için ilgili zamanlamalarında çalışır.
  2. config_ExportData işlem hattı, çalışmakta olan zamanlama için geçerli dışarı aktarmaları alır.
  3. config_RunExports işlem hattı, seçilen dışarı aktarmaların her birini yürütür.
  4. Maliyet Yönetimi ham maliyet ayrıntılarını msexports kapsayıcısına aktarır . Daha fazla bilgi için v04-05'te dışa aktarmalar hakkında bölümüne bakın.

Dışarı aktarmalar tamamlandıktan sonra hem yönetilen hem de yönetilmeyen kapsamlar için:

  1. msexports_ExecuteETL işlem hattı, dosyalar depolama alanına eklendiğinde ayıklama-dönüştürme-yükleme (ETL) işlemini başlatıyor.
  2. msexports_ETL_ingestion işlem hattı, verileri standart bir şemaya dönüştürür ve ham verileri veri alımı kapsayıcısına parquet biçiminde kaydeder. Daha fazla bilgi için v04-05'te alım hakkında bölümüne bakın.
  3. Power BI, alma kapsayıcısından maliyet verilerini okur.

v0.4-0.5 sürümünde veri alımı hakkında

FinOps hub'ları giriş kapsayıcısındaki belirli bir klasör yoluna dayanır:

ingestion/{dataset}/{yyyy}/{mm}/{scope-id}
  • ingestion , veri işlem hattının verileri kaydettiği kapsayıcıdır.
  • {dataset} , dışarı aktarılan veri kümesi türüdür.
  • {month} , olarak biçimlendirilmiş dışarı aktarılan verilerin yılı ve ayıdır yyyyMM.
  • {scope-id} verilerin kaynağı olan kapsamın tam kaynak kimliği olması beklenir.

Azure dışı verileri izlemek için hub'ları kullanmanız gerekiyorsa verileri FOCUS'a dönüştürün ve alma kapsayıcısına bırakın. Bu işlem en son sürümde açıkça test edilmedi. Herhangi bir sorunla karşılaşırsanız bir sorun oluşturun.

v0.4-0.5'teki dışarı aktarmalar hakkında

FinOps hub'ları maliyet verilerini almak için Maliyet Yönetimi dışarı aktarmalarını kullanır. Maliyet Yönetimi, msexports kapsayıcısında dışarı aktarılan verilerin klasör yapısını denetler. Tipik bir yol şöyle görünür:

{container}/{path}/{date-range}/{export-name}/{export-time}/{guid}/{file}

0,4 itibarıyla FinOps hub'ları dosya yollarına güvenmez. Hub'lar kapsamı, veri kümesini, ayı vb. tanımlamak için bildirim dosyasını kullanır. Hub'lar için yolun önemli olan tek bölümü, kapsayıcının msexports olması gerektiğidir.

Not

Verileri ingestion kapsayıcısına dışa aktarmayın. Dışarı aktarılan CSV'lerin hubs altyapısı tarafından işlenebilmesi için msexports kapsayıcısına yayımlanması gerekir.

Özel verileri işlemek için, FinOps araç seti Power BI raporlarının beklendiği gibi çalışabilmesi için FOCUS ile hizalanmış parquet dosyalarını ingestion kapsayıcısına kaydedin.

Dışarı aktarma bildirimleri API sürümleriyle değişebilir. API sürümüyle ilgili bir örnek aşağıda verilmişti 2023-07-01-preview:

{
  "exportConfig": {
    "exportName": "<export-name>",
    "resourceId": "/<scope>/providers/Microsoft.CostManagement/exports/<export-name>",
    "dataVersion": "<dataset-version>",
    "apiVersion": "<api-version>",
    "type": "<dataset-type>",
    "timeFrame": "OneTime|TheLastMonth|MonthToDate",
    "granularity": "Daily"
  },
  "deliveryConfig": {
    "partitionData": true,
    "dataOverwriteBehavior": "CreateNewReport|OverwritePreviousReport",
    "fileFormat": "Csv",
    "containerUri": "<storage-resource-id>",
    "rootFolderPath": "<path>"
  },
  "runInfo": {
    "executionType": "Scheduled",
    "submittedTime": "2024-02-03T18:33:03.1032074Z",
    "runId": "af754a8e-30fc-4ef3-bfc6-71bd1efb8598",
    "startDate": "2024-01-01T00:00:00",
    "endDate": "2024-01-31T00:00:00"
  },
  "blobs": [
    {
      "blobName": "<path>/<export-name>/<date-range>/<export-time>/<guid>/<file-name>.csv",
      "byteCount": ###
    }
  ]
}

FinOps hub'ları aşağıdaki özellikleri kullanır:

  • exportConfig.resourceId kapsamı belirlemek için.
  • exportConfig.type veri kümesi türünü tanımlamak için.
  • exportConfig.dataVersion veri kümesi sürümünü tanımlamak için.
  • runInfo.startDate dışa aktarılan ayı belirlemek için.

FinOps hub'ları aşağıdaki veri kümesi türlerini, sürümlerini ve API sürümlerini destekler:

  • FocusCost: 1.0, 1.0-preview(v1)
  • Fiyat Sayfası: 2023-05-01
  • Rezervasyon Detayları: 2023-03-01
  • RezervasyonTavsiyeleri: 2023-05-01
  • Rezervasyon İşlemleri: 2023-05-01
  • API sürümleri: 2023-07-01-preview

FinOps hubs v0.2-0.3

Aşağıdaki adımlarda, FinOps hubs 0.2-0.3 sürümlerini kullanarak maliyet verilerini dışarı aktarma ve işleme işlemi özetlenmektedir:

  1. Maliyet Yönetimi ham maliyet ayrıntılarını msexports kapsayıcısına aktarır .
  2. msexports_ExecuteETL işlem hattı, dosyalar depolama alanına eklendiğinde ayıklama-dönüştürme-yükleme (ETL) işlemini başlatıyor.
  3. msexports_ETL_ingestion işlem hattı, dışarı aktarılan verileri alma kapsayıcısında parquet biçiminde kaydeder.
  4. Power BI, alma kapsayıcısından maliyet verilerini okur.

FinOps hub'ları 0.2-0.3 dışarı aktarılan kapsamı ve ayı belirlemek için dışarı aktarma yolunu kullanır. Bu nokta, yol güncelleştirmelerinin veri işlem hatlarını bozabileceği için önemlidir. Bu sorunu önlemek için FinOps hubs 0.4'e güncelleştirmenizi öneririz. Beklenen yol aşağıdakine benzer olmalıdır:

msexports/{scope-id}/{export-name}/{date-range}/{export-time}/{guid}/{file}
  • msexports , dışarı aktarmada belirtilen kapsayıcıdır.
  • {scope-id} , dışarı aktarmada belirtilen klasör yoludur.

    Hubs 0.3 ve önceki sürümler, verilerin hangi kapsamdan geldiğini belirlemek için bunu kullanır. Kapsam kimliğini kullanmanızı öneririz, ancak herhangi bir değer kullanılabilir. Örnek kapsam kimlikleri şunlardır:

    Kapsam türü Örnek değer
    Abonelik /subscriptions/###
    Kaynak grubu /subscriptions/###/resourceGroups/###
    Fatura hesabı /providers/Microsoft.Billing/billingAccounts/###
    Faturalama profili /providers/Microsoft.Billing/billingAccounts/###/billingProfiles/###
  • {export-name} dışarı aktarmanın adıdır.

    Hub'lar bu klasörü yoksayar.

  • {date-range} , dışarı aktarılmakta olan tarih aralığı verileridir.

    Hubs 0.3 ve önceki sürümler ayı tanımlamak için bunu kullanır. Bu klasörün biçimi şeklindedir yyyyMMdd-yyyyMMdd. Hubs 0.4 bunun yerine bildirimi kullanır.

  • {export-time} , dışarı aktarma çalıştırıldığında alınan bir zaman damgasıdır.

    Hub'lar bunu göz ardı eder. Bu klasörün biçimi şeklindedir yyyyMMddHHmm.

  • {guid} benzersiz bir GUID'dir ve her zaman mevcut değildir.

    Hub'lar bunu göz ardı eder. Maliyet Yönetimi her zaman bu klasörü içermez. Dahil edilip edilmeyeceği, dışarı aktarmayı oluşturmak için kullanılan API sürümüne bağlıdır.

  • {file} bir bildirim veya dışarı aktarılan verilerdir.

    Sürüm 0.3 ve önceki sürümler bildirim dosyalarını yoksayar ve yalnızca *.csv dosyalarını izler. Gelecek bir sürümde hub'lar bildirimi izleyecektir.


FinOps hubs v0.1

Aşağıdaki adımlarda, FinOps hubs sürüm 0.1 kullanılarak maliyet verilerini dışarı aktarma ve işleme işlemi özetlenmiştir:

  1. Maliyet Yönetimi ham maliyet ayrıntılarını msexports kapsayıcısına aktarır .
  2. msexports_transform işlem hattı ham verileri veri alımı kapsayıcısına parquet biçiminde kaydeder.
  3. Power BI, alma kapsayıcısından maliyet verilerini okur.

Görüş bildirin

Hızlı bir incelemeyle nasıl olduğumuzu bize bildirin. Bu incelemeleri FinOps araçlarını ve kaynaklarını geliştirmek ve genişletmek için kullanırız.

Belirli bir şey arıyorsanız mevcut bir fikir için oy verin veya yeni bir fikir oluşturun. Daha fazla oy almak için başkalarıyla fikir paylaşın. En çok oyu alan fikirlere odaklanıyoruz.