olap'tan servis raporu bildir. Yayınlar. Satış analizi için OLAP teknolojilerinin kullanımına bir örnek

  • 16.04.2019
Belki bazıları için, raporları oluştururken OLAP teknolojisinin (Çevrimiçi Analitik İşleme) kullanımı bir tür egzotik gibi görünebilir, bu nedenle onlar için bir OLAP-CUBE kullanımı hiç de otomasyon için en önemli gereksinimlerden biri değildir. bütçeleme ve yönetim muhasebesi.

Aslında yönetim raporlaması ile çalışırken çok boyutlu KÜP kullanmak çok uygundur. Bütçe formatlarını geliştirirken, çok değişkenli formlar sorunuyla karşılaşılabilir (bununla ilgili daha fazla bilgi Kitap 8 "Bir şirkette bütçeleme belirleme teknolojisi" ve "Yönetim muhasebesini ayarlama ve otomatikleştirme" kitabında bulunabilir).

Bunun nedeni, şirketin etkin yönetiminin giderek daha ayrıntılı yönetim raporlaması gerektirmesidir. Yani, sistem giderek daha farklı analitik bölümler kullanır (bilgi sistemlerinde analitikler bir dizi dizin tarafından belirlenir).

Doğal olarak bu, yöneticilerin ilgilendikleri tüm analitik bölümlerde raporlar almak istemelerine yol açar. Ve bu, raporların bir şekilde “nefes almaya” zorlanması gerektiği anlamına gelir. Başka bir deyişle, bu durumda aynı raporun anlam açısından çeşitli analitik bölümlerde bilgi vermesi gerektiğinden bahsettiğimizi söyleyebiliriz. Bu nedenle, statik raporlar artık birçok modern yöneticiye uymuyor. Çok boyutlu bir KÜP'ün sağlayabileceği dinamiklere ihtiyaçları var.

Böylece, OLAP teknolojisi, modern ve gelecek vaat eden bilgi sistemlerinde zaten vazgeçilmez bir unsur haline gelmiştir. Bu nedenle bir yazılım ürünü seçerken OLAP teknolojisini kullanıp kullanmadığına dikkat etmeniz gerekir.

Ve gerçek KÜPleri taklitlerden ayırt edebilmeniz gerekir. MS Excel'deki pivot tablolar böyle bir taklittir. Evet, bu araç bir KÜP gibi görünüyor, ama aslında değil, çünkü bunlar statik değil, dinamik tablolar. Ayrıca, hiyerarşik dizinlerdeki öğeleri kullanan raporlar oluşturma yeteneğinin çok daha kötü bir uygulamasına sahiptirler.

Yönetim raporlaması oluştururken KUB kullanmanın uygunluğunu doğrulamak için en basit satış bütçesi örneğini verebiliriz. Bu örnekte, şu analitik dilimler şirketle ilgilidir: ürünler, şubeler ve dağıtım kanalları. Bu üç analitik şirket için önemliyse, satış bütçesi (veya raporu) birkaç şekilde görüntülenebilir.

Üç analitik dilime dayalı olarak bütçe satırları oluşturursanız (incelenen örnekte olduğu gibi), bu, KUB kullanarak oldukça karmaşık bütçe modelleri oluşturmanıza ve ayrıntılı raporlar derlemenize olanak tanır.

Örneğin, bir satış bütçesi yalnızca bir analiz (referans kitabı) kullanılarak derlenebilir. Tek bir "Ürünler" analizine dayalı bir satış bütçesi örneği şurada gösterilmektedir: Şekil 1.

Pirinç. 1. Bir OLAP-CUBE'de tek bir analitik "Ürünler" temelinde oluşturulmuş bir satış bütçesi örneği

Aynı satış bütçesi iki analiz (referans kitap) kullanılarak derlenebilir. "Ürünler" ve "İştirakler" analitiğine dayalı olarak oluşturulmuş bir satış bütçesi örneği şu adreste sunulmaktadır: şekil 2.

Pirinç. 2. "INTEGRAL" yazılım paketinin OLAP-CUBE'sindeki iki analitik "Ürünler" ve "İştirakler" temelinde oluşturulmuş bir satış bütçesi örneği

.

Daha ayrıntılı raporlar oluşturmaya ihtiyaç varsa, aynı satış bütçesi üç analitik (referans kitap) kullanılarak derlenebilir. "Ürünler", "İştirakler" ve "Dağıtım kanalları" olmak üzere üç boyut temelinde oluşturulmuş bir satış bütçesi örneği aşağıda sunulmuştur. Figür 3.

Pirinç. 3. "INTEGRAL" yazılım paketinin OLAP-CUBE'sindeki üç analitik "Ürünler", "İştirakler" ve "Dağıtım kanalları" temelinde oluşturulmuş bir satış bütçesi örneği

Raporları oluşturmak için kullanılan KUB'un verileri farklı bir sırayla görüntülemenize izin verdiği unutulmamalıdır. Üzerinde Figür 3 satış bütçesi önce ürüne, sonra şubeye ve ardından dağıtım kanalına göre "dağıtılır".

Aynı veriler farklı bir sırayla sunulabilir. Üzerinde Şekil 4 aynı satış bütçesi önce ürüne, ardından dağıtım kanalına ve ardından şubeye göre "yayılır".

Pirinç. 4. INTEGRAL yazılım paketinin OLAP-CUBE'sindeki üç analitik "Ürünler", "Dağıtım kanalları" ve "İştirakler" temelinde oluşturulmuş bir satış bütçesi örneği

Üzerinde şekil 5 aynı satış bütçesi önce şubeye, sonra ürüne ve ardından dağıtım kanalına göre "yayılır".

Pirinç. 5. INTEGRAL yazılım kompleksinin OLAP-CUBE'sindeki üç analitik "Şube", "Ürünler" ve "Dağıtım kanalları" temelinde oluşturulmuş bir satış bütçesi örneği

aslında hepsi değil olası seçenekler Satış bütçesinin çıktısı.

Ek olarak, KUB'un dizinlerin hiyerarşik yapısı ile çalışmanıza izin vermesine dikkat etmeniz gerekir. Sunulan örneklerde hiyerarşik dizinler "Ürünler" ve "Dağıtım kanalları"dır.

Kullanıcının bakış açısından, o bu örnek birkaç yönetim raporu alır (bkz. Pirinç. 1-5) ve ayarlar açısından yazılım ürünü tek rapordur. Sadece KÜP yardımı ile birkaç şekilde görüntülenebilir.

Doğal olarak, pratikte mümkündür. çok sayıda Makaleleri bir veya daha fazla analize dayanıyorsa, çeşitli yönetim raporları için çıktı seçenekleri. Ve analitik setinin kendisi, kullanıcıların detaylandırma ihtiyaçlarına bağlıdır. Doğru, bir yandan daha fazla analist, daha ayrıntılı raporlar oluşturulabileceğini unutmamak gerekir. Ancak öte yandan, bütçelemenin finansal modelinin daha karmaşık olacağı anlamına gelir. Her halükarda, eğer KUB mevcutsa, şirket gerekli raporlamayı şurada görüntüleyebilecektir. Çeşitli seçenekler, ilgili analitik bölümlere uygun olarak.

OLAP-CUBE'nin birkaç özelliğinden daha bahsetmek gerekiyor.

Çok boyutlu hiyerarşik bir OLAP-CUBE'de birkaç boyut vardır: satır tipi, tarih, satırlar, arama 1, arama 2 ve arama 3 (bkz. Pirinç. 6). Doğal olarak, rapor, maksimum dizini içeren bütçe satırında olduğu kadar dizinli düğme görüntüler. Bütçenin herhangi bir satırında tek bir dizin yoksa, rapor dizinleri olan herhangi bir düğme içermeyecektir.

OLAP-CUBE başlangıçta tüm boyutlar üzerine inşa edilmiştir. Varsayılan olarak, bir rapor ilk oluşturulduğunda, boyutlar, şurada gösterildiği gibi tam olarak bu alanlarda bulunur: şekil 6. Yani, "Tarih" gibi bir boyut, dikey boyutlar (sütun alanındaki boyutlar), "Satırlar", "Arama 1", "Arama 2" ve "Arama 3" alanında bulunur. " - yatay ölçümler alanında (alan satırlarındaki boyutlar) ve "genişletilmemiş" boyutlar alanındaki "Satır Tipi" boyutu (sayfa alanındaki boyutlar). Son alanda bir boyut varsa, rapordaki veriler o boyut tarafından "genişletilmez".

