Share via


Data Mining-Dienste und Datenquellen

Für Data Mining ist eine Verbindung zu einer Instanz von SQL Server Analysis Services erforderlich. Daten von einem Cube sind für Data Mining nicht erforderlich, und die Verwendung relationaler Quellen wird empfohlen. Data Mining verwendet jedoch vom Analysis Services-Modul bereitgestellte Komponenten.

Dieses Thema enthält Informationen, die erforderlich sind, wenn Sie eine Verbindung zu einer lokalen oder Remoteinstanz von SQL Server Analysis Services herstellen, um Data Mining-Modelle zu erstellen, zu verarbeiten, bereitzustellen oder abzufragen.

Data Mining-Dienste

Die Serverkomponente von Microsoft SQL Server Analysis Services ist die Anwendung msmdsrv.exe, die normalerweise als Windows-Dienst ausgeführt wird. Diese Anwendung besteht aus Sicherheitskomponenten, einer XMLA-Überwachungskomponente (XML for Analysis), einer Abfrageverarbeitungskomponente und zahlreichen internen Komponenten, die die folgenden Funktionen ausführen:

  • Analysieren von Anweisungen, die von Client empfangen werden

  • Verwalten von Metadaten

  • Behandeln von Transaktionen

  • Verarbeiten von Berechnungen

  • Speichern von Dimensions- und Zellendaten

  • Erstellen von Aggregationen

  • Planen von Abfragen

  • Zwischenspeichern von Objekten

  • Verwalten von Serverressourcen

XMLA-Überwachung

Die XMLA-Überwachungskomponente verarbeitet alle XMLA-Kommunikationen zwischen Analysis Services und den Clients. Mithilfe der Port-Konfigurationseinstellung für Analysis Services in der Datei msmdsrv.ini können Sie einen Port angeben, der von einer Instanz von Analysis Services überwacht wird. Wird in dieser Datei der Wert 0 angegeben, wird der Standardport von Analysis Services überwacht. Falls nicht anders angegeben, verwendet Analysis Services die folgenden TCP-Standardports:

Port

Beschreibung

2383

Standardinstanz von SQL Server Analysis Services.

2382

Redirector für andere Instanzen von SQL Server Analysis Services.

Dynamische Zuweisung beim Serverstart.

Benannte Instanz von SQL Server Analysis Services.

Weitere Informationen zum Steuern der von diesem Dienst verwendeten Ports finden Sie unter Konfigurieren der Windows-Firewall, um den Zugriff auf Analysis Services zuzulassen.

Herstellen einer Verbindung mit Datenquellen

Bei jedem Erstellen oder Aktualisieren einer Data Mining-Struktur oder -Modells verwenden Sie Daten, die von einer Datenquelle definiert sind. Die Datenquelle enthält nicht die Daten, die Excel-Arbeitsmappen, Textdateien und SQL Server-Datenbanken enthalten könnten. Sie definiert nur die Verbindungsinformationen. Eine Datenquellensicht (Data Source View, DSV) dient oben auf dieser Quelle als Abstraktionsebene, ändert oder ordnet die Daten zu, die aus der Quelle abgerufen werden.

Es ginge über dieses Thema hinaus, die Verbindungsanforderungen für jede dieser Quellen zu beschreiben. Weitere Informationen finden Sie in der Dokumentation für den Anbieter. Sie sollten im Allgemeinen jedoch die folgenden Anforderungen von Analysis Services beachten, wenn Sie mit Anbietern interagieren:

  • Da Data Mining ein von einem Server bereitgestellter Dienst ist, muss die Analysis Services-Instanz auf die Datenquelle zugreifen können. Es gibt zwei Aspekte zuzugreifen: Speicherort und Identität.

    Speicherort bedeutet, wenn Sie ein Modell mithilfe der nur auf Ihrem Computer gespeicherten Daten erstellen und dieses Modell dann auf einem Server bereitstellen, könnte das Modell nicht verarbeitet werden, da die Datenquelle nicht gefunden werden kann. Zum Beheben dieses Problem könnten Sie Daten in die gleiche SQL Server-Instanz übertragen, in der Analysis Services ausgeführt wird, oder indem Sie Dateien zu einem freigegebenen Speicherort verschieben.

    Identität bedeutet, dass die Dienste auf Analysis Services in der Lage sein müssen, die Datendatei oder die Datenquelle mit den entsprechenden Anmeldeinformationen zu öffnen. Als Sie beispielsweise das Modell erstellt haben, standen Ihnen möglicherweise unbegrenzte Berechtigungen zum Anzeigen der Daten zur Verfügung, der Benutzer, der die Modelle auf dem Server verarbeitet and aktualisiert, kann möglicherweise nur eingeschränkt oder nicht auf die Daten zugreifen. Dies wiederum kann zu Fehlern bei der Verarbeitung führen oder die Inhalte des Modells beeinträchtigen. Das Konto, das zum Verbinden zur Remotedatenquelle verwendet wird, muss mindestens über Leseberechtigungen auf die Daten verfügen.

  • Wenn Sie ein Modell verschieben, sind die gleichen Anforderungen gültig: Sie müssen entsprechenden Zugriff zum Speicherort der alten Datenquelle einrichten, müssen die Datenquellen kopieren oder müssen eine neue Datenquelle konfigurieren. Sie müssen zudem Anmeldedaten und Rollen übertragen oder Berechtigungen einrichten, damit Data Mining-Objekte am neuen Speicherort verarbeitet und aktualisiert werden können.

