SQL を速くするインデックス入門 : B-Tree や複合インデックスが理解できる

  Рет қаралды 17,715

ムーザルちゃんねる

ムーザルちゃんねる

Күн бұрын

データベース SQL を高速にするために必須なインデックス(INDEX)の概要や基礎について、まったり解説します。質問・疑問・リクエストなどあればコメント欄にお気軽にどうぞ〜。
😀 対象者(難易度)
・データベースは使ったことがあるがインデックスは知らない
・インデックスなんとなく使っているがよく分かっていない
📝 コンテンツ
・インデックスがどういうものかを解説
・インデックスでよく使われる B-Tree / B+Tree 構造の説明
・インデックスの簡単な使い方
・複合インデックスについて
・複合インデックスが使われるパターンと使われないパターン
・インデックつにまつわる誤解(NULL や否定形など)
・EXPLAIN や実際にスキャンしているレコード量などを調べる方法
🎥 今回使用したスライド
speakerdeck.co...
🦜 Twitter よければフォローお願いします!
/ mu_bug
/ zaru
🔖 #データベース #SQL #インデックス

Пікірлер: 15
@羽鳥優-g2l
@羽鳥優-g2l 7 күн бұрын
DB初心者にとっての神動画
@kumonopanya
@kumonopanya Ай бұрын
インデックスって上から順番に数字を振っておくものだと誤解してたわ。 本のページ数みたいな感じで
@dancinglico
@dancinglico 2 жыл бұрын
インデックスって何なの??とわかりそうでわからなかったのですが、ざっくり分かった気がします。ありがとうございます。
@gonoura
@gonoura 2 жыл бұрын
ちょうどインデックスの概要が知りたかったので、助かりました。ありがとうございます。
@bigsoundsnare
@bigsoundsnare Жыл бұрын
むずかしそー とか言っていただけると、 だよね?難しいよね? って安心する方もいらっしゃるはず、分かりやすくて助かります。ありがとうございます。
@wasa-ey4in
@wasa-ey4in 3 жыл бұрын
初めて視聴しましたが、役割が違う2人が進行をするので、初心者が気になるポイントを聞いてくれたりとなかなか面白くていいチャンネルですね!ムーさんがエンジニアではないので、ツッコミもいい感じです! 今後も色々と紹介してほしいです!
@曲がって左
@曲がって左 3 жыл бұрын
分かりやすかった
@kunime-ji5066
@kunime-ji5066 Жыл бұрын
日本人が日本語を使わなくなる方がデータベースがより強力になるような気がしました。
@ねこ-q6l3j
@ねこ-q6l3j 3 жыл бұрын
初めて視聴しました。 未経験からエンジニアをやっており、インデックスでつまずいていたところ、このチャンネルに出会いました。 すごく面白かったです。わからない中で上手く調べられなかったりと落ち込んでたのですが、励まされました。 またorderbyのお話もお聞きしたいです。 MSテストのmock化についてリクエストさせてください。junitに比べて情報が少なく困ったので、取り上げていただけたらとても嬉しいです。
@Isometrus-maculatus
@Isometrus-maculatus 3 жыл бұрын
初めまして。いつも楽しく勉強させていただいています。 8:33 のB-Treeのスライドで「ノードの階層が全ての要素で同じになり、計算量が変わらない」の部分がよく分からなかったのですが、例えば「go」を探索した場合と「zaru」を探索した場合とでは、階層が異なるので計算量も変わるのではないでしょうか? それともこちらは「リーフノードの階層が同じ」と読み替えた方が良いのでしょうか。 的外れな質問でしたらすみません…m(_ _)m
@moozaru
@moozaru 3 жыл бұрын
コメントありがとうございます! 鋭い質問です。 コメントの通りで B-tree の場合は、途中のノード自身がデータを持つことになるので探索する値によっては高速にレスポンスできますね。計算量が変わらないという表現がややこしくさせてしまいましたね、すいません。説明しませんでしたが、一般的に計算量というのは最悪のケースに計算する量を表現することが多いです。なので、ここではどんな値を探しても最悪 O(log n) で探索できますよという意味ですね。なので、媛蠍さんの認識に間違いはないです! なお、動画の後半で説明する MySQL で採用されているB+tree の場合は、値は全て一番したのリーフノードに格納されているので、どんなキーでも同じ階層数を辿ることになります。
@Isometrus-maculatus
@Isometrus-maculatus 3 жыл бұрын
@@moozaru 返信ありがとうございます。納得できました! B+treeのリーフノードの説明も図つきで分かりやすかったです!
@daq4095
@daq4095 2 жыл бұрын
@@moozaru
@匿名匿名-w3k
@匿名匿名-w3k 3 жыл бұрын
うるさいとまでは思いませんが、「難しいー」とか「わからないー」とか言うのはやめて欲しいです
絶対使いたいPrisma新機能ランキング
26:16
ムーザルちゃんねる
Рет қаралды 1,6 М.
Day1 データベースと SQL を分かった気になる勉強会
26:51
ムーザルちゃんねる
Рет қаралды 3 М.
Inside Out 2: ENVY & DISGUST STOLE JOY's DRINKS!!
00:32
AnythingAlexia
Рет қаралды 15 МЛН
Help Me Celebrate! 😍🙏
00:35
Alan Chikin Chow
Рет қаралды 68 МЛН
Win This Dodgeball Game or DIE…
00:36
Alan Chikin Chow
Рет қаралды 43 МЛН
小路飞嫁祸姐姐搞破坏 #路飞#海贼王
00:45
路飞与唐舞桐
Рет қаралды 25 МЛН
Understanding B-Trees: The Data Structure Behind Modern Databases
12:39
Linux コマンドとターミナルと仲良くなる勉強会
40:29
ムーザルちゃんねる
Рет қаралды 33 М.
10.2  B Trees and B+ Trees. How they are useful in Databases
39:41
Abdul Bari
Рет қаралды 1,2 МЛН
【保存版】DBパフォーマンス・チューニング講座|遅いデータベースを速くする方法とは
15:55
せお丸のプログラマー養成講座【サイバーフリークス株式会社】
Рет қаралды 12 М.
「完璧な表」は扱いづらい。データ配置理論の皮肉。【データベース4】#90
34:13
ゆるコンピュータ科学ラジオ
Рет қаралды 141 М.
小学生でもわかるデータベース設計入門。実際に設計しながら基礎を学ぼう
1:31:28
だれでもエンジニア / 山浦清透
Рет қаралды 127 М.
データベースのインデックスの仕組みと種類
14:25
釣りキチプログラマーチャンネル
Рет қаралды 2,9 М.
知らないとあぶない?Next.jsセキュリティの話
15:54
ムーザルちゃんねる
Рет қаралды 7 М.
Inside Out 2: ENVY & DISGUST STOLE JOY's DRINKS!!
00:32
AnythingAlexia
Рет қаралды 15 МЛН