powered by simpleCommunicator - 2.0.59     © 2025 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Сопровождение одной большой БД vs сопровождение сотен маленьких БД.
19 сообщений из 19, страница 1 из 1
Сопровождение одной большой БД vs сопровождение сотен маленьких БД.
    #39480381
Доброго времени суток.

На вопрос, который меня интересует, наверное проще было бы ответить людям, который являются DevOps т.к. они более глобально могут посмотреть на ситуацию, но т.к. основной вопрос касается БД, решил спросить у DBA


Данный вопрос большей частью состоит каким образом настроит так, что бы минимизировать совокупную стоимость владения системой (TCO) при этом сохранив масштабируемость системы.


У меня сейчас есть следующая ситуация:

Планируется запускать проект ,которую будут продавать конечным потребителям через интернет.
Проект выглядит так:
Через интернет клиент регистрируется на сайте.
После оплаты услуги в личном кабинете добавляет удаленные устройства - которые несколько раз в миниту будут писать в БД информацию.

Если данный проект "взлетит" и будет ожидаемое количество клиентов - БД будет порядка 1,5 - 2 ТБ, но понятное дело не сразу. Так же не исключено, что клиентов будет больше и соответственно БД так же будет больше.

Исходя из ситуации возник вопрос, а не проще под каждого клиента поднять небольшой сервер (в котором будет и приложение (веб-сервер) и сервер БД).


Поделитесь опытом и мнением по данной ситуации. Как по вашему мнению лучше настроить данный проект.

Из проблем, которые я вижу при единой БД это:
1. Предположительно большую часть времени нагрузка на СХД будет "запись". В меньшей степени чтение.
2. Монолитная БД - все данные лежат в одном месте, а это значит что если будут возникать проблемы - они будут возникать сразу у всех клиентов одновременно.
3. Проблема обслуживания БД (перестроение индексов, резервное копирование) - будет занимать очень много времени, что не есть хорошо.
4. Проблема масштабируемости - здесь я могу ошибаться, но на текущий момент поддержка множества виртуалок кажется более привлекательным вариантом чем настройка и обслуживание кластера MySQL с балансировкой нагрузки.


PS: В MySQL я новичек по этому если в каких-то предложенных решениях необходимо будет приобретать платное ПО прошу уточнять этот момент.



Немного о себе:


Мне MySQL не доводилось администрировать. Это будет первый опыт. Так сказать проверка боем.
5 лет DBA MS SQL (админил базы до 1 ТБ). По этому представление о прооблемах, которые могут возникнут у меня есть. Опыт построение различных схем HA и load balancig так же есть, но опять же на MS SQL.

С недавних пор переквалифицировался с DBA на программиста - по этому приходится решать вот такие интересные задачи.
...
Рейтинг: 0 / 0
Сопровождение одной большой БД vs сопровождение сотен маленьких БД.
    #39480402
Фотография Akina
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Тогда уж ещё рассмотрите промежуточный вариант - несколько виртуальных систем, в каждой из которых несколько клиентов.
...
Рейтинг: 0 / 0
Сопровождение одной большой БД vs сопровождение сотен маленьких БД.
    #39480403
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Головченко АртемДоброго времени суток.

На вопрос, который меня интересует, наверное проще было бы ответить людям, который являются DevOps т.к. они более глобально могут посмотреть на ситуацию, но т.к. основной вопрос касается БД, решил спросить у DBA


А DBA -- это DevOps или не?
...
Рейтинг: 0 / 0
Сопровождение одной большой БД vs сопровождение сотен маленьких БД.
    #39480411
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Головченко Артем
Если данный проект "взлетит" и будет ожидаемое количество клиентов - БД будет порядка 1,5 - 2 ТБ, но понятное дело не сразу. Так же не исключено, что клиентов будет больше и соответственно БД так же будет больше.



Сразу на 10-100 дели то, что манагеры нафантазировали...


Исходя из ситуации возник вопрос, а не проще под каждого клиента поднять небольшой сервер (в котором будет и приложение (веб-сервер) и сервер БД).

Головченко АртемПоделитесь опытом и мнением по данной ситуации. Как по вашему мнению лучше настроить данный проект.

Из проблем, которые я вижу при единой БД это:
1. Предположительно большую часть времени нагрузка на СХД будет "запись". В меньшей степени чтение.
2. Монолитная БД - все данные лежат в одном месте, а это значит что если будут возникать проблемы - они будут возникать сразу у всех клиентов одновременно.
3. Проблема обслуживания БД (перестроение индексов, резервное копирование) - будет занимать очень много времени, что не есть хорошо.
4. Проблема масштабируемости - здесь я могу ошибаться, но на текущий момент поддержка множества виртуалок кажется более привлекательным вариантом чем настройка и обслуживание кластера MySQL с балансировкой нагрузки.


