• ベストアンサー

AccessとCGIでのデータ管理のメリット・デメリットについて

500件ほどの調査報告データを管理することになったのですが、 管理方法に関して意見が分かれて困っています。 A)Accessで管理する B)CGIで管理する 管理条件等に関しては下記の通りなのですが、 この場合、適しているほうはA・Bのどちらなのでしょうか。 また、私としてはAccessよりCGIでの管理の方が向いていると思っているのですが、 Access・CGIで管理する利点・欠点を教えて頂けると助かります。 ※Accessで管理すると、共有サーバで複数の人間が閲覧すると  DBが破損する危険性が高いということや、  レコード件数が増えることによりレスポンスが遅くなる、  という欠点があることは分かりましたが、それ以外でもしあったら…。 ※全ての条件を満たしているCGIはすでに見つけてあり、即設置することは可能です。  Accessの場合は、これからシステムを作ってもらうことになります。 なお、当データの管理は短期的・暫定的なもので、 開発や設置にあまり時間をかけたくはないと思っています。 <データについて>  調査報告データは基本的には文章。短いもので4行~多いもので50行ほど。 <目的>  調査報告データを検索し、類似のデータがないかを調べ、閲覧すること。  新しい調査報告の追加、既存の報告データの修正。 <欲しい機能>  データの検索  使用頻度順での並び替え  調査内容別のカテゴリ分類 <希望>  設置・導入までが短期間で終了する  専門的な知識がなくても扱える  使用時に重くない(極力) お手数ですが、よろしくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
noname#161966
noname#161966
回答No.4

度々すいません. 「なんでもかんでもAccessで」というのは好ましくありませんね.道具を定めることは悪くないんですが・・・ あまり勝手なことを申し上げるのもなんですが,次のようなポイントで説得してはどうでしょうか? 文章を読む限り,Accessのデメリットは納期までのスピード以外になさそうです.技術的にもAccessの自社開発は慣れているようですし・・・ ・短期的暫定的であることを強調する為に具体的にいつからいつまで使う予定かを決める.(CGIなら実現できてAccessでは実現でき無そうな日程?) ・CGIの既存のものの機能を調べて書き出し(箇条書きでいいと思います),開発部門に渡し,同じものを作るとしての納期を回答させる.回答期限も大切. ・Accessにすることでシステムの稼動時期が遅れるとどれ位コストが発生するのかを説明し,Accessにすることで,どうやって遅れによるコストを取り戻すつもりなのか尋ねる. 繰り返しますが,以上のことは ・すぐにシステムに稼動して欲しい ・システムは短期的,暫定的にしか使わない ・すぐに使えるCGIパッケージがある が前提です. 今後,再び同じようなことをやる可能性がある場合は拡張性からAccessが有利であり,急ぐわけではない場合は保守性からAccessが有利であるという意見には変わりません. まして自社開発するときにAccessを用いるという方針があるのならば尚更です. 質問を覆すようなことで申し訳ないのですが,500件程度のデータに対して ・調査報告データを検索し、類似のデータがないかを調べ、閲覧すること。 ・新しい調査報告の追加、既存の報告データの修正。 以上のことを短期的にやるだけならExcelにして人間が頑張るってことでも出来ると思いますよ.定期的に繰り返しやるなら話は別ですが・・・ あまり要領の良くない回答で申し訳ありません.

noname#134651
質問者

お礼

頂いたご回答、大変参考になりました。 ご指摘の部分を踏まえ、同僚と提案書を作り直し、先ほど提出してみました。 どうなるかはわかりませんが…頑張ってみます。 どうもありがとうございました。

その他の回答 (3)

  • panick
  • ベストアンサー率40% (26/64)
回答No.3

