2011年2月9日水曜日

SQLServerデータパーティショニング

SQLServer2005以降にはテーブルのパーティショニング機能が搭載されています。

データを物理的に分割し、異なるディスクに配置することにより、パフォーマンスを上げることができます。
また、パーティション毎のインデックス構築、バックアップ等が可能なため、時系列でデータをストアしている場合にも有効な手法となります。

最も効果的な使用方法は、注文・売上データの管理をする際に、年月単位でパーティションを区切ることでしょう。
よく使う直近一年間を12分割し、前年比用に昨年分、それ以前と分けるのが効率がよいでしょう。

どのような利用かにも依りますが、ディスクが用意できるのであれば、5つ程度あればよいでしょう。
可能であればtmpと今月前月等はRAID構成と尚よいです。
osとmaster
temp
今月前月
それ以外の1年間
それ以前


数百万件のデータを扱う場合はデータパーティショニングも重要ですが、
適切なインデックスやテーブル構造の設計ができていなければ意味がありません。


参考
http://www.atmarkit.co.jp/fdb/rensai/sqls05try11/sqls05try11_1.html

2011年1月17日月曜日

SQLServerのパフォーマンスチューニング

パフォーマンスチューニングはまずは測定することから始めます。

下記クエリでパフォーマンスモニタで調査できる項目が調査できます。
また、通常では見られないような項目もあるようです。

SELECT * FROM sys.dm_os_performance_counters
SELECT * FROM master.sys.sysperfinfo


参考URL

パフォーマンスを満たす物理メモリ量を算出する(3/3) - @IT
http://www.atmarkit.co.jp/fdb/rensai/drk03/drk03_3.html

2010年8月7日土曜日

複数のパソコンでキーボードとマウスを共有する方法


Synergy+
http://code.google.com/p/synergy-plus/
Windows7にも対応。MacBookProを買ったのでスイッチしました。

Input Director
http://www.inputdirector.com/
Windows同士なら安定していて使いやすいです。

Synergy
http://synergy2.sourceforge.net/
長らくメンテされていませんがWindowsXP以前はそれなりに安定して使用出来ていました。

UltraVNC
ディスプレイが一つしかない場合はコチラを利用します。

リモートデスクトップ
サーバーソフトがWindowsのHomeEditionには付いていないのがネックです。
クライアントソフトはどのバージョンでもダウンロード可能です。
手軽に使えてVNCより遅延が少ないので重宝しています。


C#コードからAPIドキュメントを作成する方法


必要なもの
Sandcastle
Sandcastle Help File Builder(以下SHFB)

chm形式のヘルプファイルを出力する場合
Help Workshop

Vista以降のAP形式のヘルプファイルを出力する場合
Sandcastle Styles


試したバージョンとダウンロードリンク

Sandcastle(Version 2.6.1062.1)
Sandcastle Help File Builder(Version 1.9.1.0)

Sandcastle Styles(Sandcastle 2.6.10621.1 Patch - Rev 1)



参考になったリンク

[Visual Studio 2008]C#のソースファイルからヘルプを作成するツールSandcastle

http://shimaji.exblog.jp/13228062/