Bu boyutların her biri, üç alandan herhangi birine yerleştirilebilir. Ölçümleri aktardıktan sonra, rapor anında buna uygun olarak yeniden oluşturulur. yeni yapılandırmaölçümler. Örneğin, tarih ve dizeleri dizinlerle değiştirebilirsiniz. Veya referans kitaplarından birini dikey ölçüm alanına aktarabilirsiniz (bkz. Pirinç. 7). Başka bir deyişle, OLAP-CUBE'deki rapor "bükülebilir" ve rapor çıktısının kullanıcı için en uygun sürümünü seçebilir.

Pirinç. 7. "INTEGRAL" yazılım paketinin ölçüm konfigürasyonunu değiştirdikten sonra bir raporu yeniden oluşturma örneği

Ölçüm konfigürasyonu, KUB'un ana biçiminde veya değişiklik haritasının düzenleyicisinde değiştirilebilir (bkz. Pirinç. sekiz). Bu düzenleyicide, ölçümleri fare ile bir alandan diğerine sürükleyip bırakabilirsiniz. Ayrıca, aynı alandaki ölçümleri değiştirebilirsiniz.

Ayrıca aynı formda bazı ölçüm parametrelerini yapılandırabilirsiniz. Her boyut için toplamların konumunu, öğelerin sıralama düzenini ve öğelerin adlarını özelleştirebilirsiniz (bkz. Pirinç. sekiz). Raporda görüntülenecek öğelerin adını da belirtebilirsiniz: kısaltılmış (Ad) veya tam (Tam Ad).

Pirinç. 8. "INTEGRAL" yazılım kompleksinin ölçüm haritasının editörü

Ölçüm parametreleri doğrudan bunların her birinde düzenlenebilir (bkz. Pirinç. 9). Bunun için ölçüm adının yanında bulunan buton üzerinde bulunan ikona tıklayınız.

Pirinç. 9. Bir dizini düzenlemeye bir örnek 1 Ürünler ve hizmetler

Bu düzenleyici ile raporda göstermek istediğiniz öğeleri seçebilirsiniz. Varsayılan olarak, tüm öğeler raporda görüntülenir, ancak gerekirse bazı öğeler veya klasörler atlanabilir. Örneğin, raporda yalnızca bir ürün grubunu görüntülemeniz gerekiyorsa, boyut düzenleyicide geri kalan tüm öğelerin işareti kaldırılmalıdır. Bundan sonra rapor sadece bir ürün grubunu içerecektir (bkz. Pirinç. on).

Öğeleri bu düzenleyicide de sıralayabilirsiniz. Ayrıca, elemanlar çeşitli şekillerde yeniden düzenlenebilir. Böyle bir yeniden gruplandırmadan sonra, rapor anında yeniden oluşturulur.

Pirinç. 10. "INTEGRAL" yazılım paketindeki raporda yalnızca bir ürün grubu (klasör) görüntüleme örneği

Boyut düzenleyicide hızlı bir şekilde kendi gruplarınızı oluşturabilir, oradaki dizinlerden öğeleri sürükleyebilirsiniz, vb. Varsayılan olarak, yalnızca Diğer grubu otomatik olarak oluşturulur, ancak başka gruplar da oluşturabilirsiniz. Böylece, boyut düzenleyiciyi kullanarak, referans kitapların hangi öğelerinin raporda hangi sırayla görüntüleneceğini yapılandırabilirsiniz.


Tüm bu yeniden düzenlemelerin kaydedilmediğine dikkat edilmelidir. Yani rapor kapatıldıktan veya yeniden hesaplandıktan sonra, yapılandırılan metodolojiye göre tüm dizinler raporda görüntülenecektir.

Aslında, tüm bu değişiklikler başlangıçta dizeleri kurarken yapılmış olabilir.

Örneğin, kısıtlamaları kullanarak, raporda hangi öğelerin veya dizin gruplarının görüntüleneceğini ve hangilerinin görüntülenmeyeceğini de belirleyebilirsiniz.

Not: Bu makalenin konusu çalıştaylarda daha ayrıntılı olarak tartışılmaktadır. "İş Bütçe Yönetimi" ve "Yönetim muhasebesinin kurulması ve otomasyonu" Bu makalenin yazarı tarafından yürütülmüştür - Alexander Karpov.

Kullanıcının raporda neredeyse düzenli olarak yalnızca belirli öğeleri veya dizin klasörlerini görüntülemesi gerekiyorsa, bu tür ayarları rapor satırları oluştururken önceden yapmak daha iyidir. Raporlardaki farklı referans unsur kombinasyonları kullanıcı için önemliyse, metodolojiyi ayarlarken herhangi bir kısıtlamaya gerek yoktur. Tüm bu kısıtlamalar, boyut düzenleyici kullanılarak hızlı bir şekilde yapılandırılabilir.

Ciddi bir işletmenin bilgi sistemleri, kural olarak, verilerin karmaşık analizi, dinamikleri, eğilimleri vb. için tasarlanmış uygulamalar içerir. Buna göre, üst yönetim, analiz sonuçlarının ana tüketicisi haline gelir. Bu tür analizler nihai olarak karar vermeyi kolaylaştırmayı amaçlar. Ve herhangi bir yönetim kararı verebilmek için, bunun için gerekli olan, genellikle nicel bilgilere sahip olmak gerekir. Bunu yapmak için, işletmenin tüm bilgi sistemlerinden bu verileri toplamak, ortak bir formata getirmek ve ancak ondan sonra analiz etmek gerekir. Bunu yapmak için veri ambarları (Veri Ambarı) oluşturun.

Veri ambarı nedir?

Genellikle - analitik değere sahip tüm bilgilerin toplandığı yer. Bu tür depolamalar için gereksinimler, OLAP'ın klasik tanımını takip eder ve aşağıda açıklanacaktır.

Bazen Depo'nun başka bir amacı vardır - tüm bilgi sistemlerinde bilginin bütünlüğünü ve uygunluğunu korumak için tüm kurumsal verilerin entegrasyonu. O. depo yalnızca analitik değil, hemen hemen tüm bilgileri biriktirir ve diğer sistemlere dizinler şeklinde yayınlayabilir.

Tipik bir veri ambarı, genellikle tipik bir ilişkisel veritabanından farklıdır. Birincisi, geleneksel veritabanları kullanıcıların günlük işlerini yapmalarına yardımcı olmak için tasarlanırken, veri ambarları karar vermek için tasarlanmıştır. Örneğin, bir ürünü satmak ve fatura düzenlemek, işlemleri işlemek için tasarlanmış bir veritabanı kullanılarak ve birkaç yıl boyunca satış dinamiklerini analiz ederek yapılır, bu da bir veri ambarı kullanarak tedarikçilerle çalışmayı planlamanıza olanak tanır.

İkinci olarak, geleneksel veri tabanları, sürekli değişim kullanıcıların çalışmaları sırasında ve veri ambarı nispeten kararlıdır: içindeki veriler genellikle bir programa göre güncellenir (örneğin, ihtiyaca bağlı olarak haftalık, günlük veya saatlik). İdeal olarak, ikmal süreci yalnızca yeni veriler eklemektir. belirli bir süre zaten depoda bulunan önceki bilgileri değiştirmeden zaman.

Üçüncüsü, geleneksel veritabanları çoğu zaman havuza giren verilerin kaynağıdır. Ek olarak, depolama ile doldurulabilir dış kaynaklar istatistik raporları gibi.

Depolama nasıl oluşturulur?

ETLtemel kavram: Üç aşama:
  • Çıkarma - harici kaynaklardan anlaşılır bir biçimde veri çıkarma;
  • Dönüşüm - kaynak veri yapısının analitik bir sistem oluşturmaya uygun yapılara dönüştürülmesi;
Bir aşama daha ekleyelim - veri temizleme ( temizlik) - istatistiksel veya uzman yöntemlere dayalı olarak alakasız veya hatalı verileri tarama süreci. Daha sonra "20011 Satışları" gibi raporlar oluşturmamak için.

Analize dönelim.

Analiz nedir ve neden gereklidir?

Analiz, karar vermek için verilerin incelenmesidir. Analitik sistemlere karar destek sistemleri denir ( KDS).

Burada, DSS ile çalışmak ile basit bir dizi düzenlenmiş ve düzenlenmemiş rapor arasındaki farkı belirtmekte fayda var. DSS'de analiz neredeyse her zaman etkileşimli ve yinelemelidir. Şunlar. analist verileri inceler, analitik sorguları derler ve düzeltir ve yapısı önceden bilinmeyebilecek raporları alır. Sorgu dilini tartışırken buna aşağıda daha ayrıntılı olarak döneceğiz. MDX.

OLAP

