オープンソースソフトウェアによる 全文検索・データベース Web の作り方

オープンソースソフトウェアによる 全文検索・データベース Web の作り方 レビュー記事

[ ブックレビューコーナー 目次 ]

ソシム株式会社 様, 有限会社テクスト 様のご厚意により, 書籍 "オープンソースソフトウェアによる 全文検索・データベース Web の作り方" を ブックレビューコーナー にご献本いただきました. この本のレビューをして頂くべく, Linux Users ML や本サイトにおいて公募を行い, これにご希望頂いた方々より感想などをレビュー記事にまとめていただきました.

ここに, レビューアの方々から寄せられたレビュー記事を公開します. (原稿到着順)

ソシム株式会社 様, 有限会社テクスト 様および レビューアの皆様のご厚意に感謝いたします.

なお, 以下のレビューは初版を対象としています.


Reviewed by 古川 泰弘 (x2600@bekkoame.ne.jp) さん

「手ごろな価格で, 独学や輪読にもお勧め」

Linux の使用歴
5 年
UNIX の使用歴
13 年
Linux Box の主な用途
システム開発, セキュリティ監査, 記事執筆
Linux 以外に利用している OS
ウインドウズ (CE/98/2000), Mac OS, ソラリス, IRIX, AIX
Linux と Linux 以外の OS の使用頻度の比
1 : 1

読者に求める技術の範囲は幅広い

全文検索, データベース, ウェブの 3 分野を 1 冊 (395 頁) にまとめている. 各分野だけでも 1 冊の本になる内容を同書では ソフトウエアのインストール, コマンドの使い方, データベースの活用までカバーしている. このため, 本書を理解するには読者に相当幅広い知識を要求される. 例えば, パート 1 の Namazu では TkNamazu で Tcl/Tk が, パート 2 の PostgreSQL では DB の設計, SQL, ODBC, PHP が, パート 3 の活用例では sed, awk, Perl が登場する. 本書を初めて手にした時は「スクリプトや図もたくさん使われ, わかりやすそう」というイメージは, 26 ページで読んでくじけそうになった. Tcl/Tk が出てきたからである.

インターネットを利用できる環境で読もう

だが, 本書の親切なところは関連情報を紹介していることだ. 参考文献, ウェブの URL によって読者を救ってくれる. 読者が困りそうな多くの箇所にはダウンロードサイトを含む各種 URL が記述されており, ここを参照すれば多くの疑問は消えるだろう. Tcl/Tk に関してもウェブを読み疑問を取り除くことができた. インターネットが利用できる環境で同書を読むことを強くお勧めする. このように書くと, 書籍としての完結性に疑問を持たれるかもしれない. だが読者が理論より実践, 基礎より応用, 戦略より戦術に主眼を置いているウェブの作り方を求めているのだから, インターネットを利用できる環境を想定して書かれているのは不思議ではない.

データベースの説明は独立し, 活用例には動作環境の記述を

パート 2 で「SQL 言語の概要」として SQL の説明が p.126 から p.143 に記述されている. 具体的な操作は p.94 から始まり, パート 3 の活用事例でも登場している. 実際の操作が中心となっている本書の場合, SQL の説明は理論編として分けて別章にするか, 付録にまとめて欲しい. また SQL の説明に限らないが, 多くの頁に Tips が多用されている印象を受けた. Tips が前文の続きで十分なケースが多く見受けられた.

パート 3 は, 活用事例が多数紹介されている. 読者が事例を試す時は, 動作環境が記述されていると便利だろう. ウインドウズで確認できたのは 95 (98) か, NT (2000) か. それとも Linux のみで実現できたのか. 各事例を最後まで読まずに動作環境がわかれば, 試してみたくなるに違いない.

手ごろな価格, 独学や輪読にもお勧め

ウェブを利用した全文検索, データベースという非常に幅広いテーマを扱いながら, 実践を重視した書籍は珍しく, 価格も手頃である. 実践的ではあるが, 業務的なシステムを構築する用途より個人利用向きである. 独学で技術を身に付けたい人にはお勧めできる一冊といえる. なぜなら独学で陥り易い情報の偏りも同書なら, バランスを取ることができるからだ. 別な活用例としては, 数人で輪読してシステム構築する教材としても有効と思われる.

最後に, レビューする機会を頂いたソシム (株), ブックレビュー担当の皆様に感謝致します.


Reviewed by 道向 新 (smitimko@ca2.so-net.ne.jp) さん (HomePage)

「取り敢えず検索サービスを開始するための入門者向けマニュアル.」

