2

私のクライアントは、データベースをロードするときにフリーズするとして、自分のコンピューターの1つで問題が発生したと報告しました。このデータベースは、この24時間年中無休の非営利団体向けのアプリケーションです。他のすべてがコンピューターでチェックアウトされたので、私はデータベースファイルを見ました。は、ネットワーク共有に保存されているAccess2000です。1ファイル; サイズが1GB未満のシェードです。このコンピューターがロードするのにそれほど時間がかかるのも不思議ではありません(これは最も古いコンピューターであり、NICは10Mbpsしかありません)。

このデータベースは複雑で、正しく機能させるためのマクロとコードでいっぱいである可能性がありますが、どのようにまとめられたかはわかりません。また、試しても再作成できるかどうかはわかりません。私はデータベースの人ではありませんが、いくつかの簡単なことを行うことができます。

つまり、このデータベースをより良く機能させるために私ができる簡単なことはありますか?ユーザーは主に「このボタンをクリックするとすべてが以前と同じになる」タイプのソリューションを必要とするソーシャルワーカーです。そうは言っても、そのボタンがAccessではなくInternet Explorerを開く場合、彼らはそれで大丈夫です。

彼らはWindows2008サーバーを持っています。私はこの代理店の契約技術者であり、サーバーに任意のサービスを追加してサーバーを機能させることができます。もちろん、予算の承認が必要です。データベースが問題になりつつあり、データベースの第一人者を雇ってデータベースを最初から再構築するよりも、単純な解決策の方がはるかに安価になる可能性があります。

Accessデータベースは2000形式ですが、ワークステーションはすべてAccess 2007を実行しているため、他の作業を行う前に2007にアップグレードすることもできます。もちろん、私は何かを試みる前にバックアップを行います。

それを書いた人に電話するのは初心者ではありません。ここでは、誰が最初にそれをしたのか誰も知りません。

編集して追加:最大約6〜7人がいつでもDBを使用できます。すべてがアクティブというわけではありませんが、ワークステーションで開いて最小化されます

4

2 に答える 2

2

また、これがデータベースシステムであることをさらに示唆するために、Accessデータベースを操作および変更するために必要な学習曲線は、vb.netまたはSQLサーバーに基づくアプリケーションと何ら変わりはありません。Oracleシステムのパフォーマンスを微調整する場合は、平均よりも優れたOracleスキルを備えた人材が必要になります。この考え方は、Accessまたはvb.netアプリケーションにも当てはまります。

多くの点で、VSや.netを使用するよりもAccessFARの学習曲線が急であることがわかりました。特に、追加のパフォーマンスが必要な場合。

アクセスには、パフォーマンスを調整するためのコーディングからデータベース設計スキルに至るまでの複数のスキルセットが必要です。これはAccessなので、ここでだまされないでください。さらに悪いことに、パフォーマンスの転換について話しているので、ここでハイエンドのスキルについて話します。

あなたは本当のAccessプロを見つけるのが一番です。なぜならその人はあなたが学ぶのに数週間かかることを数時間で行うことができるからです。

そして、単純な魔法の弾丸の解決策があれば、それはおそらくすでに行われているでしょう。

ほとんどの場合、アプリケーションが価値のあるものである場合、それは、少なくともある程度の能力を備えた誰かによって作成された可能性が高いことを意味します。したがって、これは、このアプリケーションがここでいくつかの良い価値と設計を持っている可能性が高いことを示唆しています。

ただし、すべてのAccess開発者が慣れている基本的なチェックリストのいくつかを確認することができます。もちろん、最初はデータベースを分割することです(これにより、アプリケーションの速度が向上しないことがよくありますが、安定性と信頼性が向上します)。また、アプリケーションが分割されていない場合、これは多くの場合、ビルダーが最適ではなかったことを示しています。

次は、アプリケーションが分割された今の基本的な他のヒントです。

プログラムのコンパイル済みバージョンを常にユーザーにデプロイします。

複数のユーザーの場合–チェックして+バックエンドへの持続的接続が維持されていることを確認します。

トラック名のオートコレクトをオフにします。

上記の手順、および確認する項目のリストは次のとおりです。

http://www.granite.ab.ca/access/performancefaq.htm

上記は、実際の重要な方法でアプリケーションを変更することなくチェックすることの決定的なリストです。

ただし、結局のところ、最善の策は、有能なアクセススキルを持つ人を連れてくることです。そして、彼らがこれのための予算を持っていないなら、おそらくあなたは誰かが彼らの時間のいくらかを志願することをいとわないのを見つけるでしょう。(結局のところ、それが私たちがここで行っていることです)。

私が指摘したように、Accessは多くの場合、より愛情のこもったケアを行い、.netまたはオラクルベースのソリューションを使用している場合よりも多くの点で寛容ではありません。

提案されたアプローチのリストへのリンクを示しましたが、複雑なアプリケーションをいじったり、いじったりする場合は注意が必要です。このようなアプリケーションは、何かを壊したり損傷したりしやすいため、さらに注意が必要です。

ただし、上記のリストを試してみてください。これは本当に素晴らしいリストです。

また、10baseTを使用している場合は、100BaseTにジャンプすると非常に役立ちます。実際、10baseT接続を見てから何年も経ちましたか?(これ本気か?)。

つまり、2008サーバー(コストがかかる)、Access 2007がありますが、これもかなり最近のことですが、一体どうやって10baseTネットワークカードを使用しているのでしょうか。つまり、100baseT NICカードの場合は10ドルですか?私は間違いなくそのボトルネックを取り除くでしょう。

于 2013-02-24T03:04:26.680 に答える
0

みんなありがとう。データベースを圧縮すると、DBのロード時のパフォーマンスが大幅に向上します。私は自分でデータベースをやり直すことはしませんが、少なくとも私のクライアントは、10BaseT恐竜(NICは私の時間の前からの交換用カードであり、古いものです)でさえ、ワークステーションにロードされる速度についての不満を止めることができます男はどうやら中古部品の束を使用することが知られていました)。

データベースの分割については後で説明しますが、これは「安全」機能であり、パフォーマンス機能ではないことを理解しています。

これに関するすべての助けに感謝します。

于 2013-03-06T14:07:01.797 に答える