Karar destek sistemleri, genellikle, kullanıcıya, algılama ve analiz için uygun bir biçimde (tablolar, çizelgeler, vb.) Geleneksel kaynak veri segmentasyonu yaklaşımı, eksenleri nitelikler içeren ve hücreler birleştirilmiş nicel veriler içeren kaynak verilerden bir veya daha fazla çok boyutlu veri kümesinin (genellikle bir hiperküp veya metaküp olarak adlandırılır) seçimini kullanır. (Ayrıca, bu tür veriler ilişkisel tablolarda saklanabilir, ancak bu durumda, depolamanın fiziksel uygulamasından değil, verilerin mantıksal organizasyonundan bahsediyoruz.) Her eksen boyunca, nitelikler farklı seviyeleri temsil eden hiyerarşiler olarak düzenlenebilir. detay. Bu veri modeli sayesinde kullanıcılar karmaşık sorgular formüle edebilir, raporlar oluşturabilir ve veri alt kümelerini alabilir.

Karmaşık çok boyutlu veri analizi teknolojisine OLAP (On-Line Analitical Processing) denir. OLAP anahtar bileşen geleneksel veri ambarlarının organizasyonu. OLAP kavramı, ünlü bir veritabanı araştırmacısı ve ilişkisel veri modelinin yazarı olan Edgar Codd tarafından 1993 yılında tanımlanmıştır. 1995 yılında, Codd tarafından özetlenen gereksinimlere dayanarak, çok boyutlu analiz uygulamaları için aşağıdaki gereksinimleri içeren FASMI testi (Paylaşılan Çok Boyutlu Bilginin Hızlı Analizi - paylaşılan çok boyutlu bilginin hızlı analizi) formüle edildi:

  • kullanıcıya analiz sonuçlarını kabul edilebilir bir sürede (genellikle en fazla 5 saniye), daha az ayrıntılı bir analiz pahasına sağlamak;
  • herhangi bir mantıksal ve istatistiksel analiz özelliği gerçekleştirme olasılığı bu başvuru ve erişilebilir bir yere kaydedin. son kullanıcı biçim;
  • uygun kilitleme mekanizmaları ve yetkili erişim araçları desteği ile verilere çok kullanıcılı erişim;
  • hiyerarşiler ve çoklu hiyerarşiler için tam destek de dahil olmak üzere verilerin çok boyutlu kavramsal temsili (bu anahtar gereksinim OLAP);
  • herhangi biriyle iletişim kurma fırsatı gerekli bilgi büyüklüğü ve konumu ne olursa olsun.
OLAP işlevselliğinin en basit veri analiz araçlarından başlayarak çeşitli şekillerde uygulanabileceği unutulmamalıdır. Ofis uygulamaları ve dağıtılmış ile biten analitik sistemler sunucu ürünlerine dayalıdır. Şunlar. OLAP bir teknoloji değil, ideoloji.

OLAP'ın çeşitli uygulamalarından bahsetmeden önce, mantıksal bir bakış açısıyla küplerin ne olduğuna daha yakından bakalım.

Çok boyutlu kavramlar

OLAP ilkelerini göstermek için, Microsoft SQL Server'da bulunan Northwind veritabanını kullanacağız. Toptan teslimatlar Gıda. Bu tür veriler, tedarikçiler, müşteriler, tedarik edilen malların listesi ve kategorileri, siparişler ve sipariş edilen ürünler hakkındaki veriler, şirket çalışanlarının bir listesi hakkında bilgileri içerir.

Küp

Örneğin, şirketin siparişlerini içeren Faturalar1 tablosunu ele alalım. Bu tablodaki alanlar aşağıdaki gibi olacaktır:
  • Sipariş tarihi
  • Ülke
  • Şehir
  • Müşteri adı
  • Teslimat şirketi
  • Ürün adı
  • Mal miktarı
  • Sipariş fiyatı
Bu görüşe dayanarak hangi toplu verileri elde edebiliriz? Bunlar genellikle aşağıdaki gibi soruların cevaplarıdır:
  • Belirli bir ülkeden müşteriler tarafından verilen siparişlerin toplam değeri nedir?
  • Belirli bir ülkeden müşteriler tarafından verilen ve belirli bir şirket tarafından teslim edilen siparişlerin toplam maliyeti nedir?
  • Belirli bir yılda belirli bir ülkeden müşteriler tarafından verilen ve belirli bir şirket tarafından teslim edilen siparişlerin toplam değeri nedir?
Tüm bu veriler, gruplama ile oldukça açık SQL sorguları ile bu tablodan elde edilebilir.

Bu sorgunun sonucu her zaman bir sayı sütunu ve onu tanımlayan niteliklerin bir listesi (örneğin bir ülke) olacaktır - bu tek boyutlu bir veri seti veya matematiksel terimlerle bir vektördür.

Tüm ülkelerden siparişlerin toplam maliyeti ve bunların taşıyıcı şirketlere göre dağılımı hakkında bilgi almamız gerektiğini düşünün - sütun başlıklarının taşıyıcıları listeleyeceği, satır başlıklarının ülkeleri içereceği bir sayı tablosu (matris) alacağız. , ve hücreler sipariş miktarını içerecektir. Bu, iki boyutlu bir veri dizisidir. Böyle bir veri kümesine pivot tablo denir ( Pivot tablo) veya bir çapraz tablo.

Aynı verileri elde etmek istiyorsak, ancak yıllar bağlamında, o zaman bir değişiklik daha olacak, yani. veri kümesi üç boyutlu (3. dereceden koşullu tensör veya 3 boyutlu "küp") olacaktır.

Açıkçası, maksimum boyut sayısı, toplu verilerimizi (sipariş miktarı, mal miktarı vb.) tanımlayan tüm özelliklerin (Tarih, Ülke, Müşteri vb.) sayısıdır.

Böylece çok boyutluluk kavramına ve onun somutlaşmasına geliyoruz - çok boyutlu küp. Bu tablo çağrılacak bilgi tablosu". Boyutlar veya Küp Eksenleri ( boyutlar) koordinatları, olgu tablosunda bulunan bu niteliklerin bireysel değerleri ile ifade edilen niteliklerdir. Şunlar. örneğin, 2003'ten 2010'a kadar sistemde siparişler hakkında bilgi tutulduysa, bu yıl ekseni 8 karşılık gelen noktadan oluşacaktır. Siparişler üç ülkeden geliyorsa, ülke ekseni 3 noktayı içerecektir, vb. Ülkeler Rehberinde kaç ülkenin bulunduğuna bakılmaksızın. Eksen üzerindeki noktalara "üyeleri" denir ( Üyeler).

Bu durumda toplanan verilerin kendisi "ölçüler" olarak adlandırılacaktır ( ölçüm). "Boyutlar" ile karıştırılmaması için ikincisine "eksenler" olarak atıfta bulunulması tercih edilir. Ölçü seti, başka bir "Ölçüler" eksenini oluşturur ( Miktar). Olgu tablosunda ölçüler (toplanmış sütunlar) olduğu kadar çok üyesi (puanı) vardır.

Boyutların veya eksenlerin üyeleri bir veya daha fazla hiyerarşide birlikte gruplanabilir ( hiyerarşi). Bir hiyerarşinin ne olduğunu bir örnekle açıklayalım: emirlerdeki şehirler ilçelere, bir bölgedeki ilçelere, bir ülkenin bölgelerine, ülkeler kıtalara veya diğer varlıklara birleştirilebilir. Şunlar. hiyerarşik bir yapı var - kıta ülke-bölge-ilçe-şehir– 5 seviye ( Seviye). Bölge için veriler, içinde yer alan tüm şehirler için toplanır. Tüm şehirleri vb. içeren tüm ilçeler için bir alan için. Neden birden fazla hiyerarşiye ihtiyacımız var? Örneğin, sipariş tarihi ekseninde noktaları (yani günleri) bir hiyerarşide gruplamak isteyebiliriz. Yıl ay gün veya tarafından Yıl-Hafta-Gün: her iki durumda da üç seviye. Açıkçası Hafta ve Ay grupları günleri farklı. Düzeylerin sayısının deterministik olmadığı ve verilere bağlı olduğu hiyerarşiler de vardır. Örneğin, bir bilgisayar diskindeki klasörler.

Veri toplama, birkaç standart işlev kullanılarak gerçekleştirilebilir: toplam, minimum, maksimum, ortalama, sayım.

MDX