Монолитную БД делай, и всё. 80%, что у вас ничего не взлетит.
Поэтому без репликации, кластеров и прочее.

Головченко АртемМне MySQL не доводилось администрировать. Это будет первый опыт. Так сказать проверка боем.
5 лет DBA MS SQL (админил базы до 1 ТБ). По этому представление о прооблемах, которые могут возникнут у меня есть. Опыт построение различных схем HA и load balancig так же есть, но опять же на MS SQL.


Не, ни фига ты не представляешь. MySQL -- это говноСУБД, у неё вообще другие подходы при обращении с данными.
Так что будь готов. Да, бекапы каждый день, в 3-5 экземплярах...
Ну и всё такое.

Ну и лучше если новый проект делать сразу на хорошей СУБД (Postgres имею в виду), всё равно ты ни того, ни другого не знаешь.
...
Рейтинг: 0 / 0
Сопровождение одной большой БД vs сопровождение сотен маленьких БД.
    #39480459
MasterZivГоловченко АртемДоброго времени суток.

На вопрос, который меня интересует, наверное проще было бы ответить людям, который являются DevOps т.к. они более глобально могут посмотреть на ситуацию, но т.к. основной вопрос касается БД, решил спросить у DBA


А DBA -- это DevOps или не?

По поводу кто же такой DevOps есть много мнений =)). В данном случае я имел ввиду full stack developer т.е. тот кто сопровождает ПО на всем жизненном цикле.
...
Рейтинг: 0 / 0
Сопровождение одной большой БД vs сопровождение сотен маленьких БД.
    #39480618
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Головченко Артем5 лет DBA MS SQL (админил базы до 1 ТБ)Тогда крайне не рекомендую MySQL.
Разочарование будет огромным.
...
Рейтинг: 0 / 0
Сопровождение одной большой БД vs сопровождение сотен маленьких БД.
    #39481277
miksoftГоловченко Артем5 лет DBA MS SQL (админил базы до 1 ТБ)Тогда крайне не рекомендую MySQL.
Разочарование будет огромным.

1.А можно в двух словах о том, что будет причиной разочарования ?
2. Из бесплатный альтернатив что-то можете посоветовать ? PostgreSQL?
...
Рейтинг: 0 / 0
Сопровождение одной большой БД vs сопровождение сотен маленьких БД.
    #39481376
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Головченко Артем1.А можно в двух словах о том, что будет причиной разочарования ?Бедность SQL-возможностей, бедность инфраструктуры (нет номрального бэкапа, нельзя в качестве внешнего источника данных испольховать что-либо кроме MySQL и т.д.).
...
Рейтинг: 0 / 0
Сопровождение одной большой БД vs сопровождение сотен маленьких БД.
    #39481378
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Головченко Артем2. Из бесплатный альтернатив что-то можете посоветовать ? PostgreSQL?Вполне возможно, что по итоговой стоимости владения хорошо известный MS SQL окажется дешевле бесплатного PostgreSQL.
...
Рейтинг: 0 / 0
Сопровождение одной большой БД vs сопровождение сотен маленьких БД.
    #39481386
Фотография javajdbc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Головченко Артем,

...mysql пользуются все и вся...несколько клиентов по
несколько раз в минуту -- нагрузка "ни о чем"...
тем более в первые года стартапа -- клиентов будет кот наплакал...
...если уж вам повезет и найдется тысяци клиентов, тогда и будете
серьезно думать...

...вообше вопрос надо ставить шире -- какой стак выбирать, например:
linux, mysql, ruby-on-rail/php
windows c# mssql-express/sql server
HPUX, oracle-APEX
...локально или в клауде...
...опятьже, какие знания есть/нет в команде, кто платит и какую музыку закзывают...


...а mysql против msss (|express) или db2 (|express) или oracle (|xe)
-- совершено без разницы до обьемов неближайшего будушего...
...
Рейтинг: 0 / 0
Сопровождение одной большой БД vs сопровождение сотен маленьких БД.
    #39481463
javajdbcГоловченко Артем,

...mysql пользуются все и вся...несколько клиентов по
несколько раз в минуту -- нагрузка "ни о чем"...
тем более в первые года стартапа -- клиентов будет кот наплакал...
...если уж вам повезет и найдется тысяци клиентов, тогда и будете
серьезно думать...

