0

次のことを行うSybaseIQデータベースv14のテーブルを更新するコードを書き直そうとしています。

  1. テーブル内のすべてのレコードを選択し、いくつかのデータをファイルに抽出します
  2. テーブル内の各レコードの抽出されたファイルフラグを更新します

現在、レコードがファイルに書き込まれると、その抽出フラグが更新されます。現在、テーブルには40 000レコードがあり、プロセスは40GBのデータベース一時スペースを使用します。問題のテーブルの各レコードには60個のフィールドが含まれ、最大で120文字の列が含まれます。

データベースサーバーは、テーブル内の各レコードのテーブル用に新しいバージョンのデータを作成していますか?時間の経過とともに、使用される40GBのアカウントを使用してデータベースサーバー上に一時データの雪だるま式を作成しますか?データを処理して最初にデータを抽出し、それをファイルに書き込んでから、一括更新を実行するのに最適な方法でしょうか。Sybase IQは一般的にアリーナで使用されていると理解しているので、データベースは挿入、削除、選択用に最適化されますが、更新ではパフォーマンスが低下しますか?sybaseデータベースのIQサーバーは、HP-UXとWindowsServer2003で同じように動作しますか。

4

1 に答える 1

1

実際、Sybase IQは読み取り用に最適化されており(OLAPを考えてください)、OLTPアクティビティ用にはそれほど最適化されていません。

データをロードする最速の方法は、LOADTABLEバルクロードコマンドを使用することです。

于 2009-04-28T18:08:48.087 に答える