Çok boyutlu verilerde sorgu diline geçelim.
SQL dili başlangıçta programcılar için değil, analistler için tasarlanmıştır (ve bu nedenle doğal dile benzeyen bir sözdizimine sahiptir). Ancak zamanla, giderek daha karmaşık hale geldi ve şimdi çok az analist onu nasıl iyi kullanacağını biliyor. Programcılar için bir araç haline geldi. Microsoft Corporation'ın vahşi doğasında eski vatandaşımız Moishe (veya Mosha) Posumansky tarafından geliştirildiği söylenen MDX sorgu dilinin de aslında analistlere yönelik olması gerekiyordu, ancak kavramları ve sözdizimi (belirsiz bir şekilde SQL'e benziyor ve tamamen boşuna, çünkü bu sadece kafa karıştırıcı), SQL'den bile daha karmaşık. Bununla birlikte, temellerini anlamak hala kolaydır.

Genel XMLA protokol standardı çerçevesinde standart statüsünü alan tek dil olduğu için ve ikincisi, Mondrian projesi şeklinde açık kaynaklı bir uygulaması olduğu için bunu ayrıntılı olarak ele alacağız. şirketten Pentaho. Başka OLAP sistemleri-analiz (örneğin, Oracle OLAP Seçeneği) genellikle kendi sözdizimi uzantılarını kullanır SQL dili ancak, MDX için destek beyan edin.

Analitik veri dizileriyle çalışmak, yalnızca onların okunmasını gerektirir ve yazma anlamına gelmez. O. MDX dilinde verileri değiştirmek için herhangi bir madde yoktur, ancak sadece bir seçim maddesi vardır - seçin.

OLAP'ta çok boyutlu küplerden yapabilirsiniz. dilimler- yani veriler bir veya daha fazla eksen boyunca filtrelendiğinde veya projeksiyonlar- küp bir veya birkaç eksen boyunca "çöktüğünde", verileri toplar. Örneğin, ülkelerden gelen siparişlerin toplamı ile ilk örneğimiz - Küpün Ülke ekseninde bir izdüşümü var. Bu durum için MDX sorgusu şöyle görünür:

...'dan satırlardaki çocuklar'ı seçin.
Burada ne var?

Seçmeanahtar kelime ve sözdizimi yalnızca güzellik için dahil edilmiştir.
eksenin adıdır. MDX'deki tüm özel isimler köşeli parantez içinde yazılmıştır.
hiyerarşinin adıdır. Bizim durumumuzda, bu Ülke-Şehir hiyerarşisidir.
hiyerarşinin ilk düzeyindeki eksen üyesinin adıdır (yani ülke) Tümü, eksenin tüm üyelerini birleştiren bir meta üyedir. Her eksende böyle bir meta üye var. Örneğin, yıllar ekseninde “Tüm yıllar” vb.
Çocuklar bir üye işlevidir. Her üyenin birkaç kullanılabilir işlevi vardır. ebeveyn gibi. Düzey, Hiyerarşi, sırasıyla ata, hiyerarşideki düzey ve bu durumda üyenin ait olduğu hiyerarşinin kendisi. Çocuklar - Bu üyenin alt üye kümesini döndürür. Şunlar. bizim durumumuzda, ülkeler.
satırlarda– Bu verilerin özet tablosunda nasıl düzenleneceğini belirtir. Bu durumda, satır başlığında. Buradaki olası değerler: sütunlarda, sayfalarda, paragraflarda vb. 0'dan başlayarak basitçe indekslerle belirtmek de mümkündür.
itibaren seçimin yapıldığı küpün bir göstergesidir.

Ya tüm ülkelere değil de sadece birkaç belirli ülkeye ihtiyacımız varsa? Bunu yapmak için, talepte ihtiyacımız olan ülkeleri açıkça belirtebilir ve Çocuk işleviyle hepsini seçmeyebilirsiniz.

Satırlarda ( ..., ... ) öğesini seçin.
Bu durumda küme parantezleri küme bildirimidir ( Ayarlamak). Bir küme bir listedir, üyelerin bir listesidir. bir eksenden.

Şimdi ikinci örneğimiz için bir sorgu yazalım - çıktıyı gönderici bağlamında:

...Satırlardaki çocuklar .Sütunlardaki üyeler öğesini seçin.
Buraya eklendi:
- eksen;
.Üyelerüzerindeki tüm üyeleri döndüren bir eksen işlevidir. Aynı işlev hiyerarşi ve düzey için de kullanılabilir. Çünkü bu eksende yalnızca bir hiyerarşi vardır, o zaman göstergesi atlanabilir, çünkü seviye ve hiyerarşi de aynıysa, tüm üyeleri tek bir listede görüntüleyebilirsiniz.

Bunu yıllara göre detaylandırarak üçüncü örneğimize nasıl devam edebileceğimiz bence zaten açık. Ama yıllara göre detaylandırmasak daha iyi, ama filtre - yani. bir kesim oluşturun. Bunu yapmak için aşağıdaki sorguyu yazın:

..Satırlardaki çocuklar .Sütunlardaki üyeler öğesini seçin (.)
Filtreleme nerede?

nerede- anahtar kelime
hiyerarşinin bir üyesidir . Tüm terimler dahil tam ad şöyle olacaktır: .. , ama çünkü bu üyenin adı eksen içinde benzersizse, tüm ara ad niteleyicileri atlanabilir.

Tarih üyesi neden parantez içinde? Parantezler bir demetdir ( demet). Bir demet, birlikte bir veya daha fazla koordinattır. çeşitli eksenler. Örneğin, aynı anda iki eksen boyunca filtrelemek için parantez iki terimi listeliyoruz farklı virgülle ayrılmış ölçüler. Yani, demet, küpün bir "dilim"ini (veya bu tür bir terminoloji daha yakınsa "filtrelemeyi") tanımlar.

Tuple, filtrelemeden daha fazlası için kullanılır. Tuple'lar ayrıca satır/sütun/sayfa başlıklarında vb. olabilir.

Bu, örneğin üç boyutlu bir sorgunun sonucunu iki boyutlu bir tabloda görüntülemek için gereklidir.

Satırlarda crossjoin(...Children, ..Children) seçin .Üyeler sütunlarda nereden (.)
çapraz birleştirme bir fonksiyondur. İki kümenin Kartezyen çarpımından kaynaklanan bir küme kümesini (evet, bir küme kümeler içerebilir!) döndürür. Şunlar. sonuç seti, tüm olası Ülke ve Yıl kombinasyonlarını içerecektir. Satır başlıkları bu nedenle birkaç değer içerecektir: Ülke-Yıl.

Soru şu ki, hangi sayısal özelliklerin gösterilmesi gerektiğinin göstergesi nerede? Bu durumda, bu küp için belirtilen varsayılan ölçü kullanılır, yani. Sipariş fiyatı. Başka bir ölçü görüntülemek istiyorsak, ölçülerin boyutun üyeleri olduğunu hatırlarız. Miktar. Ve diğer eksenlerle aynı şekilde hareket ediyoruz. Şunlar. bir sorguyu ölçülerden birine göre filtrelemek, hücrelerde tam olarak bu ölçüyü görüntüler.

Soru: satırlarda eksenlerin üyelerini belirterek filtrelemeden farklı olan yerlerde filtreleme nasıldır? Cevap: pratikte hiçbir şey. Sadece, başlıkların oluşumuna katılmayan eksenler için bir dilimin belirtildiği yer. Şunlar. aynı eksen yapamamak aynı anda mevcut olmak satırlarda, ve nerede.

Hesaplanan Üyeler

Daha karmaşık sorgular için hesaplanmış üyeler bildirebilirsiniz. Hem nitelik ekseninin hem de ölçü ekseninin üyeleri. Şunlar. Örneğin, beyan edebilirsiniz, yeni ölçü, her ülkenin toplam sipariş miktarına katkısını gösterecek:

Üye ile. '.CurrentMember / ..' olarak, FORMAT_STRING='0.00%' olarak ...Satırlardaki çocuklar nereden .
Hesaplama, bilinen tüm koordinat özniteliklerine sahip bir hücre bağlamında gerçekleşir. İlgili koordinatlar (üyeler), her bir küp ekseni için CurrentMember işleviyle elde edilebilir. Buradan anlaşılmalıdır ki, ifade .MevcutÜye / ..' bir terimi diğerine bölmez, ancak böler ilgili toplu veriler küp dilimleri! Şunlar. geçerli bölge için dilim, tüm bölgeler için bir dilime bölünecektir, yani. tüm siparişlerin toplam değeri. FORMAT_STRING - değerlerin çıktısı için formatı ayarlar, ör. %.

Hesaplanan üyenin başka bir örneği, ancak zaten yıllar ekseninde:

Üye ile. olarak'. -.'
Raporda bir birim değil, karşılık gelen dilimlerin farkı, yani. bu iki yıldaki sipariş miktarındaki fark.

