2013年7月3日水曜日

SQL Server Agentのjob修正方法

少しマイナーなコマンドかもしれないのでメモします。
例)
EXEC dbo.sp_update_jobstep
 @job_name = N'jobtask',
 @step_id = 1,
 @output_file_name = '',
 @flags = 0;
jobtaskというジョブの1番目のstepのオプション、ログの出力を止める変更です。

このログの出力されたファイルが2GBを超えると、jobが動かなくなるようです。
定期的に消すオプションもないようですし、困ったものです。
マイクロソフトやほかの企業含め、永続的に使っていないんじゃないかと勘ぐります。
マイナーソフトだったり機能だったりはこういう面で不利ですね。
メジャーな物を使っている。という事だけでこういったことは回避できるのかもしれません。
そうはいっても何事も最終的には自身で確認していく必要はあるのですが
その母数の違いはあるかなと思います。
windowsのtask使うのと余り変わらないように思いますし。

2013年7月2日火曜日

RelativeLayoutの指定方法

縦横の組でまとめました。


○基準
 ※Parentが付いている

基準を左上に作る
 android:layout_alignParentLeft="true"
 android:layout_alignParentTop="true"

基準を左下に作る
 android:layout_alignParentBottom="true"
 android:layout_alignParentLeft="true"


○従属

左をそろえて、下に置く
 android:layout_alignLeft="@+id/rootLabel"
 android:layout_below="@+id/rootLabel"

上をそろえて、右に置く
 android:layout_alignTop="@id/rootLabel"
 android:layout_toRightOf="@id/rootLabel"


いろいろなオプションが自由自在にありますが、基本的な構成はこれだけで十分表現できると思います。
レイアウトもRelativeLayoutのみで十分だと思います。


2013年7月1日月曜日

SQL Serverのインデックス再作成

SQL Serverのインデックス再作成ですが、データベースに存在するテーブル名を全て指定する必要はありません。

sp_MSForeachtable "dbcc dbreindex('?')"




便利です。
これを実行する際は、他のクライアントとは排他アクセスになるらしい。
メンテナンス時間を作って作業ですね。
しかし、これをやっても余り速くならないような、ごくごく若干のみ速くなるような。
私が扱っているテーブルでは効果が薄いようです。
クラスターキーを設定しているせいかなとも思います。
テーブルの設計が正しいと言うことでしょうか。
しかし桁の違うデータ量、レコード数を扱っているオンラインシステムはどの様な設計をしているのか
そもそも発想が違うのか。単なるハードウェア増強の力任せで、パフォーマンス本当に上がっているのか。
興味あります。