新年あけましておめでとうございます。旧年は大変お世話になりました。今年も【都内で働くSEの技術的なひとりごと】のご購読よろしくお願いいたします。
- 出版社/メーカー: SP SAUCE
- メディア: その他
- この商品を含むブログを見る
新年あけましておめでとうございます。旧年は大変お世話になりました。今年も【都内で働くSEの技術的なひとりごと】のご購読よろしくお願いいたします。
怒涛の忘年会から、数年ぶりのインフルエンザまで、12月後半は色々と大変でした。更に、大晦日から正月明けまでお仕事です。それでは、今年一年の投稿された記事をざっくり振り返ってみます。
まだまだ、纏めなければいけない情報はありますね。それでは、みなさまよいお年を♪ 来年も購読をよろしくお願いします。
反省します。
こんな事書いてました。
ryuchan.hatenablog.com
ふぅ。相変わらず達成していないものが多いです。MCP も MCITP から全然更新していないなぁ。来年の抱負は少し少な目にしようww 一つづつ確認してみると、
ある程度達成可能なものにしよう。数減らそう。
もう一つ dmf をお試ししてみます。sys.dm_exec_query_statistics_xml です。
ryuchan.hatenablog.com
sys.dm_exec_query_statistics_xml は、実行中リクエストのクエリ実行プランを返します。一時的な統計情報を含む showplan XML を取得することが可能です。下記のクエリを SQL Server Management Studio で実行してみましょう。(別セッションで何らかのクエリを実行させ続けてください。) ん?結果が得られませんね。
SELECT er.*, eqsx.* FROM sys.dm_exec_requests er CROSS APPLY sys.dm_exec_query_statistics_xml(er.session_id) eqsx
トレースフラグを設定する必要がありそうです。下記のコマンドを SQL Server Management Studio で実行してみましょう。
DBCC TRACEON(7412,-1)
再度下記のクエリを SQL Server Management Studio で実行してみましょう。結果を得ることができました。
SELECT er.*, eqsx.* FROM sys.dm_exec_requests er CROSS APPLY sys.dm_exec_query_statistics_xml(er.session_id) eqsx
若干のオーバーヘッドはあるようですが、気にするほどでは無さそうです。
In TPC-C like workload tests, enabling the lightweight statistics profiling infrastructure adds a 1.5 to 2 percent overhead. In contrast, the legacy statistics profiling infrastructure can add up to 90 percent overhead for the same workload scenario.
インフルエンザ流行してきたと思ったら、ノロウィルスも来てますね。最近の餅つきイベントはその場でついた餅は破棄して、事前に衛生面が確保された場所で作られた餅を配ることが多いようです。こちらも対策が必要ですね。
過去に 2012 と 2016 の dmv、dmf の違いを抽出しました。同じように 2012 と v.Next の違いもチェックしてみましょう。
ryuchan.hatenablog.com
リンクサーバ名を VNEXTto2012 と定義します。下記のクエリを v.Next 側のインスタンスから実行します。
SELECT [SQLServerVNEXTのDMVとDMF] = sqlserverVNEXT.name, [SQLServer2012のDMVとDMF] = sqlserver2012.name, [種別] = sqlserverVNEXT.type, [備考] = sqlserverVNEXT.type_desc FROM master.sys.system_objects sqlserverVNEXT FULL OUTER JOIN( SELECT so.name, so.type, so.type_desc FROM VNEXTto2012.master.sys.system_objects so ) sqlserver2012 ON sqlserverVNEXT.name = sqlserver2012.name WHERE sqlserverVNEXT.name LIKE 'dm_%' ORDER BY sqlserverVNEXT.name
結果をざっと見てみると、見慣れない dmf がいました。赤枠の dm_db_stats_histogram です。object_id と stat_id を引数で渡せばいいようです。
下記のクエリを SQL Server Management Studio で実行してみましょう。
SELECT s.*, sh.* FROM sys.stats s CROSS APPLY sys.dm_db_stats_histogram(s.object_id,s.stats_id) sh
エラーになってしまいますね。しかし、単体で実行すると結果が出力されます。
SELECT * FROM sys.dm_db_stats_histogram(418100530,1)
どうしてなんでしょう? CTP だから仕方ないんでしょうか。このあたり、統計の詳細情報を一覧で出せると結構便利そうですね。もう少し色々試してみよう....
YOGABOOK 用に買ってみたんですが、中々いい感じでした。
冬至も過ぎ、今年も終わりを告げようとしています。この三連休、春を感じさせるような暖かさで、冬とは思えない陽気でした。インフルエンザ治癒にはよかったかもしれません。寝たきりのインフルエンザ生活から少しでも体調を回復すべく、近所でコーヒー飲みながらくつろいだり、運動のため散歩しました。
SQL Server v.Next CTP 1.1 の機能を調査している時に、STRING_ESCAPE 関数を見つけました。SQL Server 2026 から追加された禁即文字列の変換を行う関数のようです。それでは早速試してみましょう。下記のクエリを SQL Server Management Studio で実行してみましょう。
SELECT STRING_ESCAPE('\ / \\ " ', 'json') AS escapedText
ただ今のところ JSON に限定されているようです。そのうち XML や他のフォーマットにも対応していくのでしょう。
nvarchar(max) text with escaped special and control characters. Currently STRING_ESCAPE can only escape JSON special characters shown in the following tables.
インフルエンザには気を付けないといけませんね。予防大事です。
スマートハイジーンフェイスフィット サージカルマスク 50枚入
前から気になっていたので、以下の二つの違いを調べてみました。
tourokuhanbaisha.com
なるほど。
ヒビスコールS(第2類医薬品)
有効成分:クロルヘキシジングルコン酸塩0.2w/v%
ヒビスコールAと基本的に同じものですが、第2類医薬品扱いなので、ドラックストア等の店舗販売業でも取り扱うことができます。
また、第2類ということもあり、アマゾン、ケンコーコム等でネット通販が行われています。ヒビスコールSH(指定医薬部外品)
有効成分:クロルヘキシジングルコン酸塩0.1w/v%
クロルヘキシンジングルコン酸塩の濃度が、A,Sの半分になっています。区分も「指定医薬部外品」扱いなので、流通面での幅が広くなります。例えばホームセンター等でも販売可能になります。
もちろんネット通販も可能です。