木構造のデータ・サンプルとして、次のような階層の深さが3の組織図を例に取りましょう。一つのノードは、複数の親を持つことはない(=複数の上司を持たない)、かつ必ず一つの親を持つ(=命令系統から外れる社員がいない)と仮定します。この条件を破ると、木構造ではなくなってしまいます。 図1-1. 木構造の組織図 一般的な隣接リストモデルでこのデータを表現...
なんとなく正規化が分かっている程度なら並のDBエンジニア。真のプロを目指すなら、第3正規形より先についても正確な知識が必要だ
あるプログラミング言語が別のプログラミング言語よりも優れているとウェブ上で発言すれば、間違いなく論争が巻き起こる。「Javaの生みの親」として知られるJames Goslingは、このことを誰よりも知っているはずだ。 Goslingは最近書いたブログのなかで、Javaとスクリプト言語に関する論争のなかに足を踏み入れた。 PHPやPythonのようなスクリプト言語は、「動的な言語」としても知...
"MapReduce" は Google のバックエンドで利用されている並列計算システムです。検索エンジンのインデックス作成をはじめとする、大規模な入力データに対するバッチ処理を想定して作られたシステムです。 MapReduce の面白いところは、map() と reduce() という二つの関数の組み合わせを定義するだけで、大規模データに対する様々な計算問題を解決することができる点です。 MapReduce の計...
WordPressとはオープンソースで提供されているブログシステムのソフトウェアです。サーバにインストールすることで独自のブログを構築可能です。ここではWordPressのインストール方法から実際の利用や運用方法について確認していきます。
いろいろ全文検索エンジンあるけど、いったいどれがどう違うのか迷う。なので、どれは何ができて、何ができないか、主だった違いポイントをまとめてみた。対象は Lucene, HyperEstraier, Rast, Namazu, Senna, Oracle Text。 【検索エンジン <-> RDBMS+全文検索エンジン】 - 検索エンジン単体では relation が張れない(当然)。次のような SQL 相当の事ができない(しない)。 SELECT * FROM test,...
『 従前は、ソフトウェア開発工程における下流の工程において、セキュリティ脆弱性が発見され、それらについて対処されることが多かった。 しかし、作り込まれた脆弱性によっては、容易 』
サービス開始から3年余りで会員数が1000万人を超えたSNSの「mixi」。そのシステムはOSSで構築されており、データベース管理システム(DBMS)には「MySQL」を使う。急増するトラフィックをさばくために負荷分散を重ねた結果、現在ではサーバ1000台以上が連なる超分散システムへ。その中でMySQLが果たす役割とは。 [石田 己津人] 日記だけで4億件のデータ ミクシィが運営するSNS「mixi...