Лучше Oracle. Он с задачей справится, но место на диске кушает хорошо.
Наверное, лучше.. Но под него, видимо, нужен отдельный сервак, причем, скорее всего не на Windows.. Пока же в наличии то что есть.
Проект пока пилотный и если получится что-то интересное - сервак могут дать.. Но администрировать Oracle и *nix я сейчас сам не готов
Вопросы:
1. Какой тип таблиц использовали?
InnoDB.
2. Не думали делать анализ не по запросу, а онлайн (или периодически) и хранить только результат анализа?
Думали.. Проблема в том, что пока хочется загнать в базу логи, например, за месяц, потом поиграть с запросами, посмотреть что интересного можно из этого получить.. Также есть желание показывать не только графики с ошибками, но и куски разных логов за этот промежуток времени.
Если будет сильно тормозить, то наиболее тяжелые анализы сделаю кэшируемыми.
3. Каковы настройки MySQL? Буфера и т.п.
см. ниже кусок из my.ini
Добавление данных эффективнее в режиме bulk: сперва накопить N строк, а потом вставлять единым INSERT. Эффект прежде всего в более редком перестроении индексов.
Спасибо, это *очень* хорошая мысль.. Так и сделаю.
default-storage-engine=INNODB
sql-mode="STRICT_TRANS_TABLES,NO_AUTO_CREATE_USER,NO_ENGINE_SUBSTITUTION"
max_connections = 1000
query_cache_size=0
table_cache = 128
tmp_table_size = 200M
thread_cache_size = 12
myisam_max_sort_file_size=100G
myisam_sort_buffer_size=369M
key_buffer_size=32M
read_buffer_size = 256K
read_rnd_buffer_size = 512K
sort_buffer_size=256K
innodb_additional_mem_pool_size = 50M
innodb_flush_log_at_trx_commit=1
innodb_log_buffer_size = 40M
innodb_buffer_pool_size = 1200M
innodb_log_file_size=586M
innodb_thread_concurrency = 16
innodb_file_per_table