Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zakladanie indeksow, prosba o pomoc
gazelek
post
Post #1





Grupa: Zarejestrowani
Postów: 85
Pomógł: 3
Dołączył: 28.02.2008

Ostrzeżenie: (0%)
-----


Po raz pierwszy mam do czynienia z dosc spora baza danych (500 tys rekordow). Mam skrypt, ktory w petli wykonuje zapytanie (okolo 150-200 razy na jedno wywolanie skryptu)

  1. SELECT minimum,maksimum,kurs_zamkniecia FROM notowanie WHERE indeks_id = '$idIndeksu' AND data<='$data' LIMIT 2


Zalozylem indeks w tabeli notowanie, typu BTREE na kolumny indeks_id i data, jednak nie zaobserwowalem przyspieszenia wykonania skryptu

Cytat
Czas wykonania skryptu: 88.978815078735s


Jest to czas porownywalny z poprzednim czasem wykonania skryptu. Czy cos jeszcze da sie zrobic w celu przyspieszenia wykonania skryptu?

Jesli podalem zbyt malo szczegolow, to prosze o informacje (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
gazelek
post
Post #2





Grupa: Zarejestrowani
Postów: 85
Pomógł: 3
Dołączył: 28.02.2008

Ostrzeżenie: (0%)
-----


Wynik dzialania

Cytat
Variable_name Value
innodb_additional_mem_pool_size 2097152
innodb_autoextend_increment 8
innodb_buffer_pool_awe_mem_mb 0
innodb_buffer_pool_size 15728640
innodb_checksums ON
innodb_commit_concurrency 0
innodb_concurrency_tickets 500
innodb_data_file_path ibdata1:10M:autoextend
innodb_data_home_dir
innodb_doublewrite ON
innodb_fast_shutdown 1
innodb_file_io_threads 4
innodb_file_per_table OFF
innodb_flush_log_at_trx_commit 1
innodb_flush_method
innodb_force_recovery 0
innodb_lock_wait_timeout 50
innodb_locks_unsafe_for_binlog OFF
innodb_log_arch_dir
innodb_log_archive OFF
innodb_log_buffer_size 1048576
innodb_log_file_size 10485760
innodb_log_files_in_group 2
innodb_log_group_home_dir .\
innodb_max_dirty_pages_pct 90
innodb_max_purge_lag 0
innodb_mirrored_log_groups 1
innodb_open_files 300
innodb_rollback_on_timeout OFF
innodb_support_xa ON
innodb_sync_spin_loops 20
innodb_table_locks ON
innodb_thread_concurrency 8
innodb_thread_sleep_delay 10000


Zapytanie tworzace tabele:
  1. CREATE TABLE IF NOT EXISTS `notowaniee` (
  2. /* tu kolumny, takie jak kilka postow wyzej */
  3. PRIMARY KEY (`id`),
  4. KEY `Index_2` (`indeks_id`,`data`)
  5. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_polish_ci AUTO_INCREMENT=496647 ;


Co do serwera - skrypt wykonuje sie u mnie na komputerze, mam 2x2.0 GHz i 4 Gb Ramu....

Obecnie czas wykonania dla 160 iteracji petli wynosi 180 sekund.

Ten post edytował gazelek 14.04.2010, 19:24:48
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 5.10.2025 - 22:28