問題タブ [database-tuning]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mysql - MySQL のプロファイリング方法
MySQL データベースのプロファイルを作成する方法を教えてください。データベースに対して実行されているすべての SQL を確認したいと考えています。
私はあなたがこれを行うことができることを知っています:
set profiling=1;
- 遅いクエリを実行します (例:
SELECT * FROM messages WHERE fromaddress='xxx';
SHOW PROFILES;
しかし、これはコマンドラインで実行されたものにのみ適用されるようです.Webサイトを実行した結果を見たいです.
mysql - 'LIVE'に移行した後、データベースを調整するのはどれくらい簡単ですか(またはそうでない場合)?
すべてのクエリ/テーブルなどを調整する前に、Webサイトで公開する前に(すでに6か月遅れているため、これは理想的なシナリオではありませんが)、公開する必要があるように見えます。 -そういうことです)。
今では弾丸を噛まなければならない場合です。それは、私たちが「それを噛む」ことになると、その弾丸がどれほど大きくなるかを理解しようとする単なる事例です。データベースがライブになると、ライブデータであるため、気まぐれでデータを変更することはできません。私はほとんどのdbスキーマにかなり自信を持っています。たとえば、テーブルはほとんどの3番目と4番目の正規形であり、データの整合性を確保するために制約が使用されます。私はまた、いくつかの列にいくつかのインデックスを入れましたが、これは非常に急いで行われ、テストされていませんが、クエリで頻繁に使用されます-これは私が心配しているビットです。
明確にするために、私は卸売り構造の変更について話しているのではありません。テーブル自体が変更される可能性はほとんどありませんが(個人的に、または誰かを雇うことによって)、ある段階でテーブルを調整する必要があることはほぼ確実です。
これがどれだけの仕事か知りたいです。具体的には、数ギガバイトのデータベース(これまでのところ約300テーブル)を想定しています。
今後数か月以内にテーブルの50%を調整する必要があると仮定します。
チューニングの実行にはどのくらい時間がかかりますか(これは「弦の一部の長さ」タイプの質問です)-しかし、必要な作業の主な決定要因は何ですか?したがって、どのくらいの時間がかかる可能性があるかを計算できます取った?
インデックスの再作成中にデータベースのセクション(または特定のテーブル)をロックすることは可能ですか、それともデータベース全体をオフラインにする必要がありますか?(私はデータベースとしてmySQL 5.xを使用しています)
私が説明すること(すべてのテーブルが完全に調整される前にライブになる)は、法外に危険/望ましくありませんか?(これまでのところ、これが私を引き起こした眠れない夜の数ヶ月を正当化するのでしょうか)?
sql-server - クエリキャッシュの改善をどのように追跡できますか?
WebアプリのアドホックSQLをパラメーター化しています。その結果、クエリプランキャッシュのサイズが小さくなり、ヒット率が高くなると思います。おそらく、他の重要な指標も改善されるでしょう。
これを追跡するためにperfmonを使用できますか?もしそうなら、私はどのカウンターを使うべきですか?perfmonでない場合、この変更の影響をどのように報告できますか?
db2 - DB2 はバッファープールのサイズを増やし、テーブルを圧縮してもパフォーマンスは向上しません。なんで?
IBM DB2 バージョン 9.7 データベースのパフォーマンスの調整と向上に取り組んでいます。ここ数日間、ネットを検索していて、COMPRESS モードでテーブルを作成し、もう 1 つのバッファープールを作成し、両方を 1024mb にアクセスするように設定すると、クエリのパフォーマンスが向上するはずであることがわかりました。ディスクへの I/O が少なくなります。
ただし、時間分析を実行すると、パフォーマンスが低下します。常に使用してきたインデックスを使用して、通常のデータベースに新しい追加を追加しました。Google を検索するたびに、次のステートメントを思いつきます: バッファプール サイズの増加と複数のバッファプールと、テーブルの圧縮により、パフォーマンスが向上することが証明される必要があります。
まったく予想外の結果に非常に困惑しています。私が忘れたチューニングメカニズムがいくつかありますか、またはこの奇妙な動作について誰かが説明していますか?
心から
メスティカ
python - Pythons timeitでパフォーマンスをテストするためにコードセグメントの時間を計るにはどうすればよいですか?
正常に動作するPythonスクリプトがありますが、実行時間を記述する必要があります。私は使用すべきだとグーグルで検索しましたtimeit
が、それを機能させることができないようです。
私のPythonスクリプトは次のようになります。
What I need is the time it takes to execute the query and write it to the file results_update.txt
. The purpose is to test an update statement for my database with different indexes and tuning mechanisms.
oracle - Oracle Textの索引付けを高速化するか、ロード時間の短い場合にのみインデクサーを動作させる
Oracle Text CTXSYS.CONTEXT 索引を使用して、メタ情報を含む約50万行の索引を作成しています。情報は、実行時にインデクサーが呼び出すプロシージャによって結合される 2 つのテーブルに分散されます (関数インデックス)。
ローカル マシン (単純なデュアルコア ノートブック) で CREATE INDEX を実行すると、約 3 分でインデックスが作成されます。8 コアと 16G の RAM を搭載した Solaris 上で動作する DB サーバーでは、同じ (まったく同じ) データのインデックスを作成するのに約 24 時間かかります。
サンプル コード: これは、2 つのテーブルと 3 つの列のインデックス フィーダーです。
これらは好みです
次に、インデックスを作成します
データの大部分は、簡単なタイトルまたは著者名 + 1k 未満のテキストによる短い説明で構成されます。
関連するメモリ設定と PARALLEL パラメータを少し試してみましたが、成功しませんでした。だからここに私の質問があります:
- インデックス作成プロセスを一時停止して再開する方法はありますか (私は CTX_SYS ロールを手元に持っています)。
- どのパラメータを微調整できるか(特にメモリサイズ)のヒントはありますか?
- テキスト索引をエクスポートおよびインポートできますか? -> 次に、ローカル マシンでインデックス作成を実行し、それをサーバーにコピーするだけです。
- インデクサーは「低い優先度」で実行できますか?
- ロック操作によってインデクサーが乱れた可能性があります (他のユーザーが並行してアクセスするステージング マシンです)。関連するテーブルをロックし、インデックスを作成して後でロックを解除する方法はありますか?
sql-server - チューニング アドバイザーを実行する前に、"exec sp_reset_connection" を SQL Server プロファイラー トレース データから削除できますか?
接続プーリングが存在する場合に SQL Server プロファイラーのトレース データに表示される "exec sp_reset_connection" について読んだ情報に基づいて、データベースで考慮されるようにトレース データから削除/除外することは安全 (むしろ論理的) に思われます。チューニングアドバイザー。意見や反論はありますか?
sql-server-2005 - SQL Server データベース チューニングによる変更を元に戻す
この質問をここで行うことができるか、サーバーフォールトで行うことができるかはわかりません。疑問に思っていました...バックアップから回復する以外に、SQL Server 2005 Tuning Advsor によって行われた変更をすばやく元に戻す方法はありますか?
sql-server - SQLServer2005データベースチューニングアドバイザーが見つかりません
コンピューターにSQLServer2005データベースチューニングアドバイザーが見つかりません。SQL Server 2005をインストールしたときに特に選択する必要があったものですか?
[すべてのプログラム]->[MicrosoftSQL Server 2005]とC:Program Files Microsoft SQL Serverディレクトリを調べましたが、それである可能性のあるものは何も見つかりませんでした。
mysql - パフォーマンス指向のデータベースは、MySQL と MariaDB のどちらですか?
パフォーマンス指向のデータベースは、MySQL と MariaDB のどちらですか?
次のすべてに適したストレージ エンジンはどれですか?
- スケーラブルであるべきデータベース
- クエリ処理が速い
- コミュニティのサポートがある
- 多くのチュートリアルやその他の代替手段がありますか?