AndreyKl
Новичок
Как разбить базу?
В чём собственно вопрос: рано или поздно дискового места на сервере для базы данных начнёт нехватать. Каким образом разбивать базу данных?
Слышал, что у yahoo например, есть база (postgres) размером больше петабайта. Как они её хранят?
Может ли кто посоветовать что почитать-полистать по этому поводу?
Вопрос более подробно
Есть приложение (хостинг картинок с небольшими возможностями общения). Сейчас картинки хранятся на серверах на дисках в виде файлов. Как я себе вижу ситуацию - хранение в базе обладает некоторыми преимуществами, а именно, к примеру:
1. для того, чтобы удалять файлы сейчас приходится ставить картинке специальное состояние в базе "ожидаетУдаления". И на конкретном сервере запускать раз в минуту по крону скрипт по который удаляет с диска файлы (WHERE idServer='currentId' AND state='waitingForRemove).
2. Сейчас невозможно как либо просто сделать картинку аватаром, поскольку сервера для хранения аватара и картинки могут не совпадать.. надо либо по nfs монтировать, либо по http забирать.. в общем много телодвижений нужно. А если файлы были бы в базе - это организовывалось бы достаточно легко.
Ну и много по мелочи проблем дополнительных, которые решились бы хранением картинок в базе.
По этому решил перенести файлы в базу данных. Однако пугает то, что места мне на дисках одного сервера рано или поздно не хватит. Поэтому возникает вопрос, который озвучен выше.
В чём собственно вопрос: рано или поздно дискового места на сервере для базы данных начнёт нехватать. Каким образом разбивать базу данных?
Слышал, что у yahoo например, есть база (postgres) размером больше петабайта. Как они её хранят?
Может ли кто посоветовать что почитать-полистать по этому поводу?
Вопрос более подробно
Есть приложение (хостинг картинок с небольшими возможностями общения). Сейчас картинки хранятся на серверах на дисках в виде файлов. Как я себе вижу ситуацию - хранение в базе обладает некоторыми преимуществами, а именно, к примеру:
1. для того, чтобы удалять файлы сейчас приходится ставить картинке специальное состояние в базе "ожидаетУдаления". И на конкретном сервере запускать раз в минуту по крону скрипт по который удаляет с диска файлы (WHERE idServer='currentId' AND state='waitingForRemove).
2. Сейчас невозможно как либо просто сделать картинку аватаром, поскольку сервера для хранения аватара и картинки могут не совпадать.. надо либо по nfs монтировать, либо по http забирать.. в общем много телодвижений нужно. А если файлы были бы в базе - это организовывалось бы достаточно легко.
Ну и много по мелочи проблем дополнительных, которые решились бы хранением картинок в базе.
По этому решил перенести файлы в базу данных. Однако пугает то, что места мне на дисках одного сервера рано или поздно не хватит. Поэтому возникает вопрос, который озвучен выше.