powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Сколько INSERTов что падает сервер
25 сообщений из 29, страница 1 из 2
Сколько INSERTов что падает сервер
    #38687091
fourty
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здавствуйте. Все довольно просто если не учитывать нагрузку. Есть сайт, он выдает страницы, если на странице есть реклама то происходит вставка записи в таблицу вида u_id, ads_id, date, type (тип действия в данном случае view = показ) движек myisam. В конце дня собираются данные о кол-ве показов, сколько из них уникальных и тд. И таблица очищается. И так каждый день.

Все вроде нормально, но как только количество показов переваливает за 200 000 в сутки, сервер падает из-за больного количества дисковых операций записи. Одним из вариантов я вижу сбор статистики в таблицу на движке memory (чтобы не обращаться к диску для insertа в нее) и через какой то период вываливать из нее в обычную. Но тогда возникает вопрос как поставить создание таблицы автозагрузку сервера? Если через init.d, то скорее всего он выполнится до старта mysql, с задержкой тоже некамильфо.

Может быть вы предложите другой вариант хранения статистики в данном случае?
...
Рейтинг: 0 / 0
Сколько INSERTов что падает сервер
    #38687127
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Если не требуется какой-то супер-оперативности, то писать в файл, а файл периодически (раз в час-сутки) грузить в таблицу.
...
Рейтинг: 0 / 0
Сколько INSERTов что падает сервер
    #38687139
fourty
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Так запись в файл все равно же обращение к диску на запись, есть существенная разница как писать на диск через бд или напрямую?
...
Рейтинг: 0 / 0
Сколько INSERTов что падает сервер
    #38687143
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fourtyТак запись в файл все равно же обращение к диску на запись, есть существенная разница как писать на диск через бд или напрямую?Во-первых, файлы лучше кэшируются (в отличие от таблиц MyISAM, которые не кэшируются вовсе).
Во-вторых, нет перестройки и записи индексов (не без индексов же у вас таблица?).
...
Рейтинг: 0 / 0
Сколько INSERTов что падает сервер
    #38687146
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
В третьих, писать можно в несколько файлов, чтобы меньше налетать на взаимную блокировку писателей.
Тогда как в MyISAM при любой попытке модификации таблицы она блокируется целиком.
...
Рейтинг: 0 / 0
Сколько INSERTов что падает сервер
    #38687181
Фотография ScareCrow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторВо-первых, файлы лучше кэшируются (в отличие от таблиц MyISAM, которые не кэшируются вовсе).
просто эпично.

ссылку на доку дадите?
...
Рейтинг: 0 / 0
Сколько INSERTов что падает сервер
    #38687198
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ScareCrowавторВо-первых, файлы лучше кэшируются (в отличие от таблиц MyISAM, которые не кэшируются вовсе).
просто эпично.

ссылку на доку дадите? The MyISAM Storage Engine
Data caches No
...
Рейтинг: 0 / 0
Сколько INSERTов что падает сервер
    #38687227
fourty
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Да дело совершенно не кешируются. Селект из данной таблицы делается ровно раз в сутки, чтобы подсчитать показатели. А вот INSERTов очень много.
...
Рейтинг: 0 / 0
Сколько INSERTов что падает сервер
    #38687230
fourty
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
* Да дело совершенно не в кешировании
...
Рейтинг: 0 / 0
Сколько INSERTов что падает сервер
    #38687238
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fourty* Да дело совершенно не в кешированииИ в нем тоже. Хотя монопольная блокировка таблиц, пожалуй, похуже эффект дает.
...
Рейтинг: 0 / 0
Сколько INSERTов что падает сервер
    #38687249
fourty
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
То есть memory таблицы Вы не рекомендуете использовать в данной ситуации? Кроме потери статистики при перезагрузке сервера есть какие-то еще причины?
...
Рейтинг: 0 / 0
Сколько INSERTов что падает сервер
    #38687253
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fourtyТо есть memory таблицы Вы не рекомендуете использовать в данной ситуации? Кроме потери статистики при перезагрузке сервера есть какие-то еще причины?Да нет, почему же? Если оперативки хватает, то пожалуйста. Просто дискового места обычно больше и оно обычно дешевле.

Только почитайте про особенности этого движка, например:
http://dev.mysql.com/doc/refman/5.5/en/memory-storage-engine.html MEMORY tables use a fixed-length row-storage format. Variable-length types such as VARCHAR are stored using a fixed length.
...
Рейтинг: 0 / 0
Сколько INSERTов что падает сервер
    #38687254
fourty
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
miksoft,

Спасибо попробую оба варианта, начну с memory ради интереса. Может быть есть еще решения для больших нагрузок до кучи?
...
Рейтинг: 0 / 0
Сколько INSERTов что падает сервер
    #38687258
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
fourtyМожет быть есть еще решения для больших нагрузок до кучи?Решение, в общем-то, одно - буферизация. Просто реализовать ее можно разными способами.
Еще вариант - перевести таблицу на InnoDB с включенным innodb_file_per_table.