Linux の使用歴
7 年
UNIX の使用歴
13 年
Linux Box の主な用途
仕事と趣味と独自のウェブサーバとメール・ウェブ端末
Linux 以外に利用している OS
仕事で Mac OS と Windows 系のものを時々触る程度。
Linux と Linux 以外の OS の使用頻度の比
9 : 1

はじめの印象:

本書の狙いは一般家庭から, つまり情報発信することを覚えたユーザが, 自宅で気軽に情報検索システムを構築することまで覚えて欲しい, ということであろう. ターゲットユーザは, 単なるウェブのサービスに飽きたらない程度のユーザということになる.

そういう目的からして, 本書は見事に成功していると言えよう. ちゃんと Windows98 での操作を考慮し, Namazu や PostgreSQL, PHP を中心に解説しているこの手のサーバ側の本は, ちょっと他にないのではないか.

ただし, 本格的にリファレンスとして利用する様なものではないであろう. 要は, 何はともあれ実際に動かしてみたい人向け, の本なのである.

良いところ:

余計な語りはない割に, 参考文献や URL, ページ間のリファレンスや脚注も初版本というにはかなりの充実を見せている. 恥ずかしながら, FAT は 32KB のクラスタサイズ (ブロックサイズ ?) を消費するから FAT32 を使ったほうが良いなどというのはこの本で初めて知った (パーティションのサイズなどの改良程度だと思っていた). DBMS 構築も, 取り敢えず存在している Access を Windows 上で使えるから PostgreSQL を触ってみようというユーザも居るはずである. doskey など, ちょっと使いこなしている人なら常識的なコマンドも, ちゃんと紹介してくれる親切さである.

残念なところ:

しかし, プログラマ, あるいは Linux ユーザとしては, ちょっと物足りない. この本から可能性を知ることはできても, それぞれのシステムそのもののリファレンスとして使用することは困難が伴うだろう.

Part 1 『Namazu+CGI でサーチエンジンを作る』について:

もはや検索エンジンと言えば Namazu であるし, 比較的あちこちで使用されているためか, この部分の記述は必要かつ十分である. TkNamazu などの紹介はお約束であるし, Perl でのインタフェースは説明が無いのかと思ったら入手方法は一応紹介してある.

コマンドラインでも使えるという点の説明は非常にシンプルな記述であるが, まだ使ったことの無い人にはあっけないほど簡単に使えることがわかるはずである. Apache での CGI の設定はわからないところがあるかも知れないが, 注釈にて p.364 を見よなどと親切に解説されている (実例はこの場合 Windows 向けが基本だが, Linux ユーザも参考にはなるだろう).

読者諸氏は, 隅々まで読んで頑張ればフィールド指定検索用の CGI まで付けることができるはずである. 頑張って欲しいところである.

Part 2 『PostgreSQL+PHP でデータベースサイトを構築』について:

私のような, 今となっては Linux オンリーのユーザで Perl や C 大好きな人間にとっては, PHP を基本に書かれた本章はあまり参考にならないかも知れない. PHP はそれほど素晴らしかったのだろうか. Perl や C の例題は一切無い. PostgreSQL だけを学びたいならば, シーラカンス本 (http://www2b.biglobe.ne.jp/~caco/) の方がわかりやすい.

どちらかというと, ODBC 周りで, Excel や Access との連携をより詳しく説いたほうが, 本書の趣旨にあっていたのではなかろうか. Access はさすがに解説があるが, Excel については全く触れられていなかったのが惜しい.

Part 3 『さまざまなデータの活用』について:

正直なところ, Windows ユーザでない私には, ここはやや退屈なツール紹介ページであった. Ghostscript や Perl や nkf などは Linux の日本語ディストリビューションなら大抵はデフォルトでついてくるのだから仕方がない. また, Ghostscript が Windows の場合はほとんど TeX のためだろうなどという記述は 昨年まで Windows も毎日使っていた身としてはちょっと受け入れがたい (世の中には ps で提供されている文書もあったので). さらに, コマンドリファレンスとして使用するには, この記述は Windows 版だろうか Linux 版だろうかと気にしながら読むのはやや苦労する. 個人的には, Perl があれば, sed と awk の紹介はいらなかったのではないかと思われる.

しかし, スクリプト言語入門者にとっては, エッセンスはここに紹介されていることで十分なのであるから, ある程度のプログラミングがこれではじめられるはずだ. 意外に簡単なものかも, と思わせるところに, 本書の意義がある.

一つだけ苦しい記述で意図を掴みかねた点がある. p.187 では, 全文検索エンジンが PostgreSQL では実現しにくいという説明があるが, 少なくとも初版のシーラカンス本ではちゃんと全文検索の実例が解説されている. もちろん, 実際の検索スピードの問題はあるかも知れないが, 要は使い方次第である.

Appendix について:

本文で紹介された, Namazu, PostgreSQL, PHP などのインストールの仕方が書かれている. シンプルな記述が小気味良い.

まとめ:

本書は Windows をクライアントマシンとしてのみ使ってきたユーザ程度でも, 検索サイトを用意できることを主眼に置いている. その主旨の中で, Linux ユーザでもおこぼれにあずかれる本なのである.

学校などでは, ただデータを置いておくだけではなく, 検索の可能性も教えておくべきだろう. そういうときの手軽な参考書として, 入門者にお勧めできる一冊である.

このブックレビューの機会を与えてくださった, ソシム株式会社, ブックレビュー担当者の皆様, その他関係者の皆様に感謝いたします.


Reviewed by 柴田 尚明 (shibata@luky.org) さん (HomePage)

「まずは構築/利用するという, 実戦派向きの良書」

Linux の使用歴
約 7 年
UNIX の使用歴
約 13 年
Linux Box の主な用途
・家庭用および職場のサーバ用途
・手元のノート PC での利用 (メール/ドキュメント作成ほか)
Linux 以外に利用している OS
・会社では Windows98
・ゲーム用に Windows98
Linux と Linux 以外の OS の使用頻度の比
・自宅では Linux : Windows = 95 : 5
・会社では Linux : Windows = 50 : 50

<はじめに>

Linux を使ったいわゆる HOWTO 本は最近多く出ているが, 内容が雑なものが増えている感じがして, 本屋でパラッと立ち読みして買わないことが多くなっている. しかし本書は, できたての初版本にも関わらず, 誤字脱字は目につかず丁寧に仕上げられているという印象を受けた.

また全章を通じて (Tips) というワンポイントアドバイスや (資料) という URI リンクなどが記述されており, 本書で記述するには分量的に苦しいと思われる内容について, より深く知る手だてが用意されており好感が持てる. 特に (Tips) で書かれていることの多くは, 実際に作業を行ってハマったところが書かれているような感じであり, 私にも思い当たるものがある.

また, 本書の方針と思われるので欠点と言うつもりはないが, 各種ソフトウエアの動作原理に関する話などはあまり記述しておらず, まさに本の題名にある「作り方」と言う感じで, この通りにやれば一応動くものができるという意味で実践本意に仕上げてあり これも好感が持てる.

逆に非常に読みづらいと感じた点は, 本書が Linux だけをプラットフォームとして限定しておらず, Windows 系 OS も対象としているために, Linux 上の設定に関する記述と Windows 上の設定に関する記述が交互に出てくるところである. ただし, 実際の読者は自身に関連するところだけを読み, 他は読み飛ばすとも思われるので, 今回のレビューなど全体を通読するときにのみ感じる不満かも知れない.

<各章で印象に残った部分>

・Part1 Namazu+CGI でサーチエンジンを作る

本章では, 一般の会社で多く用いられていると考えられる Microsoft の Word/Excel/PowerPoint や PDF に関しても検索可能とするためのツールも紹介されている. 社内の文書管理に適用しようと思っているが, なかなか時間がとれない人には簡単なインストール手引きとなり, 便利であろう.

・Part2 PostgreSQL+PHP でデータベースサイトを構築

データベースを個人で使いこなしている方は少ないと思う. 私も使いこなせていない. 本章はそういう方向けには取っつきやすい入門書の代わりになるのではないかと思う. MS Access に似ている Tcl/Tk ベースの PgAccess によるデータベースの操作がかなり詳しく示されているが, このようなものがあるとは知らなかったので新鮮だった. ただ, 私自身は Web 経由でのアクセスやバックエンドでの処理に RDBMS を使うことが多いので, デバッグ時を除いてこのツールを使うことはないと思う.

・Part3 さまざまなデータの活用

ここでは他章で示されていなかったより突っ込んだ内容やその他の Tips 集という感じで書かれている. sed/awk のような, 最近では Perl に取って代われた印象があるスクリプト言語でも, ちょっとした工夫でいろいろと楽しめると言うことが示されている. 具体的には awk による CSV ファイルから HTML への変換という例が示されており, なかなか楽しい. また, 最近 Web 上で増えている PDF データを生成/変換するツールも簡潔にまとめられており, 「使える」印象を受けた.

・Appendix

本書で取り上げた Namazu, Apache, PostgreSQL, PHP のインストール手順が まさに「手順」として簡潔にまとめられている. 各章で出てくる上記以外のソフトウエアに関するインストール手順も 最後にまとめた方がすっきりするのではないかと考える.

<まとめ>

スタティックな Web ページの公開だけを行っている方は, 一度本書を手にとってより活用できる Web サイトを作ってみてはいかがかと思う. 本書はその際の構築に関する基本的な項目は網羅されていると思う. 400 ページ弱とかなり厚い本書であるが, Windows に関する記述などを飛ばして読めばかなりすっきり頭にはいるのではないかと思う. 値段もそれほど高くなく, なまず本マンモス本を お持ちでない方には最初の取っ掛かりとしてお勧めできる.


Reviewed by 幸谷 智紀 (tkouya@na-net.ornl.gov) さん (HomePage)

「よく出来たマニュアル本」

Linux の使用歴
4 年
UNIX の使用歴
8 年
Linux Box の主な用途
メール・Web・Samba サーバ, 数値計算用として利用
Linux 以外に利用している OS
Windows 2000
Linux と Linux 以外の OS の使用頻度の比
サーバとしてなら 9 : 1, クライアントとしてなら 2 : 8

○初めに

「よく出来たマニュアル本」, というのが一読して得た率直な感想である. 著者の狙いはそこにあると思うので, こう言われても別段悪い気はしないだろう. 勿論, 「マニュアル本」という言葉には, 対象となるソフトウェアが立脚している思想や背景の説明に欠ける, という意味も込められている. しかし, 「思想なんかどうでもいい. それより俺は実際に動かしてみたいんだ」という向きに, そんな記述は邪魔にしかならない. 思想は使用した後に理解できる, と突き放した, しかし一面の真理を突いている方針を貫いている本が「マニュアル本」なのである.

ご多分に漏れず, 私も動作させてみないと理解できない質なので, 本書のようなマニュアル本は大変に読みやすく, おかげで Namazu や PostgreSQL の何たるかも理解できた.

以下, 大雑把な紹介とその感想を述べる. 内容の細目については著者のサポートページが詳しいのでそちらを参照されたい.

○内容について

PART 1 : Namazu+CGI でサーチエンジンを作る

Namazu の紹介と簡単な使い方, そして CGI も加えて Namazu によるサーチエンジンの構築方法が述べられている.

PART 2 : PostgreSQL+PHP でデータベースサイトを構築

PostgreSQL とその活用に必要な SQL の基本的な説明が記述されている. Web 経由で使用するための PHP スクリプトの説明がそれに続く. しかし, 具体的な例は次の PART 3 の「データベースシステムの活用」に回されている. 何故この PART 2 に付属させなかったのか, 少々理解に苦しむ.

PART 3 : さまざまなデータの活用

この部分は雑多な事柄をひとまとめにしている. まとまりというものが皆無なので, それぞれ独立した解説として読むべきだろう.

Appendix

Namazu, Apache, PostgreSQL, PHP のインストールについての解説. インストール先や各種ディレクトリの設定など, 本文の記述に必要な事項もあるのだから, 本文中にあっても良いように思える.

○本書全体を通じての感想

著者がマニュアルの何たるかを良く心得ているせいか, 実行するためのコマンドの説明や参照 URI, 文献, そして本筋ではないが必要な知識を述べたコラム等がうまく散りばめられている. まとまりに欠けるのは PART 3 だけで, PART 1, PART 2 ではそれぞれ Namazu と PostgreSQL の基本をわかりやすく記述してある.

もっとも, サーバを立てたことのない, 全くの Linux 初心者が本書の内容を実体験するのは少々辛いと思われる. 一応, 前書きには対象 OS として Windows98 も挙げられているが, UNIX の知識が皆無の Windows ユーザもまた, 本書を理解するのは苦しいだろう. 本書の内容を理解するためには, ある程度の UNIX 全般の知識と経験が不可欠である.

○最後に

本書は良書である. 事実, 「全文検索・データベース」というお堅い内容でありながら, 計算機関連書としては結構な売れ行きのようである. 著者の Web ページでもフォローが行き届いている.

だからこそ思うのだが, 何故コンピュータ関係書は電子化しないのだろう. 紙の本を止めろとは言わないが, 本書のように本文に良い紙を使った場合, かなりの重量になる. しかも大判だから, 持ち歩きにも不便だ. 本書のように参照 URI が豊富に示されていると, 情報が古びるのも早い. 著者がボランティアでサポートするぐらいなら, 有料でもいいから適宜更新された電子本を手にしたいと思うのは私だけではないはずだ.

電子文庫パブリのようなサイトが, 非コンピュータ系出版社から生まれる御時世である. 切にお願いしたい.


[ ホーム | マップ | ニュース | 検索 | ドキュメント | リンク | プロジェクト ]
このサイトに関するご意見・ご要望は Webmasters までお願い致します.