都内で働くSEの技術的なひとりごと / Technical soliloquy of System Engineer working in Tokyo

都内でサラリーマンやってます。SQL Server を中心とした (2023年からは Azure も。) マイクロソフト系(たまに、OSS系などマイクロソフト以外の技術も...)の技術的なことについて書いています。日々の仕事の中で、気になったことを技術要素関係なく気まぐれに選んでいるので記事内容は開発言語、インフラ等ばらばらです。なお、当ブログで発信、発言は私個人のものであり、所属する組織、企業、団体等とは何のかかわりもございません。ブログの内容もきちんと検証して使用してください。英語の勉強のため、英語の

2013-09-01から1ヶ月間の記事一覧

SQL Server の実行プランを少しだけ詳しく説明したみた

SQL Server Management Studio の知っておいたほうが良い機能について挙げてみる - その3 - で使用していた SQL を検証がしやすいよう下記のように変更したいと思います。( NESTED LOOPS をわざと発生するようにしています。) USE AdventureWorks2012SET STA…

1000アクセス / 週 を達成した

もっとアクセス数が増加するようにがんばります。

Ctrl+Alt+Del は失敗だった?

『 ビル・ゲイツ氏、「Ctrl+Alt+Del」は失敗だったと認める 』という記事がありました。ビル・ゲイツ氏の母校である、ハーバード大学で講演したときに発言しています。youtube で、16分40秒くらいからその発言に関する一部始終を見ることができます。お茶…

SQL Server Management Studio の知っておいたほうが良い機能について挙げてみる - その3 - ( 実行プランのテキスト表示 )

実行プランの見方で、グラフィカルに表示する方法とそうでない方法があります。一般的には、下図のような実行プランが通常使用されるかと思います。 ぱっと見るのにはいいのですが、どのような順序で評価され、処理されているのは、テキスト形式の方が見やす…

Windows Azure で Oracle 製品が使用可能になっています

現在は Preview 中で、Oracle 製品の使用料はかからないようです。

SQL Server Management Studio の知っておいたほうが良い機能について挙げてみる - その2 - ( 実行プランの各数値の見方 )

実行プランの各数値の見方についてです。ちょっと前に『 SQL Server 2014 CTP1 でカラムストアインデックスの検証もしてみた 』という記事を書きました。この記事の中に下図の2つの図があったかと思います。 (図1) (図2) 赤枠で囲っている数値ですが、特に…

SQL Server Management Studio の知っておいたほうが良い機能について挙げてみる - その1 - ( 推定実行プラン )

SQL Server Management Studio の知っておいたほうが良い機能について挙げてみるの最初の話題は、『 推定実行プランと実行プラン 』についてです。 推定実行プランは下図の赤枠のボタンをクリックすることで、実行プランを表示させることが可能です。実際の…

.NET アプリケーションの高速化について探し始めてみた - その8 - ( .NETFramework の GC )

今回は、.NETFramework の GC の種類に関する記事です。ここの記事が参考になります。これは全く知見がありませんでした。下記のような種類があるそうです。 ワークステーション/コンカレント実行なし ―― メモリ割り当てに責任を持つマネージスレッドにおい…

bwin の SQL Server 2014 事例をみてみた

Gaming Site Can Scale to 250,000 Requests Per Second and Improve Player Experience というマイクロソフトのケーススタディーを参照しました。 今までは sessionState mode="StateServer" で、SQL Server 2012 にセッション状態を保持していたのでしょう…

SQL Server 2014 CTP2 で搭載されると期待される Range インデックスがどんなものか予想してみる

ふと、既にメモリテーブルを実現している MySQL の 仕組みが気になったので、少し調べてみました。 ここのドキュメントを参照しました。 MEMORY ストレージエンジンはメモリ上に情報を格納するテーブルを作成します。従来、これらは HEAP テーブルと呼ばれて…

SQL Server のチューニングについてまとめてみる - その1 - ( インデックスの調査 )

SQL Server のチューニングについてまとめていこうかと思います。まずは、インデックスを使用していないクエリの抽出方法です。SQL Server のチューニングには、dm_* で始まる動的管理ビューを多用します。今回は、主に以下の3テーブルを使用して、インデッ…

SQL Server 2014 CTP1 Range Index について

前回の記事で少しだけ Range Index について触れましたが、CTP1 ではRange Index は未実装のようですね。ここに記載がありました。 Other Limitations More on the not-supported list: DML triggers Data types XML CLR LOB Schema changes are not support…

AIR で画面を表示してみた

AIR 初心者ということで、まずは画面の表示から検証してみたいと思います。AIR アプリケーションで作成してみたいと思います。最初の細々とした設定は飛ばして、ソースを記述するところから説明します。(画面を貼るのが...) ボタンを配置して、イベントハン…

SQL Server 2014 CTP1 インメモリテーブルのインデックスについて

