Модераторы: skyboy
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> Как себя MySQL ведёт под нагрузкой? или что лучше выбрать? 
:(
    Опции темы
mark2009
Дата 28.9.2012, 14:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 106
Регистрация: 12.10.2009

Репутация: нет
Всего: 1



Добрый день!

Если честно, никогда не работал с высоконагруженными проектами, но тут сложилась такая ситуация...
Не то что даже высоконагруженный - хотя таблица пользователей планируется не менее 1000000 записей - это самое малое. В перспективе до 10000000, а то и больше.

Будет таблица объёмом где-то 2000000 записей, которая будет часто использоваться... и плюс адреса пользователей - тоже нехило - как минимум кол-во пользователей * 2. 
Понятное дело, индексы, грамотная оптимизация.... но как себя эта радость будет вести на реальном серваке? Я почему-то подумываю о том, чтобы портировать всё это на Oracle мотивируя это тем, что он мощнее... как думаете, стоит? Или пока оставить всё на MySQL? Просто если потом в процессе работы сайта выяснится, что СУБД не справляется, будет очень хреново.... надо бы заранее спланировать, имея те данные, которые я здесь предоставил...

Да, в других таблицах будет тоже не меньше записей. В среднем - кол-во пользователей умноженное на число от 1 до 20. Всего таблиц около 30 планируется.

P.S. Сейчас увидел тему http://forum.vingrad.ru/topic-118370.html но всё равно решил свою запостить, ибо у меня конкретная задача описана.

Да, по всем таблицам будет поиск, select, insert.... удаление тоже будет, т.е. все операции I/O в полном объёме. На начальном этапе когда мало пользователей - соотв. мало операций. Но они будут увеличиваться в геометрической прогрессии по отношению к кол-ву пользователей.
PM MAIL WWW ICQ Skype   Вверх
tzirechnoy
Дата 28.9.2012, 15:40 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1173
Регистрация: 30.1.2009

Репутация: 3
Всего: 16



Цитата
но как себя эта радость будет вести на реальном серваке?


Если там один человек пару раз в день зайдёт, чтобы выбрать по 3-5 тысяч записей по индэксу -- то замечательно будет вести. И дажэ не MySQL, а какой-нибудь Interbase 16-bit под Windows 3.11 for workgroups (только TCP/IP от трампета доставить, да).
А если все десять миллионов пользователей попробуют что-то от этой базы за полчаса получить (хотя бы своё имя проверить) -- то, уверяю Вас, до MySQL просто не дойдёт ничего, у Вас на одном сервере сетевой стэк раньшэ ляжэт. 

Я, надеюсь, понятно обрисовал насущные проблемы в оцэнке Вами требуемой производительности?


Цитата
Я почему-то подумываю о том, чтобы портировать всё это на Oracle


Портируйте сразу на 3-4 базы. Ну, там, MySQL, PostgreSQL, firebird, Oracle, MS SQL Server, sqlite. Можно кого-то обойти стороной. Во-первых, вообще способствует чистоте кода, а во-вторых заодно и посравниваете, кто Вам милее и чем они отличаются. Опять жэ, соц.сеть у Вас можэт и не получится -- а портабельным веб-движком потом зарабатывать можно будет -- тожэ польза.

А вообще у MySQL есть свои плюсы в производительности в том числе и перед большым ораклом. Запросы быстрее парзит, по индэксам выбирает вполне на хорошэй скорости. Так что от стиля написания сильно зависит.

Это сообщение отредактировал(а) tzirechnoy - 28.9.2012, 15:41
PM MAIL   Вверх
Zloxa
Дата 28.9.2012, 15:49 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Чо?
****


Профиль
Группа: Завсегдатай
Сообщений: 3473
Регистрация: 12.9.2008

Репутация: 33
Всего: 161



Если у вас лишь две таблицы... может посмотреть в сторону каких нить кей-вал датабаз?


--------------------
Достоверно известно, что 89% людей доверяют статистике взятой с потолка smile
PM   Вверх
mark2009
Дата 28.9.2012, 21:19 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 106
Регистрация: 12.10.2009

Репутация: нет
Всего: 1



В общем, что скажу...

Планируется около 30 таблиц (может и больше, это минимальное число). По поводу таблицы с 2 млн записей - простите, ошибся немного smile) записей будет порядка 6,5 - 7 млн. В одной таблице, да.

По пользователям. Начиная с 0 - стремительное увеличение до бесконечности. Предположим пользователей миллион. Тогда имеем в базе данных увеличение как минимум на 4000000 записей.

Когда юзеров мало, то понятно, что всё будет очень хорошо. Но когда их число зашкалит..... мне кажется, надо заранее спроектировать всё таким образом, чтобы потом не кусать локти.

Именно поэтому сюда и пишу. Может у кого уже опыт был проектирования БД под высокую нагрузку? Какой формат выбрать (MyISAM или InnoDB)?  Репликация? Может вообще выделить одну супер мощную машину и там поднять ТОЛЬКО SQL-сервер?

Таблицы будут использоваться ОЧЕНЬ активно всеми типами запросов.
PM MAIL WWW ICQ Skype   Вверх
Kaltetod
Дата 19.10.2012, 04:04 (ссылка)    | (голосов:1) Загрузка ... Загрузка ... Быстрая цитата Цитата


Новичок



Профиль
Группа: Участник
Сообщений: 1
Регистрация: 19.10.2012

Репутация: нет
Всего: нет



Недавно проводили сравнение Mysql с mariadb. Mariadb хорошо себя показала. А если между Mysql и SQLite то естественно Mysql.  А вообще, о выборе БД  тут хорошо написано
PM MAIL   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | MySQL | Следующая тема »


 




[ Время генерации скрипта: 0.0446 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.