Возможны частные решения в рамках конкретной задачи, но это уже надо разбираться в задаче.
Например, бывает, что "сырые" данные не пишут вообще, а модифицируют уже имеющиеся счетчики, суммы и прочие агрегаты.
...
Рейтинг: 0 / 0
Сколько INSERTов что падает сервер
    #38687292
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор количество показов переваливает за 200 000 в сутки,
детский объем для среднестатистического openx.
просто поставьте этот скрипт.
...
Рейтинг: 0 / 0
Сколько INSERTов что падает сервер
    #38687977
Фотография ScareCrow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoftScareCrowпропущено...

просто эпично.

ссылку на доку дадите? The MyISAM Storage Engine
Data caches No

просто эпика. ты сделал мой день.
...
Рейтинг: 0 / 0
Сколько INSERTов что падает сервер
    #38687992
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
ScareCrowmiksoftпропущено...
The MyISAM Storage Engine
пропущено...


просто эпика. ты сделал мой день.Конкретные возражения по делу есть? Со ссылками и прочим?
...
Рейтинг: 0 / 0
Сколько INSERTов что падает сервер
    #38688016
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoft, эта пометка в документации сделана просто для "продвижения" от innodb. означает лишь то, что внутри mysql нет специально выделенной памяти для кеширования данных в отличие от innodb где buffer pool заполняется страницами и данных и индекса.
в контексте обсуждения, очевидно, что данные в myisam кешируются как минимум не хуже чем данные в файлах.
...
Рейтинг: 0 / 0
Сколько INSERTов что падает сервер
    #38688021
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
netwindвнутри mysql нет специально выделенной памяти для кеширования данныхИменно об этом я и говорил (в контексте MyISAM, разумеется).
netwindв контексте обсуждения, очевидно, что данные в myisam кешируются как минимум не хуже чем данные в файлах.Мне не очевидно. Можно раскрыть мысль?
...
Рейтинг: 0 / 0
Сколько INSERTов что падает сервер
    #38688022
Фотография ScareCrow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторВо-первых, файлы лучше кэшируются (в отличие от таблиц MyISAM, которые не кэшируются вовсе).
фраза целиком неправильная ибо данные кэшируются ровно тем же местом что и файлы.

direct io я для myisam не знаю. настройка есть только для innodb
...
Рейтинг: 0 / 0
Сколько INSERTов что падает сервер
    #38688136
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoftnetwindв контексте обсуждения, очевидно, что данные в myisam кешируются как минимум не хуже чем данные в файлах.Мне не очевидно. Можно раскрыть мысль?
не имея количественных данных о конкретном приложении, можно рассуждать только о качественных различиях.
память для кеширования они одну и ту же же разделяют между собой. так что в теории все одинаково будет.
...
Рейтинг: 0 / 0
Сколько INSERTов что падает сервер
    #38688258
tanglir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoftМне не очевидно. Можно раскрыть мысль?Данные муисам не кэшируются самой СУБД. Это вовсе не говорит о том, что они не кэшируются ОС (точно так же, как и обычные файлы).
Другое дело, что СУБД "лучше знает", какие данные на данный момент больше нуждаются в кэшировании, но если мы сравниваем не инно с муисамом, а файлик с муисамом, то разницы тут невооружённым взглядом кагбэ не заметить (имхо).
...
Рейтинг: 0 / 0
Сколько INSERTов что падает сервер
    #38688284
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
tanglirmiksoftМне не очевидно. Можно раскрыть мысль?Данные муисам не кэшируются самой СУБД. Это вовсе не говорит о том, что они не кэшируются ОС (точно так же, как и обычные файлы).
Другое дело, что СУБД "лучше знает", какие данные на данный момент больше нуждаются в кэшировании, но если мы сравниваем не инно с муисамом, а файлик с муисамом, то разницы тут невооружённым взглядом кагбэ не заметить (имхо).Ну хорошо, втроем уговорили :)
В очередной раз даю себе задание слазить в исходники по этому вопросу (ибо не факт с какими именно опциями открывается файл и как часто он флэшится).
...
Рейтинг: 0 / 0
Сколько INSERTов что падает сервер
    #38688306
netwind
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoft, все с обычными опциями.
Есть правда интересный трюк : myisam_use_mmap=1.
...
Рейтинг: 0 / 0
Сколько INSERTов что падает сервер
    #38688313
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
netwindmiksoft, все с обычными опциями.
Есть правда интересный трюк : myisam_use_mmap=1.я говорил не об опциях MySQL, а об опциях при вызове системной функции открытия файла.
...
Рейтинг: 0 / 0
25 сообщений из 29, страница 1 из 2
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Сколько INSERTов что падает сервер
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]