前回の検証につづいて、インデックスの検証も実施してみました。 前回のテーブルに対して、ProductKey および UnitCost に対してインデックスを作成するようにしています。 CREATE TABLE [dbo].[FactProductInventoryInMemoryTable]( [ProductKey] [int] NOT…

AIR の開発環境整備を *再度* 開始した

前回の記事で、Adobe Flash Builder 4.7 では、WYSIWYG な開発ができないことがわかりました。Adobe の FAQ にある通り、4.6 で試してみることにします。Adobe Creative Cloud 経由ではなく、従来のインストーラーでインストールされます。 インストールされ…

9月19日は中秋の名月です

グーグルも中秋の名月バージョンになってます。 今夜の月も綺麗です。

AIR の開発環境整備を開始した

Adobe FLEX ビルダー Flash Builder が IDE ですが、個人的に有償ツールを購入するわけにもいかないので、フリーのツールがないかと探してみました。AIR Gear という eclipse のアドインがあるらしいです。早速、開発環境の整備をしてみましょう。まずは ecl…

Adobe AIR を勉強しないといけません

最近参加したプロジェクトで、Adobe FLEX を用いた開発作業を行うことになりました。しかし、FLEX が何者かまったく理解していません。( .NET 屋さんなので。 ) 理解しないと設計もできないので、少し勉強してみることにします。 Adobe AIR とは、 Adobe AIR…

SQL Server の StreamInsight について

SQL Server の注目機能の一つに StreamInsight というものがあります。これは、CEPを実現するものです。HDInsight の『Insight』と同じキーワードがあったので、反応してしまいました。 CEP とは、 情報システムが分析処理をする場合、いったんデータをデー…

Windows Azure も RC に変わってますね

以上の通りです。

.NET アプリケーションの高速化について探し始めてみた - その7 - ( ExactSpelling 属性 )

ExactSpelling 属性は名前の文字列が完全に一致する時のみ利用可能とするかの属性です。ExactSpelling = true とすることで、完全に一致した関数のみとなります。ExactSpelling = false とすると、部分一致した関数を検索します。以下はサンプルです。 publi…

はてなのお知らせアドイン

はてなのお知らせのChrome アドインがあるんですね。結構便利です。インストールすると、Chrome の右上(赤枠の部分)に配置されます。

SQL Server 2014 CTP1 でカラムストアインデックスの検証もしてみた

そういえば、2012 から追加されたカラムストアインデックスは、2014 になると更新も可能になるんですよね。ちょっと検証してみたいと思います。ここを参考にしました。AdventureWorksDW2012 の FactProductInventory テーブルを使用して検証してみたいと思い…

SQL Server 2014 CTP1 インメモリテーブルの検証をもう一回やってみた

なぜ、InMemory の方が速くならないかと疑問に思い、再度検証してみました。検証環境は前回記事の同じです。前回の検証で気になっていたことがありました。それは下図実行プランの注意マークです。 前回は特に気にせず検証していましたが、よく見てみると、…

.NET アプリケーションの高速化について探し始めてみた - その6 - ( ConcurrentDictionary )

ConcurrentDictionary は、スレッド数と初期容量を設定することで若干高速化されます。スレッドセーフなクラスなので、Parallel クラスで処理することも可能です。ソースコードは以下の通りです。 //ConcurrentDictionaryへの要素追加に関する計測 var lisw …

Visual Studio 2013 RC がリリースされました

Visual Studio 2013 RC (製品候補版) がリリースされました。ここからダウンロードできます。リリースされた製品は下記の通りです。 Visual Studio Ultimate 2013 RC Visual Studio Premium 2013 RC Visual Studio Professional 2013 RC Visual Studio Test …

5,000 アクセス達成してみた

5,000 アクセス達成!とりあえず記念に貼ってみました。

SQL Server 2014 CTP1 インメモリテーブルの検証をやってみた

最近参加したセッションで、SQL Server 2014 は、 2014 年の上半期出荷予定です。 CTP2 で日本語環境のGUIが提供されます。 2012 年には、Oralce → SQL Server に 600 以上の企業が乗り換えたようです。 2012 年まで、3年連続顧客満足度一位です。 5 年連続…

System.Collections.Concurrent 名前空間

System.Collections.Concurrent 名前空間には、ConcurrentDictionary 以外にもスレッドセーフで、便利なクラスが存在します。 BlockingCollection<T> ConcurrentBag<T> ConcurrentDictionary<TKey, TValue> ConcurrentQueue<T> ConcurrentStack<T> OrderablePartitioner<TSource> Partitioner Pa</tsource></t></t></tkey,></t></t>…

.NET アプリケーションの高速化について探し始めてみた - その5 - ( ConcurrentDictionary のパフォーマンス計測 )

.NET アプリケーションの高速化について探し始めてみた - その4 - で取り上げた ConcurrentDictionary のパフォーマンスを計測してみたいと思います。検証しようかと思ったら、仮想環境を格納してある外付けハードディスクを忘れてしまいました...こんな時は…