愛車:マツダアテンザ
Webを中心とした、ビジネス&テクノロジーに関する思いつき
by F-shin
[ このサイトについて ] [ F-shinについて ] [ トップ ]
iPhoneアプリ
author:えふしん
photo_20.jpg
藤川真一について


初代モバツイ開発者
想創社再創業 / KMD博士課程
著書〜100万人から教わったウェブサービスの極意―「モバツイ」開発1268日の知恵と視点 [Kindle版]
お求めやすい夏休み特価!
このカテゴリ[Web系]の最新30件
本ブログは移転しました インターネットの遊び方を身につけよう ネットでの選挙活動と投票率 Web2.0がうまくいかなかったワケ WebにおけるMVCアーキテクチャの勃興と変遷 何故、PCはブラウザ、スマホはアプリなのか。 言っとくけどスマホは退化でもあるからな。 アイコン5000円とか、Web受注(発注)価格について。 残念なWeb論の骨子 HTMLってホントよく出来てるな。 「やまもといちろう×イケダハヤト対談イベント」のログを読んで ネットサービスの成功者は「とりあえず受託」という言葉使うのやめません? 全収集型RSSリーダーの終焉とソーシャル化するWeb 頑張ると報われるプログラマーの社会とは。 Perlが○○な話 アメリカ製品のすごさと不思議とワイヤフレーム どの人件費を考えても絶対にお得!利用規約ナイトがきっかけの本が出ます。 クラウドやモバイルを、もっと仕事で活用したいけど、どうやって会社を説得したら良いかわからない! スマホアプリらしいUXとは。 インターネットの変化に対して起こるモヤモヤすることを考え、整理する活動 Facebookは見なくてもいい情報が出てくるSNS 「あなたは影響力があるから、そんなことを言っちゃいけません」の問題点 Facebookに時間を取られすぎる対策 Paypalの本人確認がむかつく件 ネット系イベントがとても主催しやすくなった件 モバイルファーストが失敗なハズはないが、今はまだ時期尚早 やりがいはソートできない…非情なデータベース社会 2012年までのふりかえりと2013年へ ブラウザという平面の限界 ブログ記事の流通の難しさ
[このカテゴリをもっと見る]
Powered by
Movable Type

May 04, 2008

スポンサーリンク

気軽に書いてたけど、これちゃんと書いておかないとマズイか。

F's Garage:どのレベルのフレームワークが一番良いのか。
に書いた以下の部分。

確かにJavaBeansは面倒だけど、ハッシュで取り回す型のない言語は、DBのスキーマの変更は強いし。(え、select * from を使うなって?)


select * を推奨せず、カラム名を指定すべきという話についての考察がありました。

眠る開発屋blog » SELECT文でアスタリスクを使うな論、とか

列名指定のほうが必要な分だけデータを送らず転送量が減るので、または解析のパフォーマンスが上がるのでよい、みたいな話があるが、そんなに変わるの? いや、経験的にはあんまり変わらん気が。 ってか、もしMySQLであれば、クエリーキャッシュがあるので、なるべく同じ記述のSQL文を発行したほうがいい。 そもそもアプリケーションキャッシュ使えよ!とか。 となると最大公約数的な「SELECT * FROM ~」になるんじゃないのかな、という気がする。


特にrailsだなんだと言ってる文脈においては、select * fromなんてカスみたいなものかと。

そもそもWEBの場合は、眠る開発屋blog さんが引用されている先のOracleのQ&Aサイトに書いてある、「面倒でも何十個も列名を書いているのでしょうか?」などというJOINそのものがパフォーマンス上厳しいケースがある。

WEBでのDBの使われ方って、どちらかというと高速でスレッドセーフなストレージだから、そんな複雑なJOINを使うケースは部分的に限られる。

どうしても複雑になる部分は、大体キャッシュ化すべきデータであることが多いから、select * fromと書くことに多少なりともコストがかかったとしても、気にするレベルではない。

それより細かく指定して結果的にJavaと同じメンテ性になったんじゃLLを使ってる意味がないというもの。

更に、先ほどのOracleのQ&Aにおいても、そんなことよりインデックスを使わないでテーブルを見に行くようなSQLになっちゃダメよ、とか、像とアリの歩行速度の違いを語るような話になってたり。

やってはいけないのは「インデックスを使わなかったりfile sortが発生しているSQL」であって、それさえ解決されてれば、後はLLを選択する範囲での富豪的プログラムの要素に含めてしまって良いと思うので、基本的には「select * from 」を使います。

カラム名が被ってるようなテーブルの連結では指定しますけど、それはそっちの方が純粋に適切だと言うケースの場合でしょう。


## そりゃPVの桁が変われば違うんでしょうが、その場合は、重箱の隅的な最適化案のの一つとしてあげられることかもしれませんが、これを最初から予見すべしってのは反対。それでメンテナンス性を下げるならLLそのものの選択が間違いだと思うし。

スポンサーリンク
■同じカテゴリ[Web系]のエントリー
<<前の記事 ネットのキラーコンテンツは旅行なのになんだそれ。
>>次の記事 テストフレームワークの話
■このblogの書き込み最新3件
本ブログは移転しました インターネットの遊び方を身につけよう トトロが陽なら、『風立ちぬ』は陰?〜『風立ちぬ』の感想
この記事への提案、提言一覧
この記事への提案、提言









あなたの情報を保存しますか?