でーたべーす

せっかくだからグチを。
SQLってモノがあります。リレーショナルデータベースってやつなんですがね。
このMovableTypeのバックエンドもSQLが入っていますし、Xoopsの方もDB使います。


コイツは、まあ、いろんな機能があるんですけど、DBに求められる最小限の機能とは
”データを検索する”
”データを書き込む”
”データを削除する”

この三つです。まあ、書き換える、ってのもありますけどね。
で、データベースってのは膨大なデータを扱うわけです。

そのため、極限まで高速化された検索エンジンを持つわけです。
たとえばこんなデータがあるとしましょう。

成績表






名前 出席番号 国語 英語 数学 理科 社会
A君 1 80 70 60 90 30
B君 2 20 30 80 40 10
C君 3 60 80 80 60 80
D君 4 40 50 30 70 40



さあ、出席番号3番の人の英語の点数が知りたいな♪
そんなときには
SELECT 英語 from 成績表 where 出席番号=’3′;
ほら、一見難しそうだけど簡単でしょう?

SELECTが選んで来い!って命令。何を? 英語の内容を。どこから? 成績表ってテーブルから。どういう条件で? 出席番号3番のやつな。

ちょっと語順が違うだけで、普通に日本語で通じるよね。

英語の点が80点の人は誰だろう? 名前と出席番号が知りたいな。
SELECT 名前,出席番号 from 成績表 where 英語=’80’;

分かりやすいでしょう? そう、決して難しくはないんですよ。
じゃあ、こんなときはどうしようか。

英語が50点で理科が40点の人、いるかな?
SELECT 名前,出席番号 from 成績表 where 英語=’50’ and 理科=’40’;

ね、簡単簡単。さてと。このとき、SQLデータベースは、どういう動きをしているか分かるかな?

1.まず英語50点の人を探し
2.その英語50点の人のなかから理科40点の人を選び出す。

と思った人、アウト。

SQLのand処理は郡集合を使います。つまり、
・英語50点の人のリスト
・理科40点の人のリスト
をそれぞれ作成し、その中から共通のレコードを抜き出します。

という挙動をするんですね。まず~~をし、ってやり方での抜き出しを行いたい場合は()で優先順位を示してあげないと絞込み検索になりません。

SELECT 名前,出席番号 from 成績表 where ((英語=’50’) and 理科=’40’);

こうすると、まず英語50点のリストを作り、その中から理科40点を抜き出します、という構文になるわけです。

えっとですね
なんでこんなこと書いているかというと


プログラマー名乗ってSQL使ったシステム作って売ってるくせに理解してなかった人が身近にいましてね…;;

SELECT 英語 from 成績表 where 名前=’A君’ and 出席番号=’1′;



SELECT 英語 from 成績表 where 出席番号=’1′;

は決定的に異なります。コレは、データ量が膨大になればなるほど決定的な差となって現れます。
2万件のデータがあったら前者は総数4万のデータに目を通し、後者は2万件にしか目を通しません。

さらに、出席番号がprimary key属性を持つ場合、この結果はさらに顕著です。
primary keyってのは全データを通して、その列にしか与えない唯一無二の内容のデータ。
通し番号を使うことが多いですけどね。

ということをですね。
90万レコード(データ列)のデータ量60MBでコレやってやがってサーバおせえおせえって言いやがりました。
#andの四連結、しかも一個は無用のand。

近い将来破綻しそうな230万レコード、データベースファイル300MBなんてデータまで転がってます。
いつでも死ねるなw

データベース構造を聞き取り調査してるだけで吐き気がしました。もうほんと殺そうかと…。
無用なand一個取ったら、10秒かかってたクエリが0.2秒になりました。
無駄な群集合が一個減るんだからそりゃ速くもなるよな。
ていうかMySQLのMyISAMエンジンに10秒かかるクエリを発行するっていうのは、僕に対する嫌がらせかなんかですか。すべてのクエリを1秒以内にしやがれ馬鹿。

ちなみにSQLの本領発揮はリレーショナルデータベースの部分なんですが、どうみても誰もリレーショナルを必要としていません。

Berkeley DBで十分なんじゃないのか。SQLにメモリ無駄喰いさせて飼っとく必然性が見出せねぇ…。
こいつのせいでデスマーチとか起こされた日には殺すね、うん。

PG目指してるみんな! 鯖屋が見てもおかしいって分かるようなプログラムだけは書いちゃダメだぞ!w


★COBOL★

Zuwa の発言:
コボルは富士通がんばりすぎw
NetCOBOLとかなんだよw
沙耶@Gabot の発言:
まだ生きてるのか、こぼらーw
Zuwa の発言:
http://software.fujitsu.com/jp/cobol/
沙耶@Gabot の発言:
最近Rubyが流行ってるってのは聞くがw
.NETにまで組み込んでるのかw
Zuwa の発言:
うむ
沙耶@Gabot の発言:
まあ、得意分野のある言語は強いな。
汎用言語は勉強にはいいが、特化しにくいしな
Zuwa の発言:
メインフレーム資産大事にしすぎw
Linux 64ビット(PRIMEQUEST版) 2005年4月~
とかどうなのよwww



