ストアドよりインデックスのほうが速いよ (185レス)
1-

1
(17): 04/09/02 23:11 ID:??? AAS
なんかね、データベースからデータを取得して VB で簡単な加工して、
書き戻すっていう更新処理があったのよ。当然、C/S 間のピンポン多発で
非常に遅いでやんす。で、「バッチ更新はストアドで書き直したらどうですか?」って
上司に言ったわけです。勇気をふりしぼって。

そしたら「ストアドよりインデックスのほうが速いよ」って。(゚Д゚)ハァ?
「クエリ単体の実行時間は 50ms 以下なので遅いのは呼び出しのオーバーヘッドが…」
「データベースが遅いのはね。インデックスなんだよ。たとえば、君の言う
50ms がインデックスを工夫することで 20ms になったら倍以上に速くなるんだよ。」
「いや、50ms が 20ms になっても体感できないと思うんですが…」
「そんなことやってみなくちゃ分からないだろ!!! やりもしないで何を
 言ってるんだよ。インデックスは奥が深いんだよ」
「いまでも主キー指定での取得になっていて…」
「もういいよ。オレがインデックス張ってやるから、まあ見てから言えよ。な?」
156
(2): 2008/07/26(土)02:39 ID:??? AAS
そんな単純な話じゃねーよw

インデックスは付けたって使われるとは限らない。
使われないインデックスは、データの無駄でしかない。

また、インデックスを使ったからといって早くなるとは限らない。

どういうときにインデックスが使われて、効果があるかを熟知した上で、
インデックスがちゃんと使われるような、SQL(ストアド含む)を書く。

SQL(ストアド)ってのは迷路のようなものだよ。
普通に進めば長く時間がかかる。インデックスは、その迷路に
壁を一つか二つかあけることができる。どこに壁をあけ、どういうルートを通るか
全体を見て考えないといけない。

SQLとストアドもな。クライアントとサーバーのどちらでどういう処理が動いて
どれだけのデータが転送されるかってのを考えないと、どちらが速いかなんて答えは出ない。
157: 2008/07/27(日)01:00 ID:??? AAS
迷路ってほど難解でもないと思うが。

つか、普通に考えればストアドとインデックスとどっちか速いかなんて
無意味な議論しないとオモ
158: 2008/07/27(日)11:58 ID:??? AAS
煙突とダイヤモンドでどちらが高いかという命題に近いな
159: 2008/07/30(水)21:27 ID:??? AAS
データの分布が変わったらインデックスが有効じゃなくなるとかあるだろ。
常に正しい答えなんてねーよ。
160: 2008/11/03(月)08:38 ID:??? AA×

外部リンク:
161: 2008/11/14(金)23:44 ID:??? AAS
drop index に罪悪感を感じるようになるとは思わなかった
162
(2): 2009/07/21(火)03:34 ID:9pmi0kw9(1) AAS
>>156

どっかのITコンサルを名乗る連中みたいな発言だな。たとえ話や抽象論だけで、
要は何をすればいいのか結局現場まかせみたいな。

>インデックスは付けたって使われるとは限らない。

インデックスって、使う/使わないの二択しかないんだから当たり前の話。

>使われないインデックスは、データの無駄でしかない。

正論です。とはいえ、インデックス容量をケチるほどかつかつのハードウェア
設計も珍しいですが。

>また、インデックスを使ったからといって早くなるとは限らない。

これまた正論。帳票など大量のレコードを結合するときは、インデックスを
使うよりもハッシュジョインのほうが早いですからね。

>どういうときにインデックスが使われて、効果があるかを熟知した上で、
>インデックスがちゃんと使われるような、SQL(ストアド含む)を書く。

こういう部分がプログラマの腕の見せ所でもあるんだろうが、実際はそんな
優秀な人間ばっか集めれるわけじゃあるまいし。びっくりするぐらい雑な
SQLを書くベテランが大勢いるのが現実なわけで。

>SQL(ストアド)ってのは迷路のようなものだよ。
>普通に進めば長く時間がかかる。インデックスは、その迷路に
>壁を一つか二つかあけることができる。どこに壁をあけ、どういうルートを通るか
>全体を見て考えないといけない。

わかったような、わからないような、見事に煙に巻く美文だな。
翻訳すると、「SQLで全件検索すると遅いから、インデックスというミニ
テーブルを参照してデータを検索する機能を使うと、あたかも本の目次を
見て目的のページを開くかのごとく素早く検索できます」ということ?

>SQLとストアドもな。クライアントとサーバーのどちらでどういう処理が動いて
>どれだけのデータが転送されるかってのを考えないと、どちらが速いかなんて答えは出ない。

能書きはいいから両方速くしてください、でFA?

>>154

似たようなことをやった記憶がある。SQLの話じゃないけどね。
で、予想どおりトンチンカンなものが出来上がってた。
さらに恐ろしいのは、それが成果物として存在感を出して、後続作業はこれと
矛盾しないようにしなければいけないという制約ができたこと。
163: 2009/07/22(水)03:06 ID:??? AAS
>>156
>使われないインデックスは、データの無駄でしかない
>>162
>正論です。とはいえ、インデックス容量をケチるほどかつかつのハードウェア
>設計も珍しいですが。