Konfigurieren von Berechtigungen und Servereigenschaften

Data Mining erfordert zusätzliche Berechtigungen für eine Analysis Services-Datenbank. Die meisten Data Mining-Eigenschaften können mithilfe von Dialogfeld 'Eigenschaften für Analysis Services' (Analysis Services – Mehrdimensionale Daten) festgelegt werden.

Weitere Informationen zu den Eigenschaften, die Sie konfigurieren können, finden Sie unter Konfigurieren von Servereigenschaften in Analysis Services.

Die folgenden Servereigenschaften sind im Hinblick auf Data Mining besonders relevant:

  • AllowAdHocOpenRowsetQueries: Steuert den Ad-hoc-Zugriff auf OLE DB-Anbieter, die direkt in den Serverspeicherbereich geladen werden.

    Wichtiger HinweisWichtig

    Zur Erhöhung der Sicherheit wird empfohlen, diese Eigenschaft auf false festzulegen. Der Standardwert ist false. Auch wenn diese Eigenschaft auf false festgelegt ist, können Benutzer dennoch weiterhin SINGLETON-Abfragen erstellen und OPENQUERY für zulässige Datenquellen verwenden.

  • AllowedProvidersInOpenRowset: Gibt den Anbieter an, wenn Ad-hoc-Zugriff aktiviert ist. Sie können mehrere Anbieter angeben, indem Sie eine durch Trennzeichen getrennte Liste von Programm-IDs eingeben.

  • MaxConcurrentPredictionQueries: Steuert die durch Vorhersagen verursachte Last auf dem Server. Mit dem Standardwert 0 sind unbegrenzte Abfragen für SQL Server Enterprise sowie maximal fünf gleichzeitige Abfragen für SQL Server Standard möglich. Abfragen über diesem Limit werden serialisiert und können zu einem Timeout führen.

Der Server bietet zusätzliche Eigenschaften, die die Verfügbarkeit der Data Mining-Algorithmen, einschließlich Einschränkungen der Algorithmen, und die Standardwerte für alle Data Mining-Dienste steuern. Es gibt jedoch keine Einstellungen, mit denen Sie den Zugriff speziell auf Data Mining-gespeicherte Prozeduren steuern können. Weitere Informationen finden Sie unter Data Mining-Eigenschaften.

Sie können auch Eigenschaften festlegen, mit denen Sie den Server optimieren und die Sicherheit für die Clientverwendung kontrollieren können. Weitere Informationen finden Sie unter Funktionseigenschaften.

HinweisHinweis