...вообше вопрос надо ставить шире -- какой стак выбирать, например:
linux, mysql, ruby-on-rail/php
windows c# mssql-express/sql server
HPUX, oracle-APEX
...локально или в клауде...
...опятьже, какие знания есть/нет в команде, кто платит и какую музыку закзывают...


...а mysql против msss (|express) или db2 (|express) или oracle (|xe)
-- совершено без разницы до обьемов неближайшего будушего...

На текущий момент все это добро буду сопровождать только Я.
Планируется запускать в облаке (где именно пока не решили).
Свзяка будет:
OS: Linux (быстрее всего Ubuntu или Debian)
Application Server: Apache Tomcat
Язык программирования: Java + JS (на фронтенде)

По факту что и на чем будет крутиться тоже решаю я. по этому и прошу консультации у более опытных коллег, что бы изначально двигаться в правильном направлении.
...
Рейтинг: 0 / 0
Сопровождение одной большой БД vs сопровождение сотен маленьких БД.
    #39481644
вадя
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Головченко АртемOS: Linux (быстрее всего Ubuntu или Debian)
Application Server: Apache Tomcat
Язык программирования: Java + JS (на фронтенде)прекрасно работает данная комбинация, если оостановишься на mysql - то надо ставить не из репозитория, с сайта производителя , 5.7.хх(на данный момент)
для обслуживания mysql - dbForge for mysql. и возможность делать бэкап, и переносить структуру/данные с сервера на сервер.
...
Рейтинг: 0 / 0
Сопровождение одной большой БД vs сопровождение сотен маленьких БД.
    #39481782
Фотография javajdbc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Головченко Артем,

Linux, Debian, mysql, Apache, Tomcat, Java, JS --
ну вполне рабочий вариант...

...лично я бы делал на:
Linux ( CentOS server, Fedora workstation), Apache server,
Ruby-on-Rails, JS, MySQL
...
Рейтинг: 0 / 0
Сопровождение одной большой БД vs сопровождение сотен маленьких БД.
    #39482013
Фотография ScareCrow
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
автор(нет номрального бэкапа, нельзя в качестве внешнего источника данных испольховать что-либо кроме MySQL и т.д.).

вы не поверите!
...
Рейтинг: 0 / 0
Сопровождение одной большой БД vs сопровождение сотен маленьких БД.
    #39482296
ScareCrowавтор(нет номрального бэкапа, нельзя в качестве внешнего источника данных испольховать что-либо кроме MySQL и т.д.).

вы не поверите!

А можно подробнее по поводу "вы не поверите"?

По поводу бэкапов - это первое что меня удивило в MySQL, но когда начали искать по данному вопросу находил информацию, что вроде как Percona XtraBackup решает данный вопрос. По крайней мере лучше чем утилиты "из коробки". Правда никаких сравнений (по времени и объемам) не находил.
...
Рейтинг: 0 / 0
Сопровождение одной большой БД vs сопровождение сотен маленьких БД.
    #39482422
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Головченко АртемScareCrowпропущено...


вы не поверите!

А можно подробнее по поводу "вы не поверите"?

По поводу бэкапов - это первое что меня удивило в MySQL,

Нормального бэкапа для баз MySQL действительно нет.
То, что есть -- это ненормальный бекап.
Нормального восстановления бекапов также нет.
Нормальной загрузки данных также нет.
...
Рейтинг: 0 / 0
Сопровождение одной большой БД vs сопровождение сотен маленьких БД.
    #39482427
Фотография MasterZiv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Загрузки в таблицы без индексов -- НЕТ.
...
...
Рейтинг: 0 / 0
Сопровождение одной большой БД vs сопровождение сотен маленьких БД.
    #39482724
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZiv...
Загрузки в таблицы без индексов -- НЕТ.
...А вот тут уже я не понял. При чем тут индексы?
...
Рейтинг: 0 / 0
Сопровождение одной большой БД vs сопровождение сотен маленьких БД.
    #39482733
Фотография javajdbc
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
MasterZivГоловченко Артемпропущено...


А можно подробнее по поводу "вы не поверите"?

По поводу бэкапов - это первое что меня удивило в MySQL,

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

Как в старом анекдоте:

...весь город устраивает, а его , видишь ли, нет... :-)
...
Рейтинг: 0 / 0
19 сообщений из 19, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / Сопровождение одной большой БД vs сопровождение сотен маленьких БД.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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