SQL

| No Comments | No TrackBacks
データベースを使ってアプリケーションを作る時、SQLという言語(書式)を使ってデータベースからの検索処理や更新処理などを表現する。
このSQLはそれほど難しいものでもなく、軽く勉強するくらいでデータベースを使って一通りの事を行うことができる。ECサイトなどでデータベースに保存されている商品を表示してみたり、保存されたアクセスログの統計を取って表示してみたり。

少しかじれば誰でもできるものである。
しかし、同じような見た目、結果を出しつつも、技術レベルによって大きな差が出てくる。

自分なども軽くかじった程度でそれほど専門的なものではなかった。ここ最近までは、普通に簡単な計算式の答えを出すように、特に深く考えることもなくSQLを使用してきた。

ところがここ最近、あるwebアプリケーションの表示速度が"どうも遅い"状況が発生し、それの改善の仕事に取り組んだ。
一部のSQLが2秒やら、4秒やら掛かっているものがあり、この部分をSQL改善とindex追加のみで作業し、結局0.1秒を切るくらいの速さに抑えることが出来たりした。

この辺りの一連の作業を行う間に、SQLとデータベースそのものへの知識も深まることとなった。

同じ処理を行うSQLでも、その作りの差は、大きな質の差を生む。
処理が重いから、追加サーバーを用意しましょう、という選択肢もあるが、中身の質を少し確認するだけで、その必要性も無くなったりするかもしれない。
世の中、エコで無駄を無くすような傾向になってきているが、データベースの処理も同じように無駄が無くすっきりしている方が気分が良い(遅いのは無駄な処理ををしているためである)。

SQLだけでなく、システム全般でも同じ事が言える。ソフトウェアの作りは多様であっても、動くアプリケーションの見ただけでは、差がよくわからない。
安く作ってもらったものが、欠陥住宅のようであるかもしれない。
安くて良いもの、高くてひどいもの、安いだけのもの、と様々なものがあるのだなと思う。

No TrackBacks

TrackBack URL: http://www.design-qr.com/cgi-bin/movabletype/mt-tb.cgi/88

Leave a comment

About this Entry

This page contains a single entry by kagohashi published on October 4, 2009 10:20 AM.

マーケットの動き was the previous entry in this blog.

落ちていきそうな is the next entry in this blog.

Find recent content on the main index or look in the archives to find all content.