第14回 SQL Server 2019勉強会-参加メモ
第14回 SQL Server 2019勉強会 20190126
https://sqlserver.connpass.com/event/113907/
●SQL Serverのクエリ実行プランとパフォーマンス –クエリインディクスチューニング
・CIDX
データ行を含む
A-Z順
→CIDXを持っていないとレコード順に追加、断片化が拡大
・非CIDX
行識別子を含む(データは持たない
・プランの読み方
scan→全行、順に確認
seek→対象行のみ、そのままデータを取り出す
デモ
実行プランでプランを読む。
●初級~中級のSQL再入門
・SQLは実行前にパースなどいろいろ処理をしている
→オーバヘッドをなくすため1回で発行したほうが良い(ことが多い
→パラメータによるロジック判定はDBエンジン側がやっている(内部的に
・Where句で指定・サブクエリで除外・結合条件で指定、等の使い分けを意識する
・LEFT JOINののWHERE指定。
→バグかINNNER JOINの見分けがつかのなくなるような書き方に注意
・WHEREのAND/ORの書き方。式の考えは因数分解、数式と同じ。(加+OR/剰×AND)
・SQLの動的生成を避ける
→条件1 OR @para IS NULL
●RDBのテーブルとインデックス設計
・万能テーブルはやめて機能ごとに
・最終更新情報(日時、人)は全テーブルの必要か
→削除されたらわからない、削除フラグをたくさんもたせるのも。。。
→直近しかわからない、2回前に更新した人は追えない
別の履歴管理テーブルとかにもたせるほうが良い
●Configure SQL Server 2019 PolyBase scale-out groups
・外部データ ソースからデータを読み取る Transact-SQL クエリを SQL Server インスタンスで処理
・2019からSQLServer、オラクル、MySQL等のリソースにアクセス可能になる
●LT-前回ハッカソンの解答等
●MCP試験対策シリーズ、Exam 70-765 Provisioning SQL Databases
・試験概要と問題解説
パワーシェルのコマンドレットなども出る。資格とは別にパワーシェルは今後必要。
ラッチ
ページラッチ :SQLServerストレージエンジンとページバッファ間
ページIOラッチ :ページバッファとデータベース物理ファイル間
ページラッチに必要なデータはあることが望ましい。メモリ上のデータなので再起動では消える
システムビューも各種出る。
・tmpdbはコア数単位でデータファイルが分割されるようになってる、ので初期値設定に注意