Jump to content
  • 0

Как хранить большие объёмы информации?


virus-07
 Share

Question

Собственно, для меня является очевидным, что, к примеру, если на сайте будут большие объёмы информации, то их надо как-то хранить. Например, статьи. БД для этого не подойдёт. Следует использовать xml?

Если не затруднит, напишите вкратце теорию и практику, хотя бы схематично, хранения и использования информации.

Заранее большое спасибо.

P.S. с этим вопросом яндекс мне не помог. спорить не буду, может мои запросы были кривые.

Link to comment
Share on other sites

14 answers to this question

Recommended Posts

  • 0

Что значит большой? больше 5 мегабайт чистого текста статьи? Если да то безусловно консервируете архиватором и делаете на сайте списками архив статей, ибо страницы даже если не касаться проблем с хранение более 5 мб это уже не здорово... Если же меньше то проблем в принципе нету, тут возникает другой вопрос насколько большая таблица будет? У меня вот был средненький сервер и он реально стал лагать когда в базе было за 1.3кк строк с текстами однако и это удалось обойти рядом настроек и в последствии новым сервером...

Link to comment
Share on other sites

  • 0

Какие файлы? Вы о чем? Как вы будете индексировать, оптимизировать, делать выборки, править и искать по плоским файлам? Текст нужно хранить в БД (5мб на статью это копейки), современные БД могут обрабатывать колосальные объемы информации, не будет хватать MySQL переходите на Oracle, не хватает одной БД переходите на кластер. Для картинок и видео полно CDN сетей, для начала вам хватит место на бесплатном Google CDN, потом Amazon S3, Akamai, CacheFly etc.

Link to comment
Share on other sites

  • 0
Какие файлы? Вы о чем? Как вы будете индексировать, оптимизировать, делать выборки, править и искать по плоским файлам?

точно так же как и в бд. файлы работают быстрее чем mysql... тот же postgresql быстрее будет.

Link to comment
Share on other sites

  • 0
точно так же как и в бд. файлы работают быстрее чем mysql... тот же postgresql быстрее будет.

1. Привидите пример индекса по плоскому файлу, а потом пример того как он может быть быстрее индекса реляционной СУБД

2. PostgreSQL это СУБД такая же как и MySQL, быстрее она или нет понятие субъективное. К чему вы её тут привели вообще не понятно. Я тоже много красивых слов знаю и поэтому Cassandra быстрее Oracle :) а MongoDB так вообще всех порвет.

Edited by arez
Link to comment
Share on other sites

  • 0
1. Привидите пример индекса по плоскому файлу, а потом пример того как он может быть быстрее индекса реляционной СУБД

2. PostgreSQL это СУБД такая же как и MySQL, быстрее она или нет понятие субъективное. К чему вы её тут привели вообще не понятно. Я тоже много красивых слов знаю и поэтому Cassandra быстрее Oracle :) а MongoDB так вообще всех порвет.

1) некогда мне тут примерами раскидываться когда люди уже все написали за меня.

2) хоть mysql, хоть postgresql - хранят инфу в файлах.

З.Ы. для данного случая ТС не уточнил на сколько большие объемы инфы будут, для каждого эти понятия разные. а по поводу того что будет быстрее работать, так это еще ведь зависит от того каким подходом ты воспользуешься и какое изначальное тз, ведь при написании запросов их еще можно и оптимизировать, а если еще и кэшированием воспользоваться, так это ж вообще лепота! тут конечно mysql будет рулевым.

Edited by rus
Link to comment
Share on other sites

  • 0
1) некогда мне тут примерами раскидываться когда люди уже все написали за меня.

"Вывод из сравнения можно сделать такой: без учета времени на открытие файла/соединение с БД, поиск средствами php по данным, находящимся в оперативной памяти, осуществляется в среднем в два раза быстрее, чем средствами MySQL по данным, находящимся в БД."

Ага, только "Без учета и средствами php", еще там тестируется просто поиск. Ну да ладно это все не важно.

2) хоть mysql, хоть postgresql - хранят инфу в файлах.

Ну в общем то хранить больше негде :P в конечном итоге вопрос лишь заключается в том на сколько ваш алгоритм доступа будет быстрее и универсальние чем тот что уже написан до вас :) В любом случаи не думаю что автор топика способен написать алгоритм доступа лучше чем это сделали разработчики какой нибудь СУБД.

Link to comment
Share on other sites

  • 0

Что-то сомневаюсь, что так сильно можно ужать музыкальные файлы, в том же mp3 уже сжатие применяется, при сжатии копейки выиграешь разве что. Можно конечно битрейт уменьшить и моно поставить, но это же ё-моё.

Link to comment
Share on other sites

  • 0

Признаться, не ожидал такой активности. Очень удивлён. В первую очередь хочу поблагодарить всех отписавшихся: спасибо что не поленились расписать что-как.

Вообще не планировал сильно большие объёмы, в пределах 5-10мб. Знания о св-вах бд лишь поверхностные. Не думал, что они подойдут для хранения таких объёмов.

А как обстоит дело с разделением информации на разные БД? В каких случаях имеет смысл заводить несколько баз и сильно ли усложняется процесс обслуживания?

Edited by virus-07
Link to comment
Share on other sites

  • 0

Тот же MySQL может спокойно хранить несколько мегабайт в записи, это для него вполне по плечу. PostgreSQL посерьезнее будет, есть примеры хранения петабайт в этой БД. Так что мне кажется надо использовать именно БД, а уж какую решать по имеющейся информации.

Link to comment
Share on other sites

  • 0
А как обстоит дело с разделением информации на разные БД? В каких случаях имеет смысл заводить несколько баз и сильно ли усложняется процесс обслуживания?

В тех случаях когда на исполнение одного запроса к БД тратится большая часть серверного времени.

В большинстве случаев вообще не затрагивает вас, что кластер из нескольких БД что одна БД это единый объект, для вашего приложения все прозрачно. Сейчас технологии облачных вычислений позволяют конечному пользователю просто писать приложение и задумываться о его ресурсах только когда деньги в кошельке кончаются. :)

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

 Share

×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. See more about our Guidelines and Privacy Policy