Большие данные - хранение и запрос

голоса
2

У нас есть огромные данные о 300 миллионов записей, которые будут обновляться каждые 3-6 months.We нужно запросить эти данные (Непрерывно, в реальном масштабе времени), чтобы получить information.What есть варианты - это СУБД (MySQL), или какой-то другой вариант, как Hadoop.Which будет лучше?

Задан 09/12/2008 в 15:30
источник пользователем
На других языках...                            


5 ответов

голоса
3

300M записи хорошо в пределах обычных реляционных баз данных и живого выполнения запросов не должно быть никаких проблем, если вы используете индексы правильно.

Hadoop звучит как излишние, если вам действительно нужны распределённые и избыточные данные, и он будет также сделать его трудно найти поддержку, если у вас возникли проблемы или оптимизация.

Ответил 09/12/2008 в 15:54
источник пользователем

голоса
1

Как другие говорили, современный СУБД может обрабатывать такие таблицы, в зависимости от запросов и схем (некоторые оптимизации должны быть сделаны). Если у вас есть хороший ключ, чтобы расколоть ряды от (например, столбца даты), то методы partioniong / шардинг помогут вам разбить таблицу на несколько маленьких.

Вы можете прочитать больше о тех , и других методах масштабирования в вопросе я спросил некоторое время назад здесь - Масштабирование решения для MySQL (репликации, кластеризация)

Ответил 09/12/2008 в 15:45
источник пользователем

голоса
1

Ну, у меня есть несколько баз данных PostgreSQL с некоторыми таблицами с более чем 700M записей и обновляются все время.

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

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

Ответил 09/12/2008 в 15:37
источник пользователем

голоса
0

300 миллионов на самом деле не считается огромным в эти дни :-).

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

Если вы постоянно appying обновление в то же время, как вы работаете запросы затем выбрать PostgreSQL, как это имеет лучшее управление параллелизмом.

MS SQLServer, Sybase, Oracle и DB2 будет все обрабатывать эти тома с легкостью, если ваша компания предпочитает тратить деньги.

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

Ответил 09/12/2008 в 15:48
источник пользователем

голоса
0

300 миллионов записей не должны вызывать никаких проблем в топовой СУБД, как Oracle, SQL Server, DB2. Я не уверен, MySql, но я уверен, что она будет использоваться для некоторых довольно больших баз данных в эти дни.

Ответил 09/12/2008 в 15:41
источник пользователем

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more