2015-02-11 2 views
0

В настоящее время я работаю над решением для моей стажировки, чтобы обрабатывать до 100.000.000 записей в день с примерно 10 столбцами. Я должен сохранить каждую запись, и через 15 дней у нас есть около 1.500.000.000 записей.Для Hadoop: какое хранилище данных?

Ситуация: Таким образом, каждый день я получаю около 100.000.000 (может быть, несколько миллионов больше) записей, с этими записями, которые я должен сделать некоторые расчеты/анализировать. Для этого я собираюсь использовать Hadoop для MapReduce и распределенных вычислений. С шаблоном MapReduce я могу создавать наборы по 100 000 записей и распределять их по кластеру для выполнения распределенных анализов/вычислений.

Я не знаю, является ли это хорошим решением, но если у вас есть что-то еще, подумать, пожалуйста, скажите мне.

Помимо этого, я также должен хранить все эти записи и использовать их каждый месяц, чтобы улучшить алгоритм для вычислений, которые я делаю каждый день. Какой магазин лучше всего подходит для этой ситуации? Я думаю о HBase или CouchDB, потому что я думаю, что они хорошо соответствуют моим требованиям.

ответ

0

На самом деле, Hadoop не является базой данных. Hadoop - это структура, которая позволяет распределенную обработку больших наборов данных через кластеры товарных серверов. Он рассчитан на масштабирование от одного сервера до тысяч машин с очень высокой степенью отказоустойчивости. Hadoop наиболее известен MapReduce и его распределенной файловой системой (HDFS)

Hbase - это распределенная, ориентированная на столбцы база данных. Hbase использует HDFS для своего основного хранилища и поддерживает как пакетные вычисления с использованием MapReduce, так и точечных запросов.

Улей - это распределенный склад данных. Hive управляет данными, хранящимися в HDFS, и предоставляет язык запросов на основе SQL (и который переводится механизмом времени выполнения на задания MapReduce) для создания привязки данных.

** Что вы можете сделать, это: использованием Hbase для хранения

использованием улей для аналитики

вы также integrate как и может использовать улей запросы (на основе SQL) для хранения в HBase.

+0

Привет, Йоср, вы правы насчет Hadoop, это не база данных. Я исправил это в своем вопросе сейчас. Спасибо за ответ. Я сделаю еще несколько исследований. Если у меня будет решение, какое решение я буду использовать, я обязательно скажу вам. Спасибо :) – Sander

+0

Добро пожаловать, и если вы хотите узнать больше о Hadoop, вы должны начать с чтения «Hadoop окончательного руководства 3-го издания» –

+0

Спасибо за ваш совет, я сделаю это. :) – Sander