FORTRANもなんか2008とか出てるしw だいぶ前からもうフリーインデントなんだけど、昔の固定記述のイメージが抜けなくて…。

★結論★

沙耶@Gabot の発言:
数学系とか物理シミュとかじゃしっかり残るだろう
むしろC系列のほうがjavaに喰われかねないよなぁw
時代はC#(ぉ
Zuwa の発言:
あたりまえですよw
沙耶@Gabot の発言:
.NETフレームワーク最強
触ったことも無いけど
最先端はやはりBASIC。VisualじゃなくてN80-とかいうやつ(違
Zuwa の発言:
日本語とかいうやつだろ?
沙耶@Gabot の発言:
それはなんか文法が気持ち悪かったぞw



特化系の言語を習得しとくと喰いッぱぐれは多分、ない。


★な・で・し・こ★

Zuwa の発言:
なでしこ ってどうよ
沙耶@Gabot の発言:
まった懐かしいもん呼び覚ましたなw
まだやってんの? あれ?
Zuwa の発言:
まだやってるだろ
沙耶@Gabot の発言:
やってた orz
ちったぁ進んでるのかなぁ?
Zuwa の発言:
葵とか開発してますよw
沙耶@Gabot の発言:
葵ってなんだw
統合開発環境かなにかか?w
Zuwa の発言:
web開発環境って書いてあるようですよ




なでしこ。未踏ユース事業支援を受けているプロジェクトの一つ。
日本語による、より自然なプログラミング言語を目指して開発中…の、はず。
Web開発環境もつくってるみたいね。

かなり自然言語に近いプログラムがかけるので、コードの可読性は…高い…というべきなんだろうな。

使ったこと無いけどwwwww
ちょっとなにかやってみたい、って人には向いているかもしれない。

なでしこプロジェクト

0 thoughts on “でーたべーす

  1. まずは土地を物色しましょう。初めて土地を持つ場合、500坪か750坪の敷地から始めるのが価格的にも良いと思われます。土地の手当ては、屋敷管理人に相談されたらよろしいかと存じ上げます。
    無事、土地を手に入れたら、建築士であるお義父さまの出番です。気楽に腕を振るってもらいましょう。ええ、家を建てるのは初めてなのですから、余り細かいことは言わない方が良いです。希望を全て羅列した上で、全面的にお任せし、できるだけ、思うがままに腕を振るってもらう、それが円満への道です。なお、大抵の場合、予算を大幅にオーバーしますので、そこだけは密にお話し合いを持たれた方が良いと思います。
    無事、家が建ったら、それで終わりではありません。実は、そこからが本当の家探しとなります。より良い土地を求め、より良い間取りを考え、数年、場合によっては十数年の熟考の後、2つ目の家の建築となるわけです。
    でも、まだこれで終わりではありません。
    世間で良く言われることですが、3回目、これでようやく本当に、心の底から満足がいく家を建てることができるのです。
    先は長い、その長い道のりの第一歩を踏み出されたことを、心よりお祝い申し上げると同時に、行く先のご多幸をお祈りいたします。

  2. 3回目でようやく、ってのは建築屋がよく言うねぇ。
    とりあえず「雨風しのげてサーバ置ければ何でもおk」と考えてる人に3回もこんなメンドクサイことやろうと思う気力は多分、ないwwwwwwwwwwwwww

  3. サーバ置くってことは、電源とか、空調とか、防火設備とか、ハロゲン消火設備とか、サーバの種類によってはあれですよね、200V電源とか、楽しそうですねぇ。
    サーバルームだけ3回建て直し。。。

  4. ラック置くわけじゃないんだから空調だけありゃいいよ…wwww
    どんだけ重要なデータ置くんだよw iDC借りるわ、んなんだったらw
    200Vより二系統電源がほしいよね(違

  5. 「まんどくせー」って言って、そこしか見に行かないに30000点
    動力とか引くといいんじゃね? www
    とりあえずGbitバックボーンとASは必須だよね?

  6. 実家は職場通勤1分でしたw
    今のところからは車で1時間だったのぉ(トオイメ
    3回立てられるカイショがあるなら\(*⌒0⌒)bがんばっ♪
    家は、収納が無いと不便きわまりないっす。
    納戸とクロゼットは確保したほうがよいでつ。
    (現在作りつけ収納の無い家に住む住人より)
    電源は、オール電化のが後々値打ちですがぁ、
    サーバー置くなんて…
    シンジランナイwwwwwww

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です