Каковы наиболее осуществимые варианты обработки набора данных n-грамм Google Books с использованием скромных ресурсов?

Мне нужно рассчитать статистику совпадения слов для примерно 10 000 целевых слов и нескольких сотен контекстных слов для каждого целевого слова из n-граммового корпуса книг Google.

Ниже ссылка на полный набор данных:

Просмотрщик Google Ngram

Как видно, размер базы данных составляет примерно 2,2 ТБ и содержит несколько сотен миллиардов строк. Для вычисления статистики совпадения слов мне нужно обработать все данные для каждой возможной пары целевого и контекстного слова. В настоящее время я рассматриваю возможность использования Hadoop с Hive для пакетной обработки данных. Каковы другие жизнеспособные варианты, учитывая, что это академический проект с временными ограничениями в семестр и ограниченной доступностью вычислительных ресурсов.

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


person anshuman    schedule 06.03.2013    source источник
comment
Некоторая форма MapReduce кажется правильным подходом.   -  person tc.    schedule 07.03.2013
comment
lintool.github.com/MapReduceAlgorithms/MapReduce-book-final.pdf должно оказаться полезным   -  person Brenden Brown    schedule 07.03.2013


Ответы (1)


Hive имеет встроенную UDF для обработки ngrams https://cwiki.apache.org/Hive/statisticsanddatamining.html#StatisticsAndDataMining-ngrams%2528%2529andcontextngrams%2528%2529%253ANgramfrequencyestimation

person cran1um    schedule 08.03.2013
comment
Я предполагаю, что это потребует написания большого количества запросов - person anshuman; 31.03.2013