Weitere Informationen dazu, welche Editionen von SQL Server Plug-In-Algorithmen unterstützen, finden Sie unter Von den SQL Server 2012-Editionen unterstützte Funktionen (https://go.microsoft.com/fwlink/?linkid=232473).

Programmgesteuerter Zugriff auf Data Mining-Objekte

Mit den folgenden Objektmodellen können Sie eine Verbindung zu einer Analysis Services-Datenbank herstellen und mit Data Mining-Objekten arbeiten.

ADO: Verwendet OLE DB zur Herstellung einer Verbindung mit einem Analysis Services-Server. Wenn Sie ADO verwenden, wird der Client auf Schemarowsetabfragen und DMX-Anweisungen beschränkt.

ADO.NET: Interagiert mit SQL Server-Anbietern besser als mit anderen Anbietern. Verwendet Datenadapter, um dynamische Rowsets zu speichern. Verwendet das Datasetobjekt, das einen Cache der als Datentabellen gespeicherten Serverdaten darstellt. Diese Tabellen können aktualisiert oder im XML-Format gespeichert werden.

ADOMD.NET: Ein verwalteter Datenanbieter, der zur Verwendung mit Data Mining und OLAP optimiert ist. ADOMD.NET ist schneller und speichereffizienter als ADO.NET. Mit ADOMD.NET können Sie auch Metadaten über Serverobjekte abrufen. ADOMD.NET wird für Clientanwendungen empfohlen, außer .NET ist nicht verfügbar.

Server-ADOMD: Objektmodell für den direkten Zugriff auf Analysis Services-Objekte auf dem Server. Wird von Analysis Services-gespeicherten Prozeduren verwendet; nicht für die Clientverwendung.

AMO: Verwaltungsschnittstelle für Analysis Services, die Entscheidungsunterstützungsobjekte (DSO) ersetzt. Beim Verwenden von AMO erfordern Vorgänge wie die Iteration von Objekten höhere Berechtigungen als bei Verwendung anderer Schnittstellen. Der Grund hierfür liegt darin, dass AMO direkt auf Metadaten zugreift, wohingegen ADOMD.NET und andere Schnittstellen nur auf die Datenbankschemas zugreifen.

Durchsuchen und Abfragezugriff auf Server

Sie können alle Arten von Vorhersagen mit einer Instanz von Analysis Services im OLAP-/Data Mining-Modus ausführen. Es gelten jedoch folgende Einschränkungen:

  • Wenn Sie Server-ADOMD verwenden, können Sie mit DMX auf den Server zugreifen, ohne eine Verbindung herzustellen. Anschließend können Sie die Ergebnisse direkt in eine Datentabelle kopieren. Server-ADOMD kann jedoch nicht ohne Remote-Instanzen verwendet werden. Sie können nur den lokalen Server abfragen.

  • ADO.NET unterstützt keine benannten Parameter für Data Mining. Sie müssen ADOMD.NET verwenden.

  • Mit ADOMD.NET können Sie eine gesamte Tabelle zur Verwendung als Parameter übergeben. Daher können Sie die Daten auf dem Client oder Daten verwenden, die für den Server nicht verfügbar sind. Möglich ist auch die Verwendung von gestalteten Tabellen als Vorhersageeingabe.

Verwenden von Data Mining-gespeicherten Prozeduren

Gespeicherte Prozeduren werden häufig zum Kapseln von Abfragen zur Wiederverwendung verwendet. Der Client kann CALL verwenden, um gespeicherte Prozeduren auszuführen, einschließlich gespeicherte Systemprozeduren von Analysis Services.

Wenn die Prozedur ein Dataset zurückgibt, erhält der Client ein Dataset oder eine Datentabelle mit einer geschachtelten Tabelle, die die Zeilen enthält. Wenn Sie jedoch eine Abfrage für den Modellinhalt erstellen, gibt die Abfrage das ganze Modell zurück. Damit nicht zu viele Zeilen zurückgegeben werden, können Sie gespeicherte Prozeduren schreiben, indem Sie das ADOMD+-Objektmodell verwenden.

Um eine servergespeicherte Prozedur zu schreiben, müssen Sie auf den Microsoft.AnalysisServices.AdomdServer-Namespace verweisen. Weitere Informationen zum Erstellen und Verwenden von gespeicherten Prozeduren finden Sie unter Benutzerdefinierte Funktionen und gespeicherte Prozeduren.

HinweisHinweis

Gespeicherte Prozeduren können nicht verwendet werden, um die Sicherheit auf Datenserverobjekten zu ändern. Wenn Sie eine gespeicherte Prozedur ausführen, wird der aktuelle Kontext des Benutzers verwendet, um den Zugriff auf alle Serverobjekte zu bestimmen. Daher müssen Benutzer über entsprechende Berechtigungen für Datenbankobjekte verfügen, auf die sie zugreifen.

Siehe auch

Konzepte

Physische Architektur (Analysis Services – Mehrdimensionale Daten)

Physische Architektur (Analysis Services – Data Mining)

Verwaltung von Data Mining-Lösungen und -Objekten