Skip to content

jerryy33/UHH.Praktikum2021.MapReduce

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

51 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Hashtag Analysis

Using Map-Reduce this Project is analysing Hashtags from Twitter. See here for the Frontend and here for Javadocs

Table of contents

General info

English:

Since hashtags have been introduced they are a key factor for social media platforms such as Twitter. Hashtags are used as keywords, many users use hashtags to describe their tweet in one short description. This categorizes tweets and tweets can be found faster because of that. User than can search for hashtags to find all tweets who are using the specified hashtag. Every person with a socialmedia profile can create a hashtag, over time a lot of hashtags have been created, some more popular than others. Many of them don't have a clear meaning at first look, the reason for this is that hashtags are mostly used as abbreviations (e.g. blm stands for BlackLivesMatter).

This project handles this problem and tries to visualize(see Frontend for more info) the meaning and context of different hashtags. Based on tweets of the year 2020 we show all words which are mostly used with a specific hashtag. We also show in which time period during 2020 hashtags were used intensely and not so intensly. We only include tweets whose language is regarded (by Twitter) as English, Spanish or German.

Visit Demo to try it yourself.

German:

Seit Ihrer Einführung sind Hashtags zu einem wichtigen Bestandteil, der weltweiten Social-Media-Plattform geworden und befinden sich heutzutage in fast allen Beiträgen des Mikroblogging-Dienstes Twitter, genauso wie auch in anderen sozialen Netzwerken. Dort dienen sie nämlich als Schlagwörter. Wer zu einem bestimmten Thema etwas postet, kann dafür sorgen, dass sein Beitrag schneller gefunden werden kann, indem er zusätzlich ein passendes Hashtag zu seinem Beitrag hinzufügt, welches diesen inhaltlich beschreibt. Sucht man dann nach den Hashtags, für die man sich interessiert, findet man alle Beiträge, die zusammen mit diesem Schlagwort verfasst wurden. Jede Person, die auf einem sozialen Netzwerk wie Twitter oder Instagram angemeldet ist, kann ein Hashtag erstellen und ihn so benennen, wie Sie es möchte. So kann es passieren, dass mit der Zeit Hashtags entstehen, deren Bedeutung nicht wirklich eindeutig sind.

Genau mit dieser Problematik setzt sich dieses Projekt auseinander. Basierend auf Tweets aus dem Jahr 2020 liefern wir Ihnen alle Wörter, die in Verbindung mit den meist eingesetzten Hashtags aus diesem Zeitraum aufgetaucht sind. Dadurch soll die Bedeutung von den Hashtags, anhand der Wörtern zu identifiziert werden, mit denen sie am öftesten erschienen sind. Somit können Sie auf einen der Hashtags klicken und es werden Ihnen die Wörter aufgelistet, die in dem Zeitraum prozentual am häufigsten in Verbindung mit dem Hashtag aufgetaucht sind. Auf unser Website kann dies auprobiert werden Demo.

Screenshots

To get a overview what this part of the project generates:

Output Job1:

Job1

Output Job2:

Job2

Output Job3:

Job3

Technologies

Setup

First you need to scrape data from Twitter, so you can execute map-reduce on this data, you can find more on this on the Twitter Api. Using Hadoop this Project can be executed to get the necessary data. Open the project in any IDE and build the project using Maven, make sure you have all the correct versions installed (see Technologies). Executing the maven lifecycle should give you a jar file which you can use to execute map-reduce on your data via hadoop. For example you can use the command: hadoop jar yourJar path/to/your/data outputFolder. This is going to execute all 3 Jobs automatically for you, mak sure you don't loose connection to the server otherwise only the first Job will come through. Screen is very useful for this.

Status

Project is finished

Inspiration

https://github.com/basecamp-uhh/Java-MapReduce

Contact

jeremy.herbst@studium.uni-hamburg.de

Releases

No releases published

Packages

No packages published

Languages

  • Java 100.0%