nagajisの日不定記。
本日のアクセス数:0|昨日のアクセス数:0
ad
検索機能まで実装してしばらく置きっぱなしだったので,ここ最近,激しく手を加えている.
もともとデータベース化したいと思ったのは,リストの価値は勿論,余りに間違いが多すぎて「修正してぇ〜!」という欲求があったから(笑.なので検索だけ出来ても,自分としては全然嬉しくない.追加や修正ができるようになってやっと一段落,といったところ.
もちろん,ただリストをデータベース化し修正することだけが目的ではない.多くの方に,コメントやリンク,写真を加えてもらって,「土木遺産リスト」にまで高めてもらいたいと思う.第4号の「明治隧道project」でも書いたが,道路用隧道の歴史(どんなものが作られたのか?どういう技術・意匠があったのか)がよく知られていないままに失なわれつつある.技術的な面だけでなく,誰が使ったのか?どんな使われ方をしたのか?といった想いもまた,失われていっている.そういうものを少しでも記録してもらって,後世に伝えられたら,と思う.
tdbのセールスポイントの一つは,Google Mapsと連動して経緯度の入力と地図表示とを同時に行なえるようにしたこと.ここだけはすごく直感的なインターフェイス(wになったと思う.現状,ほとんどの隧道に経緯度データがないから,みんなにぐりぐりしてもらいたい.データ部分は無理でも,自分の知っている隧道に照準を合わせて「送信」するだけで,地形図へのリンクや(該当するものがあれば)航空写真へのリンクも自動生成される.Mapionからたどれば地名もすぐにコピペできる(実はpdbqではここも自動化していたりするのだが).
現在,MKさんから最終校正データをいただいており,システムに問題がなければこちらと入れ換える予定.それまで「バグ出し」のつもりであちこちいぢってみてほしい.
pdbqを作った時にも思ったが,データの修正や追加はなかなか面倒なものだ.検索するためにフォーマットを揃えるとそのフォーマットに合わせて書くこと(あるいは書いてもらうこと)がまず壁になる.データの書き方はわかりやすいマニュアルを作って告知する必要あり.加えてフェイルセーフな仕組みも(例えば西暦→和歴の変換とか).
どういう構成にするかとかインターフェース(wはどうするかとかはすぐに描けるのだけど,いかんせん,ロヂックの部分がまるで通用しない.pdbqはBeOSのファイルシステム(BFS)に依存している.ちょうどMacのファイルシステムHFSのようにファイルにメタデータを付加することができて,それをqueryで検索することができる.一峠一ファイルにしてそこにメタデータとして峠名だとか標高だとかを書き込んだり検索したりしている.
もちろんそんな便利な機能はないから,いわゆるデータベースアプリを利用しなければならないのだが,全くといっていいほど知識がない.おまけにphpも詳しくないから,perlで書いた無茶苦茶なアルゴリズムをリファレンス本を読みながらphpに移植する作業となる.
perlとphpとは似ているとはいえ,perlの配列とハッシュとが一緒になったようなphpの配列にまず悩む.便利なようで過信すると壷にはまる.natsortした時に配列のキーと値とが一緒にソートされるから,perlにおいてforで0から順にたどっていくようなアルゴリズムが狂ってくる.s/(.*?)//gでマッチした部分を取り出すようなことがpreg_replaceで出来ないこともしばらくやって気づいた.阿呆也.
postgresは思ったよりわかりやすいが,よく解らない使わない機能がたくさんあるのが逆に不安.テーブルの構成もきっとスマートでないに違いない.
部外者が、しかも独り言に突っ込んで良いものかどうかためらいつつ、ソートならDBにやらせちゃった方が速いし楽ですよとか、テーブルの正規化とか基本的なことならお手伝いできるかも知れませんとかつぶやいてみる…
検索結果のソートはpostgresに任せてます..問題は航空写真リンクを作成するときにquery結果を加工した上で直さなきゃいけないところにありまして(経緯度と航空写真の管理番号との対応テーブルから読み取って最近接のものを探したり).<br>しかも,もともとSQLでないデータベースのために書いたperlのプログラムを持って来てるから話が余計にややこしくて...<br>もうちょっと勉強してきますorz
大変な失礼をば…やっぱり部外者が口を挟むもんじゃないですねorz<br>お気を悪くなさったでしょう。申し訳ないです m(__)m<br>最後に老婆心ながら一言だけ。<br>postgerSQLはオープンソースならではというか、ドキュメントに書いてある内容と実際の動きが違うことがたまにあるのでご注意下さい。(←昔BackUp方面で泣かされた人)<br>では開発がんばって下さいー
やややとんでもないとんでもない<br>正規化なんて言葉すら知らないヒトですから(汗<br><br>こちらこそ失礼しましたszo