弐条海月の とはずがたり

そこはかとなく書き綴るブログなるもの

テキスト検索アプリの開発…

 インタプリタ型プログラム言語HSP(Hot Soup Processor)で仕事用に開発したテキスト検索アプリのバージョンアップ版を開発しているところなのですが、心が折れそうな出来事がありました。

 恒例に従いまして、まずはアプリの説明を。仕事柄、1日に50本近くのテキストファイルを扱うのですが、そのテキストの全文検索を行うことができるアプリなんです。数多のテキストファイルを1本1行にまとめ、結合したものを1年づつテキストファイル形式の簡易型データベースとすることで検索速度を速める仕組みです。

 ただ、このアプリは未だ思い描く完全な動作をしていないためβ版として開発しております。現在運用しているバージョンはβ9なのですが、改良版としてソースを見直して簡潔に書き直したβ10がどうも満足な動作をしてくれないのです。

 メインの仕事の合間にちょこちょことプログラム開発。ソースを書き直しつつ完成度を高めてきたはずが、いつの間にか、β9よりも検索結果の表示に時間がかかるようになっていたんです。それも倍くらいかかってるという(泣)。

 仕方がないのでβ9をベースに再度書き直してβ11を開発するか、β10の問題点を最初から洗い出していくかの選択を迫られた訳です。私の中で(笑)。

 そもそもβ9とβ10の間には3年くらいの開きがあり、β10は検索速度以外の部分でも洗練されているので、β9をベースにするのは余りにも忍びない…というわけでβ10の洗い出し作業をここしばらくの間やっていたのですが今日、その原因を特定することができました。

 恥ずかしながら原因は自作の文字処理モジュールでした(笑)。改行コードを削除する自作の命令の動作速度が遅かったのが原因でした。通常のテキストファイルくらいならば何の問題もないのですが、何しろ1行ずつ処理しているのでさすがに10〜12MBのテキストファイルの改行を処理するのは想定外のため、処理速度が遅くなってしまうのは仕方ないんです。

 解決策としては改行コードを取るためのDLLを導入してそちらの命令文で処理することに。結果…β9よりも早く結果が表示できるようになりました。

 サーバーとの連携やデータベースの更新など、まだまだ開発しなければならない部分がありますが、社内で使ってくれている人達のために早期のバージョンアップができるよう頑張ろうと思っています。


コメントを残す

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

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

固定ページ

最近の投稿

カテゴリー





カレンダー

2010年11月
1234567
891011121314
15161718192021
22232425262728
2930  

過去の日記はこちら

キーワードで検索