おはようございます。佐久間です。
「Reporting ServicesとBing MapsでWEB上のHTMLデータを可視化するレポートを作成する」
前回まででWeb上のHTMLからデータを抽出し、レポートで使用する形に変換するところまで完了しました。
第5回目はBing Mapsと連携した地図レポートの作成に取り掛かります。
(目次はこちら)
3. データを表示するレポートを作成する:Reporting Services
3-1. Bingとの連携
3-1-1. データソースの設定とチューニング ← 今回
3-1-2. レポートの作成
3-2. シェープファイルへのマッピング
参考. Windows FormsやASP.NetからSSRSのレポートを利用する
参考-1. Windows FormsからSSRSのレポートを利用する
参考-2. ASP.NetからSSRSのレポートを利用する
3. データを表示するレポートを作成する:Reporting Services
3-1. Bingとの連携
3-1-1. データソースの設定とチューニング
今回はReporting Servicesのレポートを作成します。
まずはBIDS上でこれまで使ってきたSSISのプロジェクトにレポートサーバープロジェクトを追加しましょう。
– レポートサーバープロジェクトの作成 –
・新しいプロジェクトを追加します。
Read More
IISリライトモジュール(IIS Rewrite Module)は便利なIIS拡張です。
Apacheのmod_rewriteみたいなもので、URLの書き換え、変更を行うことができます。
リライト/リダイレクトしたいサイトを選んで「URL書き換え」の設定を行うと、Web.configに設定が保存されます。
以下は、www.hoge.jpというリクエストを、hoge.jpに変える設定です。
<system.webServer>
<rewrite>
<rules>
<rule name="WWWを取り除く" >
<match url="(.*)" ignoreCase="true" />
<conditions>
<add input="{HTTP_HOST}" pattern="^www\.hoge\.jp$" />
</conditions>
<action type="Redirect" url="http://hoge.jp/{R:1}" />
</rule>
</rules>
</rewrite>
<system.webServer>
以下は、逆にhoge.jpというリクエストを、www.hoge.jpに変える設定です。
<system.webServer>
<rewrite>
<rules>
<rule name="wwwがあるURLへ" stopProcessing="true">
<match url="(.*)" />
<conditions>
<add input="{HTTP_HOST}" pattern="^hoge\.jp$" />
</conditions>
<action type="Redirect" url="http://www.hoge.jp/{R:1}" />
</rule>
</rules>
</rewrite>
</system.webServer>
軽く触っただけですが、なかなか便利ですね。
参考
Read More
こんばんは。佐久間です。
半月ぶりの更新です。
「Reporting ServicesとBing MapsでWEB上のHTMLデータを可視化するレポートを作成する」
第4回目は変換処理済みのWorkテーブルのデータでレポート用のテーブルを満たします。
(目次はこちら)
2. データを取得・加工する:Integration Services
2-1. 抽出(Extract)
2-1-1 HTMLからデータを抽出してTSVを作成する
2-1-2 ワークテーブルを空にする
2-1-3 TSVからSQL Serverへデータをインポートする
2-2. 変換(Transform)
2-2-1 都道府県IDを付与する
2-2-2 最大震度IDを付与する
2-2-3 座標データをGeography型に変換する
2-3. ロード(Load) ←今回
2-3-1 インデックスを無効化する
2-3-2 ワークテーブルのデータでレポート用テーブルのデータを洗い替える
2-3-3 インデックスを再構築する
[ロード(Load)]
2-3-1 インデックスを無効化する
Workテーブルからデータをロードする前にまずインデックスを無効化します。
もちろん無効化しなくてもデータのロードは可能ですが、
インデックスが有効な状態でのInsertには多少コストがかかるので一時的に無効化しておきます。
処理の実行は毎度おなじみSQL実行タスクです。
ストアドはこちら。
CREATE PROCEDURE dbo.DisableIndexes
AS
BEGIN
SET NOCOUNT ON;
-- TODO:インデックスの無効化
END
今はまだ無効化する非クラスタ化インデックスを作成していないのでTODOのみです。
対象となるインデックスはレポートのデータを取得するSQLを書く時に作成しますが、
SSISのタスクに予めストアドを仕込んでおけばストアドを更新するだけで処理を補完できるようになります。
Read More