Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Strategia poprawy wydajności Oracle DELETE

Usuwanie danych to piekielna robota dla bazy danych. Musi tworzyć obrazy przed, aktualizować indeksy, pisać logi przeróbek i usuwać dane. To powolny proces. Jeśli możesz mieć okno do wykonania tego zadania, najłatwiej i najszybciej jest zbudowanie nowych tabel, zawierających żądane dane. Usuń stare tabele i zmień nazwy nowych tabel. Wymaga to trochę pracy konfiguracyjnej, co jest oczywiste, ale jest bardzo możliwe do wykonania. Jednym krokiem mniej drastycznym jest usunięcie indeksów przed usunięciem. Mój głos poszedłby na CTAS (Create Table As Select from) i zbudował nowe tabele. Ładny schemat partycjonowania z pewnością byłby pomocny, być może w następnej wersji Oracle może połączyć partycjonowanie interwałowe i referencyjne. Byłoby bardzo miło.

Wyłączenie rejestrowania .... nie może być wykonane w przypadku usuwania, ale CTAS może używać nologgingu. Zrób kopię zapasową, gdy będziesz gotowy, i przenieś pliki danych do rezerwowej bazy danych, jeśli taką posiadasz.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Oracle SQL GROUP BY nie jest wyrażeniem GROUP BY, pomoc

  2. Błąd podczas wykonywania objaśnienia ODCIEXTTABLEOPEN

  3. jak zrobić łączenie połączeń w java?

  4. C# Łączenie z formatowaniem Oracle DB DateTime

  5. Jak formatować liczby w Oracle