Oracle
 sql >> база данни >  >> RDS >> Oracle

Как да събирам данни от дял INMEMORY?

Процесът IMCO (Inmemory Coordinator) се събужда на всеки две минути и проверява дали трябва да бъдат изпълнени някакви задачи за населението. Така че запитването към таблица веднага след активирането й за inmemory не гарантира, че тази заявка ще бъде обслужена от inmemory.

Обектите се попълват в хранилището на IM колони или в приоритизиран списък веднага след отваряне на базата данни или след като таблиците бъдат сканирани (заявени) за първи път.

Например, ако активираме таблица tab1, tab2, tab3 за inmemory:

alter table tab1 inmemory priority medium;
alter table tab3 inmemory priority high;
alter table tab2 inmemory priority critical;

Тези таблици влизат в паметта, когато:

  1. Процесът на IMCO взема тези таблици и ги зарежда в областта на паметта (по реда на приоритета от най-висок към най-нисък:tab2, tab3 и tab1)
  2. Ако извършим заявка за избор на която и да е от таблиците (пример:select * from tab1 ) преди процесът IMCO да започне (на всеки 2 минути)

За да разберете дали дадена таблица/дял е зареден изцяло в inmemory, можете да направите заявка v$im_segments изглед по следния начин:

select owner, segment_name, partition_name, segment_type, bytes, 
bytes_not_populated, populate_status from v$im_segments;

И така, за да отговоря на въпроса ви:

  1. Уверете се, че таблицата е заредена в inmemory чрез заявка v$im_segments
  2. Ако таблицата не е заредена, изпълнете заявка за избор върху нея, за да бъде заредена в областта на паметта
  3. Вземете план на заявката за заявката за избор в таблицата, тя трябва да показва INMEMORY като част от плана

Вижте тази бяла книга за повече подробности.




  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 Trigger на вложена таблица

  2. Откриване на всички инсталирани версии на Oracle

  3. ORA-12516, TNS:слушателят не можа да намери наличен манипулатор

  4. Изпълнете множество SQL изрази с NHibernate

  5. как можем да групираме записите от 17:00 вчера до 17:00 днес до днешната дата