ROLAP'ta göster

OLAP sistemleri bir şekilde bir tür veri depolama ve organizasyon sistemine dayanmaktadır. RDBMS'ye gelince, ROLAP'tan bahsediyorlar (MOLAP ve HOLAP'ı bunun için bırakacağız. bireysel çalışma). ROLAP - OLAP ilişkisel bir veritabanında, yani. geleneksel iki boyutlu tablolar şeklinde açıklanmıştır. ROLAP sistemleri, MDX sorgularını SQL'e dönüştürür. Veritabanı için ana hesaplama sorunu hızlı toplamadır. Daha hızlı bir araya getirmek için, veritabanındaki veriler genellikle yüksek oranda denormalize edilir, yani. disk alanı ve veritabanı bütünlüğü kontrolü açısından çok verimli bir şekilde depolanmaz. Ayrıca, ayrıca kısmen toplanmış verileri depolayan yardımcı tablolar içerir. Bu nedenle, OLAP için, genellikle dizinler açısından orijinal işlem veritabanlarının yapısını yalnızca kısmen tekrarlayan ayrı bir veritabanı şeması oluşturulur.

Navigasyon

Birçok OLAP sistemi, önceden oluşturulmuş bir sorgu (ve buna bağlı olarak seçilen veriler) arasında etkileşimli gezinme için araçlar sunar. Bu durumda, sözde "delme" veya "delme" (matkap) kullanılır. Rusçaya daha uygun bir çeviri "derinleşme" kelimesi olacaktır. Ama bu bir zevk meselesi, bazı ortamlarda "sondaj" kelimesi takılıp kalıyor.

Delmek- bu, diğer bazı eksenler (veya birkaç eksen) boyunca filtreleme ile birlikte veri toplama derecesini azaltarak rapor iyileştirmedir. Delme birkaç çeşittir:

  • derinlemesine– seçilen filtreleme üyesinin hiyerarşisi içindeki alt öğeler hakkında ayrıntılı bilgi çıktısı ile raporun orijinal eksenlerinden birine göre filtreleme. Örneğin siparişlerin Ülkelere ve Yıllara göre dağılımı ile ilgili bir rapor varsa, 2007 yılına tıkladığınızda, aynı Ülkeler ve 2007'nin ayları bağlamında bir rapor görüntülenecektir.
  • matkap ucu– bir veya daha fazla seçili eksen altında filtreleme ve bir veya daha fazla diğer eksen boyunca kümelenmeyi kaldırma. Örneğin, Ülkelere ve Yıllara göre siparişlerin dağılımı hakkında bir rapor varsa, 2007'ye tıkladığınızda, örneğin 2007'ye göre filtrelenmiş Ülkeler ve Tedarikçiler bağlamında başka bir rapor görüntülenecektir.
  • delmek– tüm eksenlerdeki toplamanın kaldırılması ve bunlara eşzamanlı filtreleme – rapordaki değerin elde edildiği olgu tablosundan orijinal verileri görmenizi sağlar. Şunlar. bir hücre değerine tıkladığınızda, o miktarı veren tüm siparişlerin bulunduğu bir rapor görüntülenir. Küpün "bağırsaklarına" bir tür anında delme.
Bu kadar. Şimdi, kendinizi İş Zekası ve OLAP'a adamaya karar verdiyseniz, ciddi literatür okumaya başlamanın zamanı geldi.

Etiketler:

  • OLAP
  • Mondrian
  • iş zekası
  • MDX
Etiket ekle

OLAP(İngilizce Çevrimiçi Analitik İşleme'den - çevrimiçi analitik veri işleme, ayrıca: gerçek zamanlı analitik veri işleme, etkileşimli analitik veri işleme) - daha geniş bir alanın parçası olan çok boyutlu hiyerarşik temsillerine dayalı analitik veri işlemeye yönelik bir yaklaşım Bilişim Teknolojileri- iş zekası ().

TAdviser'daki OLAP bölümünde OLAP çözümleri ve projeleri kataloğuna bakın.

Kullanıcının bakış açısından, OLAP-sistemler, çeşitli bölümlerdeki bilgilerin esnek bir şekilde görüntülenmesi, toplu verilerin otomatik olarak alınması, analitik konvolüsyon işlemlerinin performansı, detaylandırma, zaman içinde karşılaştırma araçlarını temsil eder. Tüm bunlar, OLAP sistemlerini, verilerin çeşitli bölümlerde sunulmasını içeren her türlü iş raporlaması için veri hazırlama alanında belirgin avantajlara sahip bir çözüm haline getirir. farklı seviyeler hiyerarşiler - örneğin, satış raporları, çeşitli formlar bütçeler falan. Böyle bir sunumun avantajları, tahmin de dahil olmak üzere diğer veri analizi biçimlerinde de açıktır.

OLAP sistemleri için gereksinimler. FASMİ

OLAP sistemleri için temel gereksinim, bir analistin bilgi ile etkileşimli çalışması sürecinde kullanılmalarına izin veren hızdır. Bu anlamda, OLAP sistemleri, ilk olarak, veri gruplandırma ve toplama kullanan analistler için tipik sorgularla yapılan seçimlerin bekleme süresi ve RDBMS'yi yükleme açısından genellikle pahalı olduğu geleneksel RDBMS'ye karşıdır, bu nedenle, önemli hacimlerle etkileşimli olarak onlarla çalışır. veriler karmaşıktır. İkinci olarak, OLAP sistemleri ayrıca, örneğin, yaygın olarak kullanılan geleneksel elektronik tablolar biçiminde, zor ve sezgisel olmayan çok boyutlu verilerin sunumu ve dilimi değiştirme operasyonları biçimindeki olağan düz dosya veri temsiline de karşıdır. veriler üzerinde görüş - ayrıca zaman ve çaba gerektirir. Verilerle etkileşimli çalışmayı karmaşıklaştırır.

Aynı zamanda, bir yandan OLAP sistemlerine özgü veri gereksinimleri, genellikle tipik OLAP görevleri için optimize edilmiş özel yapılarda veri depolama anlamına gelirken, diğer yandan, analiz süreci sırasında mevcut sistemlerden doğrudan veri çıkarılması önemli bir düşüşe yol açacaktır. performanslarında.

Bu nedenle, önemli bir gereklilik, veri kaynağı olarak hareket eden mevcut sistemler ile bir OLAP sistemi ve ayrıca bir OLAP sistemi ve bir OLAP sistemi olarak hareket eden mevcut sistemler arasında en esnek ithalat-ihracat bağlantısının sağlanmasıdır. harici uygulamalar veri analizi ve raporlama.

Aynı zamanda, böyle bir bağlantı, çeşitli veri kaynaklarından içe aktarma-dışa aktarmayı desteklemek, verileri temizlemek ve dönüştürmek için prosedürleri uygulamak ve kullanılan sınıflandırıcıları ve dizinleri birleştirmek için açık gereksinimleri karşılamalıdır. Ek olarak, bu gereksinimler, mevcut bilgi sistemlerindeki çeşitli veri güncelleme döngülerini hesaba katma ve gerekli veri detay düzeyini birleştirme ihtiyacı ile tamamlanmaktadır. Bu sorunun karmaşıklığı ve çok yönlülüğü, veri ambarları kavramının ortaya çıkmasına ve dar anlamda, ayrı bir veri dönüştürme ve dönüştürme yardımcı programları sınıfının - ETL (Dönüşüm Yükünü Çıkarma) tahsis edilmesine yol açmıştır.

Aktif veri depolama modelleri

Yukarıda, OLAP'ın verilerin çok boyutlu hiyerarşik bir temsilini varsaydığını ve bir anlamda RDBMS tabanlı sistemlere karşı olduğunu belirtmiştik.

Ancak bu, tüm OLAP sistemlerinin aktif, "çalışan" sistem verilerini depolamak için çok boyutlu bir model kullandığı anlamına gelmez. Aktif veri depolama modeli, FASMI testi tarafından belirlenen tüm gereksinimleri etkilediğinden, OLAP alt türlerinin geleneksel olarak ayırt edilmesinin bu temelde olduğu gerçeğiyle vurgulanmaktadır - çok boyutlu (MOLAP), ilişkisel (ROLAP) ve hibrit (HOLAP).

Bununla birlikte, yukarıda belirtilenler tarafından yönetilen bazı uzmanlar Nigel Bekleyen, bir kritere dayalı sınıflandırmanın yeterince tamamlanmadığını gösterir. Ayrıca, mevcut OLAP sistemlerinin büyük çoğunluğu hibrit tipte olacaktır. Bu nedenle, hangilerinin geleneksel OLAP alt türlerinden hangisine karşılık geldiğini belirterek, aktif veri depolama modelleri üzerinde daha ayrıntılı olarak duracağız.

Aktif verileri çok boyutlu bir veritabanında saklama

Bu durumda, OLAP verileri, bu tür veriler için optimize edilmiş yapıları kullanan çok boyutlu DBMS'lerde depolanır. Tipik olarak, çok boyutlu DBMS, gerekli hiyerarşi düzeylerine göre toplama vb. dahil olmak üzere tüm tipik OLAP işlemlerini de destekler.

Bu tür veri depolama, bir anlamda OLAP için klasik olarak adlandırılabilir. Ancak onun için tüm adımlar ön hazırlık veri. Tipik olarak, çok boyutlu DBMS verileri diskte depolanır, ancak bazı durumlarda veri işlemeyi hızlandırmak için bu tür sistemler verileri RAM'de saklamanıza izin verir. Aynı amaçlar için, bazen önceden hesaplanmış toplam değerlerin ve diğer hesaplanan değerlerin veritabanında depolanması kullanılır.

Eşzamanlı okuma ve yazma işlemleriyle çok kullanıcılı erişimi tam olarak destekleyen çok boyutlu VTYS oldukça nadirdir, bu tür VTYS için olağan mod, çok kullanıcılı okumalı tek kullanıcılı yazma erişimi veya çok kullanıcılı salt okunurdur.

Onlara dayanan çok boyutlu DBMS ve OLAP sistemlerinin bazı uygulamalarının koşullu eksiklikleri arasında, veritabanı tarafından işgal edilen ve kullanıcının bakış açısından öngörülemeyen alan miktarındaki artışa duyarlılıkları not edilebilir. Bu etki, veri tabanında depolanan bilgi miktarında doğrusal olmayan bir artışa neden olan, önceden hesaplanmış toplam göstergelerin ve diğer miktarların değerlerinin veritabanında saklanmasını dikte eden sistem yanıt süresini en aza indirme arzusundan kaynaklanır. buna yeni veri değerlerinin veya ölçümlerin eklenmesi.

Seyrek veri küplerinin verimli depolanmasıyla ilgili sorunların yanı sıra bu sorunun tezahür derecesi, OLAP sistemlerinin belirli uygulamaları için uygulanan yaklaşımların ve algoritmaların kalitesi ile belirlenir.

Aktif verileri ilişkisel bir veritabanında saklama

OLAP verileri ayrıca geleneksel bir RDBMS'de saklanabilir. Çoğu durumda, bu yaklaşım, OLAP'ı mevcut olanlarla "acısız bir şekilde" entegre etmeye çalışırken kullanılır. muhasebe sistemleri veya RDBMS'ye dayalı veri ambarları. Aynı zamanda, bu yaklaşım, RDBMS'nin FASMI testinin gerekliliklerinin etkin bir şekilde yerine getirilmesini (özellikle minimum sistem yanıt süresinin sağlanması) sağlamasını gerektirir. Ek özellikler. Tipik olarak, OLAP verileri denormalize edilmiş bir biçimde depolanır ve önceden hesaplanmış toplamaların ve değerlerin bazıları özel tablolarda depolanır. Normalleştirilmiş bir biçimde saklandığında, aktif veri depolama yöntemi olarak RDBMS'nin etkinliği azalır.

Önceden hesaplanmış verileri depolamak için verimli yaklaşımlar ve algoritmalar seçme sorunu, RDBMS tabanlı OLAP sistemleri için de geçerlidir, bu nedenle bu tür sistemlerin üreticileri genellikle kullanılan yaklaşımların esasına odaklanır.

Genel olarak, RDBMS tabanlı OLAP sistemlerinin daha yavaş sistemler OLAP görevleri için daha az verimli veri depolama yapıları da dahil olmak üzere çok boyutlu DBMS'ye dayanır, ancak pratikte belirli bir sistemin özelliklerine bağlıdır.

RDBMS'de veri depolamanın avantajları arasında genellikle bu tür sistemlerin daha fazla ölçeklenebilirliği denir.

Aktif verileri "düz" dosyalarda saklama

Bu yaklaşım, veri parçalarını normal dosyalarda depolamayı içerir. Genellikle güncel verileri diskte veya diskte önbelleğe alarak işi hızlandırmak için iki ana yaklaşımdan birine ek olarak kullanılır. rasgele erişim belleği istemci bilgisayarı.

Hibrit depolama yaklaşımı

Çoğu OLAP satıcısı, karmaşık çözümler OLAP sisteminin kendisine ek olarak, bir DBMS, ETL (Dönüştürme Yükünü Çıkarma) ve raporlama araçları da dahil olmak üzere, şu anda aktif sistem verilerinin depolanmasını organize etmek, RDBMS ve RDBMS arasında bir şekilde dağıtmak için hibrit bir yaklaşım kullanıyor. özel depolamanın yanı sıra disk yapıları ve RAM'de önbelleğe alma arasında.

Böyle bir çözümün etkinliği, üretici tarafından kullanılan belirli yaklaşımlara ve algoritmalara bağlı olduğundan, hangi verilerin ve nerede saklanacağı, daha sonra, söz konusu sistemin belirli özelliklerini değerlendirmeden, bir sınıf olarak bu tür çözümlerin başlangıçta daha yüksek verimliliği hakkında aceleyle sonuçlar çıkarın.

OLAP(İngilizce çevrimiçi analitik işleme) - analitik veritabanlarında çok boyutlu sorguların dinamik olarak işlenmesi için bir dizi yöntem. Bu tür veri kaynakları genellikle oldukça büyüktür ve bunları işlemek için kullanılan araçlarda en önemli gereksinimlerden biri yüksek hızdır. İlişkisel veritabanlarında bilgiler, iyi normalleştirilmiş ayrı tablolarda depolanır. Ancak karmaşık çok tablolu sorgular oldukça yavaştır. OLAP sistemlerinde veri depolama yapısının özellikleri nedeniyle işlem hızı açısından önemli ölçüde daha iyi performans elde edilir. Tüm bilgiler açıkça düzenlenmiştir ve iki tür veri deposu kullanılmaktadır: ölçümler(satış noktaları, müşteriler, çalışanlar, hizmetler vb. gibi kategorilere ayrılmış dizinleri içerir) ve veri(farklı boyutlardaki öğelerin etkileşimini karakterize edin, örneğin, 3 Mart 2010'da, satıcı A, müşteri B'ye C mağazasında G miktarı için bir hizmet sağladı para birimleri). Bir analitik küpte sonuçları hesaplamak için ölçümler kullanılır. Ölçüler, karşılık gelen seçilen boyutlar ve onların üyeleri tarafından toplanan olguların koleksiyonlarıdır. Bu özelliklerden dolayı, çok boyutlu veriler içeren karmaşık sorgular, ilişkisel kaynaklara göre çok daha az zaman alır.

OLAP sistemlerinin ana satıcılarından biri Microsoft Corporation'dır. Microsoft SQL Server Business Intelligence Development Studio (BIDS) ve Microsoft Office PerformancePoint Server Planning Business Modeler (PPS) uygulamalarında analitik bir küp oluşturmaya ilişkin pratik örnekleri kullanarak OLAP ilkelerinin uygulanmasını düşünün ve olasılıkları öğrenin. Görsel sunum grafikler, çizelgeler ve tablolar şeklinde çok boyutlu veriler.

Örneğin, TEKLİFLER'de bir sigorta şirketi, çalışanları, ortakları (müşterileri) ve satış noktaları hakkındaki verilere dayalı bir OLAP küpü oluşturmanız gerekir. Şirketin tek bir hizmet türü sağladığını varsayalım, bu nedenle hizmetlerin ölçümüne gerek yoktur.

Önce boyutları tanımlayalım. Aşağıdaki varlıklar (veri kategorileri) şirketin faaliyetleriyle ilişkilidir:

  • Satış puanı
    - Çalışanlar
    - Ortaklar
Ayrıca, herhangi bir küp için zorunlu olan Zaman ve Senaryo boyutlarını da oluşturur.
Ardından, gerçekleri saklamak için bir tabloya ihtiyacınız var (olgu tablosu).
Tablolardaki bilgiler manuel olarak girilebilir, ancak en yaygın yol, çeşitli kaynaklardan içe aktarma sihirbazını kullanarak verileri yüklemektir.
Aşağıdaki şekil, boyut ve olgu tablolarını manuel olarak oluşturmak ve doldurmak için süreç akışını gösterir:

Şekil 1. Analitik bir veritabanında ölçüm ve gerçekler tabloları. Oluşturma sırası
TEKLİFLER'de çok boyutlu bir veri kaynağı oluşturduktan sonra, temsilini görüntüleyebilirsiniz (Veri Kaynağı Görünümü). Örneğimizde, aşağıdaki şekilde gösterilen devreyi elde ediyoruz.


İncir. 2. Business Intelligence Development Studio'da (BIDS) Veri Kaynağı Görünümü

Gördüğünüz gibi olgu tablosu, tanımlayıcı alanların (PartnerID, EmployeeID, vb.) bire bir yazışmaları aracılığıyla boyut tablolarıyla ilişkilidir.

Sonuca bakalım. Küp gezgini sekmesinde, ölçüleri ve boyutları toplamlar, satırlar, sütunlar ve filtreler alanlarına sürükleyerek ilgilenilen verilerin bir görünümünü elde edebiliriz (örneğin, belirli bir çalışan tarafından 2005 yılında imzalanan sigorta sözleşmeleri).

Veriler alındıktan, temizlendikten, tek bir forma getirildikten ve depoya yerleştirildikten sonra analiz edilmesi gerekir. Bunun için OLAP teknolojisi kullanılır.

OLAP'ın on iki tanımlayıcı ilkesi 1993 yılında "mucit" E.F. Codd tarafından formüle edilmiştir. ilişkisel veritabanları veri. OLAP, Çevrimiçi Analitik İşleme, yani çevrimiçi veri analizidir. Daha sonra, Codd'un tanımı, paylaşılan çok boyutlu bilgilerin hızlı analizi için aşağıdaki yetenekleri sağlamak için bir OLAP uygulaması gerektiren FASMI testi (Paylaşılan Çok Boyutlu Bilginin Hızlı Analizi - paylaşılan çok boyutlu bilginin hızlı analizi) olarak yeniden işlendi: yüksek hız; analiz; erişim paylaşımı; çok boyutluluk; bilgi ile çalışın.

Yüksek hız. Analiz, bilgilerin tüm yönleri üzerinde eşit derecede hızlı bir şekilde yapılmalıdır. nerede izin verilen süre yanıt 5 saniyeden az.

analiz. Uygulama geliştiricisi tarafından önceden tanımlanmış veya kullanıcı tarafından keyfi olarak tanımlanmış temel sayısal ve istatistiksel analiz türlerini gerçekleştirmek mümkün olmalıdır.

Erişim paylaşımı. Verilere erişim çok kullanıcılı olmalı, gizli bilgilere erişim ise kontrol edilmelidir.

çok boyutluluk. OLAP'ın ana, en önemli özelliği.

Bilgi ile çalışmak. Uygulama, hacminden ve depolama konumundan bağımsız olarak gerekli tüm bilgilere erişebilmelidir.

Çok boyutlu temsil. OLAP, kuruluşlara iş bilgilerine erişmek, bunları görüntülemek ve analiz etmek için en uygun ve hızlı araçları sağlar. En önemlisi, OLAP çok boyutlu küpler (Küpler) halinde düzenleyerek kullanıcıya doğal, sezgisel bir veri modeli sağlar. Eksenler (boyutlar) çok boyutlu sistem koordinatlar, analiz edilen iş sürecinin ana özellikleridir. Örneğin, bir satış süreci için bu bir ürün kategorisi, bir bölge, bir müşteri türü olabilir. Hemen hemen her zaman, ölçümlerden biri olarak zaman kullanılır. Küpün içinde, süreci nicel olarak karakterize eden veriler bulunur - sözde önlemler (Önlemler). Bunlar, parça veya parasal olarak satış hacimleri, stok bakiyeleri, maliyetler vb. olabilir. Bilgileri analiz eden kullanıcı, küpü farklı yönlerde "kesebilir", özet (örneğin yıllara göre) veya tersine ayrıntılı (haftalara göre) veriler elde edebilir ve analiz etmesi için gerekli diğer işlemleri gerçekleştirebilir.

OLAP verilerinin depolanması . Her şeyden önce, analist her zaman bazı özet (ayrıntılı olmayan) verilerle çalıştığı için, OLAP veritabanlarının neredeyse her zaman ayrıntılı verilerle birlikte toplu olarak adlandırılan, yani önceden hesaplanmış özet göstergeleri depoladığı söylenmelidir. Toplama örnekleri, bir yıl için toplam satışlar veya ortalama stok bakiyesidir. OLAP sorgularını hızlandırmanın birincil yolu, önceden hesaplanmış toplamaları depolamaktır.


Ancak, yapı kümeleri, veritabanının boyutunda önemli bir artışa neden olabilir.

OLAP veri depolama ile ilgili diğer bir sorun, çok boyutlu verilerin seyrekliğidir. Örneğin, 2000 yılında belirli bir bölgede satış olmasaydı, karşılık gelen küp boyutlarının kesiştiği noktada bir değer olmayacaktır. OLAP sunucusu bu durumda bir miktar eksik değer depolarsa, o zaman önemli veri seyrekliği ile, boş hücrelerin sayısı (yine de depolama alanı gerektirir) doldurulmuş olanların sayısını birçok kez aşabilir ve sonuç olarak toplam hacim mantıksız bir şekilde artar. Microsoft'un bu amaçla sunduğu çözümler aşağıda verilmiştir.

OLAP çeşitleri. OLAP verilerini depolamak için kullanılabilir:

Özel çok boyutlu DBMS (OLAP sunucuları). Bu durumda birinden bahseder MOLAP (Çok Boyutlu OLAP). Verileri ayrıştıran karmaşık sorguları yürütürken farklı boyutlar, çok boyutlu VTYS, ilişkisel olanlardan daha iyi performans sağlar. Aynı zamanda, sorgu yürütme hızı, çok boyutlu küpün "kesilmesinin" hangi boyutta yapıldığına bağlı değildir.

Geleneksel ilişkisel VTYS - ROLAP (İlişkisel OLAP). Özel veri yapılarının kullanımı - "yıldız" ve "kar tanesi" şemalarının yanı sıra hesaplanmış kümelerin depolanması bunu mümkün kılar. çok değişkenli analiz ilişkisel veriler. İlişkisel DBMS'ler tarihsel olarak daha tanıdık ve yoğun bir şekilde yatırım yapıldı, bu nedenle ROLAP şimdiye kadar daha yaygın.

Kombine seçenek - HOLAP (Hibrit OLAP), her iki DBMS türünü de birleştirir. İki tür DBMS'yi birleştirme seçeneklerinden biri, kümeleri çok boyutlu bir VTYS'de ve ayrıntılı verileri (en büyük hacme sahip) ilişkisel bir veride depolamaktır.

Microsoft teklifleri aşağıdaki anlamlar OLAP analizi:

Microsoft SQL Server 7.0, tam özellikli bir OLAP sunucusu içerir - SQL Server OLAP Hizmetleri. Sunucu, elbette, istemci isteklerine hizmet etmek için tasarlanmıştır ve bu, bir tür etkileşim protokolü ve istek dili gerektirir. Örneğin, sunucu ile istemci etkileşimi için ilişkisel VTYS- SQL Server - ODBC veya OLE DB protokolleri ve SQL sorgulama dili kullanılmaktadır. OLAP sunucusuna erişmek için Microsoft, OLAP protokolü için OLE DB'yi ve çok boyutlu veriler için sorgu dilini - MDX'i (MultiDimensional eXpression) geliştirdi. Basitlik ve rahatlık için OLE DB üzerinde bir ADO (ActiveX Data Objects) nesneleri katmanı geliştirildi, ADO MD (MultiDimensional ADO), OLAP için OLE DB üzerine inşa edildi.

Veri analiz araçları Microsoft Office 2000. Microsoft Excel 2000 şunları içerir: yeni mekanizma pivot tablolar- Aynı adı taşıyan mekanizmanın yerini alan OLAP PivotTable önceki sürümler. PivotTable motoru, önceki ilişkisel veri analizi yeteneklerinin yanı sıra artık OLAP veri analizi yeteneklerini de içeriyor, yani bir OLAP istemcisi gibi davranıyor. Microsoft SQL Server 7.0, OLAP arabirimi için OLE DB'yi destekleyen herhangi bir ürünün yanı sıra sunucu olarak da kullanılabilir. Konsolide mekanizma Excel tabloları yukarıda açıklanan PivotTable Hizmetleri (PTS) tarafından sağlanan yetenekleri tam olarak destekler. Böylece, analiz edilen OLAP verileri hem yerel küplerde hem de OLAP sunucusunda bulunabilir.

Microsoft Office 2000 ayrıca bir dizi ActiveX bileşeni içerir. Office 2000 Web Bileşenleri OLAP verilerinin analizini Web tarayıcılarını kullanarak düzenlemenizi sağlayan . Bunlar aşağıdaki dört bileşeni içerir:

E-tablo- Bir Excel sayfasının sınırlı işlevselliğini uygular.

Pivot tablo- Excel pivot tablolarının "ikizi"; ile çalışabilir OLAP verileri Hizmetler.

çizelge- hem ilişkisel hem de OLAP verilerine dayalı grafikler oluşturmanıza olanak tanır.

veri kaynağı- diğer bileşenleri veri kaynağına bağlamak için hizmet bileşeni.

OLAP verileriyle çalışırken, Web Bileşenleri PivotTable Hizmetlerine erişir.

5.5. ANALİZ TEKNOLOJİSİ "VERİ MADENCİLİĞİ"

Dış görünüş teknolojiler Veriler Madencilik, birikmiş bilgi birikiminden bilgi çıkarma ihtiyacı ile ilişkilidir. bilgi sistemi heterojen veriler. Rusça'da "madencilik", "bilginin çıkarılması" olarak adlandırılmaya başlayan bir kavram vardı. Yurtdışında "Veri Madenciliği" terimi oluşturulmuştur.

Geçmişte yaygın olarak kullanılan yöntemler matematiksel istatistik temel olarak önceden formüle edilmiş hipotezleri test etmek (doğrulamaya dayalı veri madenciliği) ve operasyonel varsayımların temelini oluşturan “kaba” keşif analizi için yararlı olduğu ortaya çıktı. analitik işleme veriler (çevrimiçi analitik işleme - OLAP).

Anahtar avantaj veri madenciliğiönceki yöntemlerle karşılaştırıldığında, çeşitli parametreler veya veri bileşenleri arasındaki ilişki hakkında otomatik olarak hipotezler oluşturma yeteneği. Bir analistin geleneksel bir veri işleme paketiyle çalışırken yaptığı iş, aslında onun ürettiği bir veya iki hipotezi kontrol etmeye veya düzeltmeye indirgenir. İlk varsayımların olmadığı ve veri miktarının önemli olduğu durumlarda, mevcut sistemler başarısız olur ve analistlerin zaman kaybına neden olur.

Bir diğeri önemli özellik Veri Madenciliği sistemleri, çok boyutlu sorguları işleme ve çok boyutlu bağımlılıkları arama yeteneği. Ayrıca benzersiz yetenek veri sistemleri madencilik istisnaları otomatik olarak algılar - yani genel kalıplardan "düşen" veri öğeleri.

beş tahsis et standart tipler tanımlamayı mümkün kılan desenler Veri yöntemleri madencilik

bağlantı

sıra

sınıflandırma

kümeleme

tahmin

Model araştırması, örneğin yapısı ve analiz edilen göstergelerin değerlerinin dağılımlarının türü hakkında önceden yapılan varsayımlarla sınırlı olmayan yöntemlerle gerçekleştirilir. Böyle bir arama için görev örnekleri Veri kullanma Madencilik Tablo 1'de gösterilmiştir.

Tablo 1 - OLAP ve Veri Madenciliği yöntemlerini kullanırken görev formülasyonlarının karşılaştırılması

OLAP, hızlı bir şekilde yeni raporlar oluşturmanıza, anında bir rapor almanıza ve onunla etkileşimli olarak çalışmanıza olanak tanıyan, iş raporları yayınlamak için özel bir teknolojidir.

OLAP (Çevrimiçi Analitik İşleme) terimi genellikle "operasyonel veri analizi" olarak çevrilir. Operasyonel veri analizi, son kullanıcı tarafından, analiz edilen bilginin özünü kendisine en açık şekilde ortaya koyan bu veri sunum biçimlerini araştırmak için raporu değiştirmenin birçok yinelemesinin uygulanmasıdır. şu an Sorunlar.

OLAP raporu

Ancak, OLAP karmaşık bir analitik teknoloji değildir, aksine OLAP, çeşitli bölümlerde toplanan sayıları içeren standartlaştırılmış, basitleştirilmiş bir rapor formu sağlar. Böyle bir biçim en iyi yol kurumsal bir raporlama sistemi oluşturmaya uygun olup, geniş ofis çalışanları ve çeşitli seviyelerdeki yöneticilere yöneliktir.

Son kullanıcının bakış açısından, OLAP teknolojisinin özü, verilerin kendisine çeşitli bölümlerde otomatik olarak özetleyen ve hem hesaplamaları hem de raporun şeklini etkileşimli olarak yönetmenizi sağlayan dinamik bir tabloda sunulmasıdır.

Rapor yönetim araçları, tablonun kendisinin unsurlarıdır. Sütunları ve satırları sürükleyerek, kullanıcı bağımsız olarak rapor türünü ve veri gruplandırmasını değiştirir, sistem anında yeni toplamları hesaplar, binlerce hatta milyonlarca satırı toplar.

Dal

Bütçe kalemi

Ürün

toplam

Faiz geliri

Toplam

30 000 000

Faiz dışı gelir

Müşteri ödemeleri

Değişim işlemleri

Toplam

10 000 000

Toplam

40 000 000

Faiz geliri

Toplam

6 000 000

Faiz dışı gelir

Müşteri ödemeleri

Değişim işlemleri

Toplam

3 000 000

Toplam

9 000 000

Novosibirsk

Toplam

52 000 000

Pirinç. 1 OLAP raporu

Bir OLAP raporu, kullanıcı komutlarının bir saniyeden daha kısa bir sürede alınmasıyla yeniden oluşturulur ve bu, kullanıcının bir raporlama formundan diğerlerini almasına izin verir. Bu raporlama hızı, diğer raporlama sistem ve teknolojilerinden temel olarak farklı olan OLAP sistemlerinin özel mimarisi ile sağlanmaktadır.

OLAP raporundaki tüm veriler iki kategoriye ayrılır - boyutlar (satırlar veya tarihler) ve olgular veya ölçümler (sayısal veriler). Rapor birkaç sabit alandan oluşur - sütunlar, satırlar, veriler ve etkin olmayan boyutlar alanı.

Veri alanı, ayrıntılı verileri, ara toplamları ve nihai toplamları görüntüler. Sonuç olarak, verilerin doğası, konu alanı ve kullanıcı grubu ne olursa olsun, bir rapor oluşturan sınırlı sayıda kural vardır.

Bu, oluşturmanıza olanak sağlar evrensel mekanizmalar hesaplamalar (OLAP-makinesi), raporun yönetimi ve gösterimi (OLAP-tablosu, OLAP-grafiği, OLAP-haritası).

Bir OLAP raporunun ekran ve kağıt formları olabilir. OLAP raporu ekran formu verileri işlemenize ve formu görüntülemenize olanak tanır. Ortaya çıkan herhangi bir ekran raporu, ekranda göründüğü gibi kağıda yazdırılabilir.

Bir OLAP raporu, bir veya daha fazla tabloya ek olarak, grafikler, çizelgeler gibi başka görsel öğeler içerebilir. Sözde "trafik ışıkları" - anlaşılması kolay diyagramlar - raporun hücrelerine eklenebilir. Bu, verileri bir bakışta anlamanıza olanak tanır, bu nedenle bu tür raporlar genellikle üst düzey yöneticiler için oluşturulur.

OLAP raporu özellikleri

Dolayısıyla, bir OLAP raporunun bir dizi temel özelliği vardır, bunlar:

  • kullanıcıya verilerle çalışmak için yüksek düzeyde etkileşimli bir yol sağlayan bir rapor
  • ayrıntıları incelemenize olanak tanıyan toplu bir rapor
  • alanların sırasını değiştirerek analitik bölümleri kolayca değiştirmenizi sağlayan bir rapor
  • tüm olası kombinasyonlara göre verileri anında filtrelemenizi sağlayan bir rapor
  • bir yazıcıya çıktı alma özelliğine sahip ekran raporu
  • programlama gerektirmeden kullanıcı tarafından özelleştirilebilir rapor
  • basit, düzenli bir yapıya sahip bir rapor

Talepler, raporlar, analizler

OLAP raporları, kullanıcıya verilerle çalışma konusunda yeni bir kalite sağlar. Kullanıcı verileri özetleyebilir, genelleştirebilir ve hassaslaştırabilir, satırları ve sütunları taşıyabilir, tüm bölümler için anında yeni ara ve nihai toplamlar alabilir, raporla diğer birçok etkileşimli işlemi gerçekleştirebilir, verileri daha hızlı ve daha derin analiz edebilir.