分析データ ソースからのメタデータの取得

分析データを取得して操作するアプリケーションにとって、メタデータは重要です。リレーショナル データ ソースからデータを取得する場合、データセットが入れ子になっていても、それらのデータの次元を予測することができます。通常、リレーショナル データベースから取得する結果セットは 2 次元またはスカラ構造です。一方、分析データ ソースから取得したデータは次元がさまざまであり、多層構造になっている場合もあります。

分析データ ソースからメタデータを取得する際の複雑さに対応するため、ADOMD.NET には次の 2 つのメタデータ取得形式が用意されています。

  • オブジェクト モデル
    ADOMD.NET オブジェクト モデルは、一般に、スキーマ行セットよりも使い方が簡単です。ほとんどの場合、オブジェクト モデルを使用すれば、さまざまなデータベース オブジェクトのメタデータにアクセスできます。ADOMD.NET では、AdomdConnection を通してオブジェクト モデルが公開されます。

    詳細については、「ADOMD.NET オブジェクト モデルの操作」を参照してください。

  • スキーマ行セット
    少し難しくなりますが、メタデータを取得するための完全なアプローチとして、スキーマ行セットを使用する方法があります。スキーマ行セットは、データベース内の特定の種類のすべてのオブジェクトの記述をカプセル化した、OLE DB 行セットです。分析データ ソースのスキーマの情報には、そのデータ ソースで使用できるデータベースやカタログ、データベース内のキューブ モデルとマイニング モデル、データ ソースのキューブに割り当てられているロールなどが含まれています。このメタデータを取得するには、GetSchemaDataSet メソッドを使用して、GUID または XML for Analysis (XMLA) 名を渡します。

    詳細については、「ADOMD.NET でのスキーマ行セットの操作」を参照してください。

これらのメタデータ取得方法では、それぞれ異なる種類のメタデータにアクセスします。次の表は、それぞれの方法で使用できるメタデータと、そのメタデータにアクセスするためのメソッドを示しています。

GUID (スキーマ行セットで使用)

XMLA 名 (スキーマ行セットで使用)

ADOMD.NET オブジェクト モデル

Actions

MDSCHEMA_ACTIONS 行セット

Catalogs

DBSCHEMA_CATALOGS 行セット

Columns

DBSCHEMA_COLUMNS 行セット

Connections

DISCOVER_CONNECTIONS

Cubes

MDSCHEMA_CUBES 行セット

AdomdConnection.Cubes

DataSources

DISCOVER_DATASOURCES 行セット

DBConnections

DISCOVER_DB_CONNECTIONS

Dimensions

MDSCHEMA_DIMENSIONS 行セット

AdomdConnection.Cubes[].Dimensions

DimensionStat

DISCOVER_DIMENSION_STAT

Enumerators

DISCOVER_ENUMERATORS 行セット

Functions

MDSCHEMA_FUNCTIONS 行セット

Hierarchies

MDSCHEMA_HIERARCHIES 行セット

AdomdConnection.Cubes[].Dimensions[].Hierarchies

InputDataSources

MDSCHEMA_INPUT_DATASOURCES 行セット

Instances

DISCOVER_INSTANCES 行セット

Jobs

DISCOVER_JOBS

Keywords

DISCOVER_KEYWORDS 行セット (OLE DB for OLAP)

Kpis

MDSCHEMA_KPIS 行セット

AdomdConnection.Cubes[].KPIs

Levels

MDSCHEMA_LEVELS 行セット

AdomdConnection.Cubes[].Dimensions[].Hierarchies[].Levels

Literals

DISCOVER_LITERALS 行セット

Locations

DISCOVER_LOCATIONS

Locks

DISCOVER_LOCKS

MasterKey

DISCOVER_MASTER_KEY

MeasureGroupDimensions

MDSCHEMA_MEASUREGROUP_DIMENSIONS

MeasureGroups

MDSCHEMA_MEASUREGROUPS 行セット

Measures

MDSCHEMA_MEASURES 行セット

AdomdConnection.Cubes[].Measures

MemberProperties

MDSCHEMA_PROPERTIES 行セット

ほとんどの主要な ADOMD.NET オブジェクトで使用できる PropertyCollection。

Members

MDSCHEMA_MEMBERS 行セット

AdomdConnection.Cubes[].Dimensions[].Hierarchies[].Levels[].GetMembers()

MemoryGrant

DISCOVER_MEMORYGRANT

MemoryUsage

DISCOVER_MEMORYUSAGE

MiningColumns

DMSCHEMA_MINING_COLUMNS 行セット

AdomdConnection.MiningModels[].MiningModelColumns

MiningFunctions

DMSCHEMA_MINING_FUNCTIONS 行セット

MiningModelContent

DMSCHEMA_MINING_MODEL_CONTENT 行セット

AdomdConnection.MiningModels[].MiningContentNodes

MiningModelContentPmml

DMSCHEMA_MINING_MODEL_CONTENT_PMML 行セット

MiningModels

DMSCHEMA_MINING_MODELS 行セット

AdomdConnection.MiningModels

MiningModelXml

DMSCHEMA_MINING_MODEL_XML 行セット

MiningServiceParameters

DMSCHEMA_MINING_SERVICE_PARAMETERS 行セット

AdomdConnection.MiningServices[].MiningServiceParameters

MiningServices

DMSCHEMA_MINING_SERVICES 行セット

AdomdConnection.MiningServices

MiningStructureColumns

DMSCHEMA_MINING_STRUCTURE_COLUMNS 行セット

AdomdConnection.MiningStructures[].MiningStructureColumns

MiningStructures

DMSCHEMA_MINING_STRUCTURES 行セット

AdomdConnection.MiningStructures

PartitionDimensionStat

DISCOVER_PARTITION_DIMENSION_STAT

PartitionStat

DISCOVER_PARTITION_STAT

PerformanceCounters

DISCOVER_PERFORMANCE_COUNTERS

ProviderTypes

DBSCHEMA_PROVIDER_TYPES 行セット

SchemaRowsets

DISCOVER_SCHEMA_ROWSETS 行セット

Sessions

DISCOVER_SESSIONS

Sets

MDSCHEMA_SETS 行セット

AdomdConnection.Cubes[].NamedSets

Tables

DBSCHEMA_TABLES 行セット

TablesInfo

DBSCHEMA_TABLES_INFO

TraceColumns

DISCOVER_TRACE_COLUMNS

TraceDefinitionProviderInfo

DISCOVER_TRACE_DEFINITION_PROVIDERINFO

TraceEventCategories

DISCOVER_TRACE_EVENT_CATEGORIES

Traces

DISCOVER_TRACES

Transactions

DISCOVER_TRANSACTIONS

XmlaProperties

DISCOVER_PROPERTIES 行セット

XmlMetadata

DISCOVER_XML_METADATA 行セット