netwind: Фрагментация файлов - причина которую обычно предполагает человек не знакомый с оптимизацией субд.
А как ещё можно можно объяснить РЕАЛЬНУЮ ситуация, которая повторяется 10 раз подрят?
работает база в 2х режимах.
1. Все летает, тоесть база переваривает в секунду 2000 обращений к ней (кол-во записей 10млн. размер 1ГБ) при кол-ве фрагментов <100, при этом поиск по ней точного вхождения длится 0,0003 сек
2. Все тормазит, тоесть база переваривает в секунду 200 обращений к ней (кол-во записей 10млн. размер 1ГБ) при кол-ве фрагментов >500, при этом поиск по ней точного вхождения длится 0,05-0,15 сек.
И все решается дефрагментированием.
netwind: ФРаз optimize не помогает, дело скорее всего не в фрагментации.
Оптимизация как-то не правильно срабатывает - тоесть БД задумывается - файлы БД таскает, но в итоге фрагментированность остается и устраняется тольк WIN дефрагментатором
PS.
Заливка БД в RAM оказалась только временной примочкой, при достижение фрагментированности БД 5000 фрагментов - производительность ниже плинтуса (аналогично что на жестком диске при кол-ве фрагментов >500)
PPS.
Кто что ище может посоветовать?
(Может можно какнибудь искуственно раздуть БД чтобы она использовала выделенное её пространство, аля создание разреженного файла?)
netwind: что по-вашему "сильная фрагментация" ? чем вы этот показатель измеряете?
Сильная фрагментация - >500 кусков файла.
netwind:
и пробовали ли вы делать optimize table ? в этом случае у вас все якобы должно на 10 минут начать работать быстро, потому как этот процесс для myisam создает новый файл и он скорее всего будет непрерывный.
Пробовал, но почемуто нужного эффекта не достигается - фрагментированность остается, наверное умная ОС пишет файл как её кажется более правильно, а не чтоб занять свободное место.
netwind:
обычно идея неплохая. на xp можно целый раздел диска "подключить том как пустую ntfs-папку".
Вот за это спасибо!
Незнал о такой возможности.
Единственная проблема, с которой сталкнулся - установил RAMDisk "Enterprise", а он как оказалось создает диски которые ни ОС ни др. программы не воспринимают как полноценные диски.
DeveloperRu: если все упирается в харды - советую разнесты бд на разные винты простой операцией partition
Тоже идея (оставить на главном диске первую запись а остальное утянуть на доп. диск), но харды "справляются" (RAID загружает ЦП по полной) как появляется сильная дефрагментация (а она появляется через 10 минут работы) - производительность резко снижается (надеюсь от этого спасет вынос на отдельный диск - никакие другие процессы на пути файлов БД чтоб ничего не писали).
PS.
А что будет с индексами? - они тоже растянутся по дискам пропорционально? или останутся на исходном?
База используется не для коммерческого применения, а для личного опыта, а т.к. раньше с мюскулем работал - вот с помощью него и решил объщитать (раньше максимальные базы с которыми работал ограничивались 50тыс. записями - так что граблей никаких не встречал)
такчто жду подсказки.
PS.
Самое тупое решение которое видится - поставить для этой БД отдельный MySQL сервачек, который будет крутиться на доп. HDD и на отличном порту от основного сервера, но решение кажется не очень красивым.
*Будьте внимательны!
Для проверки наличия/отсутствия фирмы в нашей БД советуем проверить эту фирму по названию, телефону и адресу. Если мы обнаружим заявленную вами как новая фирму у нас в БД, но с другим написанием (Ле-кафе, Лекафе, Lecafe), либо незначительным изменением в адресе (стр. 1, стр. 2), то оплачивать такую фирму мы не будем.
Число организаций, присылаемых с одного адреса, должно быть не более десяти. Большее число фирм проверяться и оплачиваться не будет.
А вывод только на мобилку. Да и скорее всего если спалят что куча выводов на 1н номер, то тоже не оплатят.
юни: koder Это вот как, что-то не пойму выкладку. :)
С 1го IP в сутки 1к запросов.
купив у хостера ещё 1н IP имеем ещё 1к запросов в сутки, а т.к. IPки мы покупаем на 30 дней, то получается что 1 IP за $3 дает нам 30к запросов в месяц.
Фрагментация файлов - причина которую обычно предполагает человек не знакомый с оптимизацией субд.
А как ещё можно можно объяснить РЕАЛЬНУЮ ситуация, которая повторяется 10 раз подрят?
работает база в 2х режимах.
1. Все летает, тоесть база переваривает в секунду 2000 обращений к ней (кол-во записей 10млн. размер 1ГБ) при кол-ве фрагментов <100, при этом поиск по ней точного вхождения длится 0,0003 сек
2. Все тормазит, тоесть база переваривает в секунду 200 обращений к ней (кол-во записей 10млн. размер 1ГБ) при кол-ве фрагментов >500, при этом поиск по ней точного вхождения длится 0,05-0,15 сек.
И все решается дефрагментированием.
ФРаз optimize не помогает, дело скорее всего не в фрагментации.
Оптимизация как-то не правильно срабатывает - тоесть БД задумывается - файлы БД таскает, но в итоге фрагментированность остается и устраняется тольк WIN дефрагментатором
PS.
Заливка БД в RAM оказалась только временной примочкой, при достижение фрагментированности БД 5000 фрагментов - производительность ниже плинтуса (аналогично что на жестком диске при кол-ве фрагментов >500)
PPS.
Кто что ище может посоветовать?
(Может можно какнибудь искуственно раздуть БД чтобы она использовала выделенное её пространство, аля создание разреженного файла?)
На всякий случай сообщаю структуру БД
int(11) | varchar(80) | int(11)
первичный ключ | индекс | индекса нет
что по-вашему "сильная фрагментация" ? чем вы этот показатель измеряете?
Сильная фрагментация - >500 кусков файла.
и пробовали ли вы делать optimize table ? в этом случае у вас все якобы должно на 10 минут начать работать быстро, потому как этот процесс для myisam создает новый файл и он скорее всего будет непрерывный.
Пробовал, но почемуто нужного эффекта не достигается - фрагментированность остается, наверное умная ОС пишет файл как её кажется более правильно, а не чтоб занять свободное место.
обычно идея неплохая. на xp можно целый раздел диска "подключить том как пустую ntfs-папку".
Вот за это спасибо!
Незнал о такой возможности.
Единственная проблема, с которой сталкнулся - установил RAMDisk "Enterprise", а он как оказалось создает диски которые ни ОС ни др. программы не воспринимают как полноценные диски.
Но выручил SuperSpeed RamDisk.
Всем спасибо!
если все упирается в харды - советую разнесты бд на разные винты простой операцией partition
Тоже идея (оставить на главном диске первую запись а остальное утянуть на доп. диск), но харды "справляются" (RAID загружает ЦП по полной) как появляется сильная дефрагментация (а она появляется через 10 минут работы) - производительность резко снижается (надеюсь от этого спасет вынос на отдельный диск - никакие другие процессы на пути файлов БД чтоб ничего не писали).
PS.
А что будет с индексами? - они тоже растянутся по дискам пропорционально? или останутся на исходном?
Народ совсем ни юмора не понимает, ни смотреть внимательно не хочет.
Там счетчик стоит, отображающий статистику от pochta-ru http://www.liveinternet.ru/click;pochta-ru
☝ Вы на счетчик посматрите ☝
Сразу поймете что цена занижена:)
PS.
Он в нижнем левом углу. От LI, а от майла наверное глючит :) .
База используется не для коммерческого применения, а для личного опыта, а т.к. раньше с мюскулем работал - вот с помощью него и решил объщитать (раньше максимальные базы с которыми работал ограничивались 50тыс. записями - так что граблей никаких не встречал)
такчто жду подсказки.
PS.
Самое тупое решение которое видится - поставить для этой БД отдельный MySQL сервачек, который будет крутиться на доп. HDD и на отличном порту от основного сервера, но решение кажется не очень красивым.
прикольно, только косячок не большой
Для проверки наличия/отсутствия фирмы в нашей БД советуем проверить эту фирму по названию, телефону и адресу. Если мы обнаружим заявленную вами как новая фирму у нас в БД, но с другим написанием (Ле-кафе, Лекафе, Lecafe), либо незначительным изменением в адресе (стр. 1, стр. 2), то оплачивать такую фирму мы не будем.
Число организаций, присылаемых с одного адреса, должно быть не более десяти. Большее число фирм проверяться и оплачиваться не будет.
А вывод только на мобилку. Да и скорее всего если спалят что куча выводов на 1н номер, то тоже не оплатят.
как лучше тогда, абонентку, или только за запросы?
Конешно по запросам.
(т.к. абонентка всеравно повлечет за сабой ограничение по кол-ву запросов, а многим не нужно каждый день мониторьть тонны запросов)
koder
Это вот как, что-то не пойму выкладку. :)
С 1го IP в сутки 1к запросов.
купив у хостера ещё 1н IP имеем ещё 1к запросов в сутки, а т.к. IPки мы покупаем на 30 дней, то получается что 1 IP за $3 дает нам 30к запросов в месяц.
куда уж дешевле чем 150р?
только выделенный IP 90р ($3)