我從csv數據文件中將大量的行加載到表中。對於每個10000條記錄,我想更新表上的索引以進行優化(更新統計信息)。任何機構都告訴我我可以使用什麼命令?在Oracle.is更新統計中,什麼是SQL Server「UPDATE STATISTICS」相當於索引優化或網關統計。我正在使用Oracle 10g和11g。提前致謝。Oracle 10g和11g的索引優化和更新統計信息的命令是什麼?
4
A
回答
7
索引優化是一個棘手的問題。您可以合併索引以消除相鄰的空白塊,並且可以重建索引以完全垃圾並重新創建它。在我看來,在你的數據加載期間你可能想要做的是使索引UNUSABLE,然後當你完成時,重建它們。
ALTER INDEX my_table_idx01 DISABLE;
-- run loader process
ALTER INDEX my_table_idx01 REBUILD;
你只需要一次收集統計時,你就大功告成了,而這與以DBMS_STATS一個電話完成的,就像這樣:
EXEC DBMS_STATS.GATHER_TABLE_STATS ('my_schema', 'my_table');
0
我會建議採取不同的方法。我會放棄索引,加載數據然後重新創建索引。啓用後,Oracle將爲您剛加載的數據建立一個良好的索引。這裏完成了兩件事,記錄加載速度更快,索引將用適當平衡的樹重新構建。 (注意:這裏要小心,如果表格是一張真正大的表格,則可能需要聲明一個臨時表格空間供其使用。)
drop index my_index;
-- uber awesome loading process
create index my_index on my_table(my_col1, my_col2);
相關問題
- 1. 複製優化器統計信息 - Oracle 10g
- 2. 1000更新後索引健康和統計信息更新
- 3. 關於DB2和Oracle的掃描/更新操作統計信息
- 4. 在Oracle中更新統計信息
- 5. Oracle 11g和Oracle 10g一起安裝?
- 6. 比較Oracle 10g和Oracle 11g架構
- 7. 的Oracle 11g引用分區和索引
- 8. Sybase ASE 15.0.2 - 動態更新統計信息/索引統計信息
- 9. 截斷表和更新統計信息
- 10. 更新統計信息和表格數
- 11. Oracle 10g上的索引和RLS
- 12. Oracle 11G中最優化的是什麼?刪除重新創建索引或只是dbms_stats.gather
- 13. 10g和11g差異對Oracle Unicode支持
- 14. 什麼是Cypher命令刪除索引和索引條目
- 15. 爲什麼我的索引列顯示沒有統計信息?
- 16. 找出索引和表統計信息是否過期
- 17. 如何選擇和優化oracle索引?
- 18. Oracle優化程序過時統計信息
- 19. 何時更新SQL Server索引使用情況統計信息?
- 20. MySQL的優化和索引
- 21. Oracle 10g和定義指令
- 22. Oracle 10G與Oracle之間的複製11G
- 23. 計算MySQL和/或Oracle中的列訪問統計信息
- 24. oracle默認命令類型desc或asc 11g vs 10g
- 25. Oracle 11g客戶端連接到10g和11g數據庫
- 26. Oracle手動更新所有表上的統計信息
- 27. 僞造Oracle統計信息?
- 28. 優化Oracle 11g程序
- 29. SQL Server優化 - 索引與統計
- 30. replot命令使用最新的統計信息