0

SSAS と表形式のモデル キューブは初めてです。表形式モデルから SQL Server データベースにデータをインポートすることを目的としたデータ移行タスクがあります。

私はSSISを試しましたが成功しませんでした。OLEDB データ ソースに接続された SSAS インスタンスと表形式データベースを使用して、実行するデータ ソースと MDX コマンド " evaluate ('Tabular Table Name') " を構成しました。正常に返されますが、一部のレコード (約 1000) しか返されません。そのため、OPENROWSET を使用するようにデータ ソースを再構成し、クエリを実行する表形式のテーブルを選択しましたが、列のマッピングが正しい場合でも、列のマッピングに関連するエラーが常に発生します。

4

1 に答える 1

2

わかりました、この方法を試すことをお勧めします (私は PowerPivot データベースで試しましたが、これは SSAS Tabular_ にかなり似ています:

  1. SSMS を実行し、SSAS 表形式インスタンスに接続します
  2. SQL テーブルにダンプするデータベースを右クリックし、[ ] を選択しますScript -> Create to -> New Query Window。SSMS が XMLA スクリプトを生成するまで、しばらくお待ちください。
  3. XMLA スクリプト (キーワード = QueryDefinition) を検索して、SSAS 表形式のテーブルに入力するために使用された SQL クエリを見つけます。

これは私たちのデータベースのために得たものです:

                     <Partitions>
                            <Partition>
                                <ID>factLinksSeller_484c3291-2123-4391-8627-fd4b584d1726</ID>
                                <Name>factLinksSeller</Name>
                                <Annotations>
                                    <Annotation>
                                        <Name>IsQueryEditorUsed</Name>
                                        <Value>True</Value>
                                    </Annotation>
                                    <Annotation>
                                        <Name>QueryEditorSerialization</Name>
                                    </Annotation>
                                    <Annotation>
                                        <Name>TableWidgetSerialization</Name>
                                    </Annotation>
                                </Annotations>
                                <Source xsi:type="QueryBinding">
                                    <DataSourceID>15719e99-95fb-44c1-8399-18a769ae1be4</DataSourceID>
                                    <QueryDefinition>select
                                                       *
                                                     from
                                                         dbo.factLinksFull X
                                                     where X.signaturePersonID=16
                                    </QueryDefinition>

これで、このクエリを使用して、SSIS 経由で SQL Server DB にデータをロードできます

外部ツールで Excel ファイルに入力した場合でも、SSAS にインポートした後、このデータはどこかに保存されるはずなので、XMLA スクリプトで確認して次に何をすべきかを決定できます。

ローカルの PowerPivot ブックがあり、メモリがそれらのデータセットを処理できる場合は、はるかに簡単な方法があります。

  1. PP ブックを開き、PowerPivot を実行します。
  2. データ ビューに切り替え
  3. 左上隅にあるアイコンを押して、現在のタブからテーブル全体をコピーし、CTRL + Cを押して、データがメモリに転送されるのを待ちます
  4. ほぼすべてのサイズのデータ​​または MS Access テーブルを処理できるようになったため、データを別の Excel 2013 ファイルに貼り付けます。次に、データを SQL Server にインポートします
于 2015-02-17T14:44:09.650 に答える