Git Product home page Git Product logo

ngrams's Introduction

Hadoop Map Reduce Trigram Counter

This project implements a basic trigram counter for Hadoop MapReduce.

It implements a custom Trigram type and counts the frequency of each trigram in a text/corpus.

Modules

Trigram.java A custom trigram datatype

TrigramCount.java Map reduce program to count trigram instances in a corpus

compile.sh Simple bash script to compile java classes and create a jar (tgc.jar)

TestTrigram.java Some basic unit tests for the Trigram data type

mapper_prototype.py Python prototype of a trigram mapper

Usage

Assuming Hadoop is installed and configured properly:

Compile and Create Jar

cd to the root project directory:

javac ./*.java jar cf tgc.jar *.class

Add local text file to HDFS as input

/path/to/bin/hdfs dfs -put /path/to/local/file.txt /path/to/input

Run the Job

<path to hadoop> jar <path to local jar> <ClassName> <path to hdfs input directory> <path to hdfs output directory>

/path/to/bin/hadoop jar /path/to/local/jar/tgc.jar TrigramCount /path/to/hdfs/input /path/to/hdfs/output

Read output from HDFS

/path/to/bin/hdfs dfs -cat /path/to/output/part-r-00000

ngrams's People

Stargazers

wurentidai avatar Alisa Zhila avatar Naoimi Gillis avatar Chris Elly avatar  avatar

Watchers

Scott Crespo avatar

Forkers

liyong3forever

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.