容量よりも更新コストを気にするだろ、普通・・・
164: 2009/07/23(木)01:24 ID:DfQXlsWj(1) AAS
集合操作をまったく理解していない
コボラーが書いたような無駄に長いストアドは勘弁してほしいな。
165
(2): 2009/07/23(木)21:41 ID:??? AAS
SQLを書いてからインデックスを張れば無問題。
いまどきオプティマイザがどこにインデックス張ればいいのか教えてくれる。
166
(1): 2009/07/24(金)00:33 ID:W2V4yxbD(1) AAS
>>165

>SQLを書いてからインデックスを張れば無問題。

SQLを書く前の、テーブル設計する時点でどこにインデックスが必要か考えとくもんだろ?
ついでに言えば、インデックスを張ると更新が遅くなることは知ってるよな?

>いまどきオプティマイザがどこにインデックス張ればいいのか教えてくれる。

最近のオプティマイザは賢くなって最適な実行計画をたてるらしいが、それでも
インデックスをどこに張るかアドバイスまでしてくれるのは初耳だな。
ちなみに、オプティマイザって何をする機能なのかは知ってるよな?
167: 2009/07/24(金)10:32 ID:lZumjjk/(1) AAS
なんかagaってたから見てみれば...
>>166の言う通りではあるな。>>165みたいな見解が蔓延るから性能問題が後を絶たない。
>>162も一年前のレス触るなよ
168: 2009/08/22(土)11:32 ID:/H1vAtQw(1) AAS
そもそもストアドもインデックスも必要だから存在するんだよ。
正しくテーブル設計した上で、両方とも適切に使わないと、
実用的なシステムは作れない。
169
(3): 2009/09/02(水)00:02 ID:??? AAS
すれ違いで申し訳ありませんが、
主キーとインデックスは、全く同じ状況で全く同じ項目に張られている場合(かつ、主キーもしくはインデックスのみの指定で検索された場合)
どちらが早いのでしょうか。
お分かりになられる方が居られましたらご教授よろしくお願いいたします。
170: 2009/09/02(水)03:29 ID:??? AAS
それはDBに依存するな
171
(1): 2009/09/03(木)10:40 ID:??? AAS
>>169
>すれ違いで申し訳ありませんが
低姿勢なら何やっても許されるとでも思ってんのか、この間抜けは。
172: 2009/09/04(金)06:09 ID:??? AAS
>>169
スレ違いドアホ
>>171
プッツンバカ亀

終了
173: 2009/10/29(木)11:12 ID:BZMEXbd0(1) AAS
岡田外務大臣キタ━━━━━━(゚∀゚)━━━━━━ !!!!!
h‍ttp‍:‍/‍/‍q‍b5.2‍ch.net/t‍est/rea‍d.cgi‍/sak‍u2ch/1256‍630318/1

早く記念カキコしないと埋まっちゃうwww
174
(2): 2009/12/15(火)22:24 ID:??? AAS
初心者なのでよくわからないのですが、ストアドでインデックス使ったらいいんじゃないの???
175: 174 2009/12/16(水)00:43 ID:??? AAS
一度やらせてみてください!
176: 2009/12/16(水)12:38 ID:??? AAS
昨今ストアドを使う意味は、どっちかっていうとセキュロティ強化だろ。
177: 2009/12/17(木)15:20 ID:??? AAS
セキュロティw

>>174
>>11
178: 2011/02/16(水)02:02 ID:??? AAS
>>169
>すれ違いで申し訳ありませんが、
>主キーとインデックスは、全く同じ状況で全く同じ項目に張られている場合(かつ、主キーもしくはインデックスのみの指定で検索された場合)
>どちらが早いのでしょうか。
>お分かりになられる方が居られましたらご教授よろしくお願いいたします。

主キーとインデックスが「全く同じ状況で」全く同じ項目に張られている場合、ということを具体的に説明してください。

主キーとは論理的な概念でインデックスとは通常物理的な概念です。なので比較はできません。

主キーインデックスと主キーでないインデックスが同じ状況で張られるという事を、すなわち「主キーの代わりに一意キーを張る」ということを意味している事と解釈すると、主キーの方が速いです。
(そうでない実装があったら教えてください。)
但し、その場合、全く同じ状況ではありません。理由は上に書いた通りです。(実装が異なります)
179: 電脳プリオン 忍法帖【Lv=40,xxxPT】(1+0:8) 【36.7m】 2013/02/03(日)18:08 ID:??? AAS
ストアドって何よ?
180: 2013/04/24(水)18:26 ID:tyOf/uG0(1) AAS
保守
181: 2013/04/29(月)09:48 ID:??? AAS
プラズマで解決
182: 2017/12/29(金)11:54 ID:dtNZwIie(1) AAS
誰でも簡単にパソコン1台で稼げる方法など
参考までに、
⇒ 『宮本のゴウリエセレレ』 というブログで見ることができるらしいです。

グーグル検索⇒『宮本のゴウリエセレレ』

HG3O2RUU4Z
183: 2018/02/15(木)00:36 ID:??? AAS
☆ 日本の、改憲をしましょう。現在、衆議員と参議院の両院で、
改憲議員が3分の2を超えております。『憲法改正国民投票法』、
でググってみてください。国会の発議はすでに可能です。
平和は勝ち取るものです。お願い致します。☆☆
184: 2023/08/21(月)20:37 ID:??? AAS
ムシャムシャしてやった、今ははんすうしている
185: 2023/09/20(水)17:30 ID:??? AAS
ふー、ついてない日だな
1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ

ぬこの手 ぬこTOP 0.025s