![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
No.2ベストアンサー
- 回答日時:
#1です。
cacheが効かないことは無いと思いますよ。
SSDのプチフリ対策のRAMDISK関連の記述とかにも良く載っていますが
SSDが速いといっても所詮数百MB/secレベルです。
それに対してcache(メモリ)は数千MB/secレベルなので10倍以上速くなるはずです。
処理時間が変わらなかったのであればおそらく最初からメモリに載っていたのだと
思います。
OSを再起動した直後に普通に一発目でselect count(*) from table_name;
とする場合とcacheに載せてから(alter table...だけではキャッシュには載りません
その後select * from table_nameを行って初めてキャッシュに載ります)
select count(*) from table_nameとするのでは格段の差が生まれると思います。
実際に計測するときにselect * from table_nameでやってしまうとDISKやメモリへの
アクセス速度だけではなく、結果の画面表示の時間がほとんどになってしまって
差は生まれない(隠れてしまう)と思います。
No.1
- 回答日時:
ハードウェア的にであればいくらでもあるかと思います。
・ストレージのキャッシュ容量を大きくしてそこに予め朝バッチなどで載せておく
(これはストレージのキャッシュではなくBUFFER_CACHE上でも同様ですが)
・ストライピング数を増やす
・ディスク自体の回転数を上げる
・ディスクのインタフェースを見直す SATA<SAS<FC<SSD
・ストレージとのインタフェースを見直す NAS<iSCSI<FC
上記はDBサーバローカルでの話しで、
サーバとクライアントの速度を向上したいのであれば
ソフトウェアレベルの対処として
・MTU、SDU、TDUパラメータを見直す
・OCIクライアントキャッシュを使う(11g~)
といった形です。あと、DBサーバ上でチューニングするソフトウェアとしてのパラメータも
非常に色々とあるかと思います。
DB_MULTIBLOCK_READ_COUNT、BUFFER_CACHE_SIZE、DB_BLOCK_SIZE、
テーブルのキャッシュ常駐化などなど...
この回答への補足
alter session set db_file_multiblock_read_count=128
とか
alter table hogetable cache
とかが代表的な手段なようだったので試してみましたが、
既にSSD化しているためか余り効果が認められませんでした。
ただし、HDに載せてる場合には、alter session set db_file_multiblock_read_count=128
が強烈に効きました。
後出来ることといえばSSDのデフラグ位かとおもってますが、
intel製のSSDではデフラグ効果は薄いときくし悩ましいところです。
LAN周りはJumboFrameしてみましたが、当方の場合にはあまり効果なかったです。
SSDに載せている場合、FullScanのtuningは余り要らないというか、できないのかも...
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Oracle Oracleですがsqlで質問です。 サブクエリ内で番号というカラムで昇順の1レコード目を取得したい 3 2023/05/22 10:02
- 日本語 与件という語について。 3 2022/10/31 09:32
- Oracle 質問です。 下記のテーブルとデータがあり、 取得想定結果のように出力したいです。 下記のsqlだと0 2 2023/05/23 19:10
- MySQL [1000地域 × 10カテゴリー = 1万件のテーブル]!グループ化? 1 2023/06/14 23:56
- ルーター・ネットワーク機器 AU光10G回線について 6 2022/07/25 00:12
- サーバー Webサイト構築フリーランスの案件受注について 1 2022/03/27 18:16
- 個人事業主・自営業・フリーランス 個人事業主や中小企業の給付金申請 2 2023/02/14 20:39
- その他(ビジネス・キャリア) 当初の話と異なる状況について 3 2022/10/02 14:40
- SOHO・在宅ワーク・内職 【急募】クラウドワークスをやっている方!プロジェクト形式の案件は取れていますか? スキル無しの初心者 1 2022/07/13 19:16
- デスクトップパソコン 古ーいパソコン/Atheros AR2181 PCIe Gigabit LAN コントローラー 7 2022/09/07 12:58
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
テーブル名を[]でくくらないと...
-
truncate文で全テーブルを一気...
-
複数テーブルのUPDATE
-
count(1)とcount(*)の違い
-
CLOB型へのINSERT
-
oracleのプライマリ・キー名の変更
-
1つのテーブル・2つの列を結合...
-
インラインビューの更新権限に...
-
oracle sqlで先頭の1件を取得
-
Oracle複数の表をもとにmerge文...
-
テーブルタグについて回答お願...
-
Access レコードを追加できませ...
-
INDEXの無効化
-
Viewにインデックスは張れ...
-
データを削除しても表領域の使...
-
postgreSQLのint型は桁数指定が...
-
ACCESS 複数テーブル・複数フィ...
-
異なるスキーマからデータを抽...
-
他の処理でselectさせないよう...
-
C#でaccdbファイルのテーブルの...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
CLOB型へのINSERT
-
truncate文で全テーブルを一気...
-
count(1)とcount(*)の違い
-
1つのテーブル・2つの列を結合...
-
テーブル名を[]でくくらないと...
-
主キーが二つのテーブルのselec...
-
複数テーブルのUPDATE
-
Oracle テーブルの列削除
-
oracleのプライマリ・キー名の変更
-
グループの数を取得したい
-
oracle sqlで先頭の1件を取得
-
マンションのベランダでお酒の...
-
sqlplusで実行したSQLの結果を...
-
alter table でチェックボック...
-
Oracle複数の表をもとにmerge文...
-
ある英語の問題のコト
-
CASCADE CONSTRAINTSについて
-
ローマ字入力の文字リスト
-
create table as select
-
SQL2005 のクエリ文について
おすすめ情報