>DBが破損する危険性が高い…  Access にて「閲覧」だけではデータの破損は起こりません。複数人で行われるデータ書き込み時のDB破損の危険が生じます。 また、件数が増えるとファイルサイズの肥大やレスポンスの低下が生じます。  CGI の場合もデータ書き込み時にデータファイルの破損が生じることもあります。ただし、CGI や Access に限らずバックアップ作業は必須です。 >設置・導入までが短期間で終了する。専門的な知識がなくても扱える。使用時に重くない(極力)  これから Access を作成される場合、誰でも使えるようなシステムを求めるなら、それなりの人材(コスト)と時間がかかります。 レコードが数万件以上になると検索レスポンスが低下します。  そのCGIが希望条件を満たしており(?)、すでに社内にWebサーバが構築されていて動作可能な状態であるなら、CGIで良いのではないでしょうか。特に迷う必要は無いと思います。 >Accessで管理することのデメリットを指摘したい  どちらにしろメリット・デメリットはあると思います。そもそも、このデータ管理はデータベース向きと言えます。今後の変更や発展性を考慮すれば Access 導入が普通です。 自社開発の環境があるなら尚更です。  CGI と言うよりも、ASP + SQL-Server などによる Web アプリケーション構築の方向も考慮されては如何でしょうか?

noname#134651
質問者

補足

アドバイスありがとうございます。 Accessでの開発予定はあるのですが、どうやらかなり多機能になる+他自社アプリとの合体を考えているらしいため、開発にはかなり時間がかかるとのことです。 (下手すると1年とか…だそうです) そのため、それが出来上がるまでの補助的なツールとしてCGIを利用したいと思ったのですが、上が了承してくれず…。 ともあれ、こんな変な質問にご回答下さり、ありがとうございます。 もう少し色々考えてみます。

noname#161966
noname#161966
回答No.2

まず,メリットデメリットに対する誤解が多いです. ・共有サーバで複数の人間がDBを閲覧するとDBが破損する可能性が高い →プログラムがまずい場合の話で,これはCGIでも一緒です. ・レコード件数が増えるとレスポンスが低下する →500件では心配要りません.実際,Accessで病歴データを数十万件管理しているシステムを保守しましたが問題なく動いていました.レスポンス低下はデータベースの最適化や,インデックスを利用して防げます.これはCGIで作る場合も心配するべき問題です. いずれにしても短期的・暫定的なものであって既にCGIがあるなら揉める様なことではないはずです.あとは予算の問題も. それなのに揉めるということは,短期的・暫定的なものだと思っていない人がいるとか,全ての要件を満たしているCGIというのが実はそうではないかもしれない・・・というケースが考えられますが,本当に大丈夫ですか? ・個人的に職場でオフィスを使っていて仕事している. ・Accessを勉強してもいいという人がいる. ・専門知識のある人がいない. これらに該当すればAccessでシステムを作る方がいいと思います.CGIにするときは,あとでシステムに対する追加要求が無いかどうかを慎重に検討してください.さもないと後日,Accessにしておけば良かったのに・・・という話になるかもしれません.

noname#134651
質問者

補足

> いずれにしても短期的・暫定的なものであって既にCGIがあるなら > 揉める様なことではないはずです.あとは予算の問題も. そうなんですよね…。 ですが、こちらがCGIで通そうとすると、なぜか 「じゃあAccessでもいいじゃない」と言われるのです。 社風で、何でもかんでもAccessでやってしまおう、という風潮があるようなのですが…。 こちらとしては、すぐにでも導入したいので、 既存のCGIで良いと思っているのですが、どうにも提案が通りそうにありません。 Accessでやるとなると、自社開発となるのですが、 さすがにこちらが要求する機能を全て満たしたものは、 1日や2日では作成できないと分かりきってはいるのですが…。 向こうとしては、「1・2週間くらい待て」といった風なのです。 どうしたものか悩んでいます…。 変な相談事で申し訳ありません。

noname#182251
noname#182251
回答No.1

メリット/デメリットといわれても(^^; 私の理解するところではWan上でデーターベースにアクセスしようとすればCGIその他の仕掛けが必要になると考えています。 LANであれば直接アクセスする方が自然(効率も良い)。

noname#134651
質問者

補足

申し訳ありません。 分かりづらいでしょうか…。 こちらとしては、CGIでの管理で良いのではないかと思うのですが、 Accessでの管理を推奨する人たちがいるので、 どうにかAccessで管理することのデメリットを指摘したいのです。

関連するQ&A