Programming AMO Data Mining Objects
Programowanie obiektów wyszukiwanie danych przy użyciu AMO jest proste i bezpośrednie.Pierwszym krokiem jest utworzenie modelu struktury danych do obsługi wyszukiwania projektu.Następnie utwórz model wyszukiwanie danych, który obsługuje algorytm wyszukiwania, który ma być używany do przewidywania lub znaleźć niewidoczne relacje podstawowych danych.Górnictwo projektu utworzonych (włączając struktury i algorytmy) użytkownik może następnie przetwarzać modele wyszukiwania, aby uzyskać wyszkolonych modeli, które może być używana później podczas wykonywania kwerendy i prognozowania z aplikacji klienckiej.
Jeden element, aby pamiętać, że AMO nie są przeznaczone dla kwerendy; AMO jest do zarządzania i administrowania swoją struktur wyszukiwania i modeli.Aby wykonać kwerendę dotyczącą danych, należy użyć ADOMD.NET.
Ten temat zawiera następujące sekcje:
Obiekty MiningStructure
Obiekty MiningModel
Obiekty MiningStructure
Struktura wyszukiwania jest definicja struktury danych, które służy do tworzenia wszystkich modeli wyszukiwania.Struktura wyszukiwania zawiera wiązanie z widok urządzenie źródłowe danych, jest zdefiniowana w bazie danych i zawiera definicje wszystkie kolumny wchodzące w modelach wyszukiwania.Struktura wyszukiwania może mieć więcej niż jeden model wyszukiwania.
Tworzenie MiningStructure obiekt wymaga następujących kroków:
Tworzenie MiningStructure obiekt, a następnie wypełnij Podstawowe atrybuty. Podstawowe atrybuty obejmują nazwę obiektu, obiekt identyfikator wewnętrzny i wiązanie urządzenie źródłowe danych.
Tworzenie kolumn w modelu.Kolumny mogą być wartość skalarna lub tabelarycznej definicje.
Każda kolumna musi, nazwę i identyfikator wewnętrzny, typu, zawartości definicji i wiązanie.
Aktualizacja MiningStructure obiekt z serwerem przy użyciu metoda aktualizacji obiektu.
Górnictwo struktury mogą być przetwarzane, a gdy są one przetwarzane dzieci, górnictwo modele są przetwarzane lub retrained.
Następujący przykładowy kod tworzy struktura wyszukiwania do prognozy sprzedaży w szeregu czasowego.Upewnij się, że przed uruchomieniem przykładowy kod, w bazie danych db, jako parametr przekazano CreateSalesForecastingMiningStructure, zawiera w db.DataSourceViews[0] Odwołanie do widoku dbo.vTimeSeries w AdventureWorksDW Przykładowa baza danych.
public static MiningStructure CreateSalesForecastingMiningStructure(Database db)
{
MiningStructure ms = db.MiningStructures.FindByName("Forecasting Sales Structure");
if (ms != null)
ms.Drop();
ms = db.MiningStructures.Add("Forecasting Sales Structure", "Forecasting Sales Structure");
ms.Source = new DataSourceViewBinding(db.DataSourceViews[0].ID);
ScalarMiningStructureColumn amount = ms.Columns.Add("Amount", "Amount");
amount.Type = MiningStructureColumnTypes.Double;
amount.Content = MiningStructureColumnContents.Continuous;
amount.KeyColumns.Add("vTimeSeries", "Amount", OleDbType.Currency);
ScalarMiningStructureColumn modelRegion = ms.Columns.Add("Model Region", "Model Region");
modelRegion.IsKey = true;
modelRegion.Type = MiningStructureColumnTypes.Text;
modelRegion.Content = MiningStructureColumnContents.Key;
modelRegion.KeyColumns.Add("vTimeSeries", "ModelRegion", OleDbType.WChar, 56);
ScalarMiningStructureColumn qty = ms.Columns.Add("Quantity", "Quantity");
qty.Type = MiningStructureColumnTypes.Long;
qty.Content = MiningStructureColumnContents.Continuous;
qty.KeyColumns.Add("vTimeSeries", "Quantity", OleDbType.Integer);
ScalarMiningStructureColumn timeIndex = ms.Columns.Add("TimeIndex", "TimeIndex");
timeIndex.IsKey = true;
timeIndex.Type = MiningStructureColumnTypes.Long;
timeIndex.Content = MiningStructureColumnContents.KeyTime;
timeIndex.KeyColumns.Add("vTimeSeries", "TimeIndex", OleDbType.Integer);
ms.Update();
return ms;
}
Obiekty MiningModel
Model wyszukiwania stanowi repozytorium dla wszystkich kolumn i definicje kolumn, które będą używane w algorytmie wyszukiwania.
Tworzenie MiningModel obiekt wymaga następujących kroków:
Tworzenie MiningModel obiekt, a następnie wypełnij Podstawowe atrybuty.
Podstawowe atrybuty obejmują nazwę obiektu, obiekt identyfikator wewnętrzny i specyfikacji algorytmu wyszukiwania.
Dodaj kolumny model wyszukiwania.Jedna z kolumn musi być zdefiniowany jako klucz przypadek.
Aktualizacja MiningModel obiekt z serwerem przy użyciu metoda aktualizacji obiektu.
MiningModel obiekty mogą być przetwarzane niezależnie od innych modeli w obiekcie nadrzędnym MiningStructure.
Następujący przykładowy kod tworzy Microsoft czas seria model prognozowania, oparty na strukturze wyszukiwania "Struktura Prognozowanie sprzedaży":
public static MiningModel CreateSalesForecastingMiningModel(MiningStructure ms)
{
if (ms.MiningModels.ContainsName("Sales Forecasting Model"))
{
ms.MiningModels["Sales Forecasting Model"].Drop();
}
MiningModel mm = ms.CreateMiningModel(true, "Sales Forecasting Model");
mm.Algorithm = MiningModelAlgorithms.MicrosoftTimeSeries;
mm.AlgorithmParameters.Add("PERIODICITY_HINT", "{12}");
MiningModelColumn amount = new MiningModelColumn();
amount.SourceColumnID = "Amount";
amount.Usage = MiningModelColumnUsages.Predict;
MiningModelColumn modelRegion = new MiningModelColumn();
modelRegion.SourceColumnID = "Model Region";
modelRegion.Usage = MiningModelColumnUsages.Key;
MiningModelColumn qty = new MiningModelColumn();
qty.SourceColumnID = "Quantity";
qty.Usage = MiningModelColumnUsages.Predict;
MiningModelColumn ti = new MiningModelColumn();
ti.SourceColumnID = "TimeIndex";
ti.Usage = MiningModelColumnUsages.Key;
mm.Update();
mm.Process(ProcessType.ProcessFull);
return mm;
}
See Also
Reference
Microsoft.AnalysisServices