빅데이터

데이터 과학자처럼 생각하기

Created by 이영석 (http://yslee.cs-cnu.org)

@yslee1225 (yslee@cs-cnu.org)

데이터가 중요한가요?

“More data usually beats better algorithms.” by Anand Rajaraman

빅데이터 문제는 어떤 것인가요?

  • 전세계 웹 페이지에서 원하는 웹페이지 검색해서 찾기
  • 검색엔진의 키워드로 독감 유행 예측하기
  • 트위터를 보고 선거 여론조사하기
  • 10 TB 텍스트 파일 정렬하기

100 TB 정렬을 빠르게 하기

  • 무슨 알고리즘을 쓸까?
  • 현실적인 문제: 100 TB 저장 ? 메모리 ? ...

데이터 단위를 살펴봅시다.

1 Terabyte (TB) = ? GB

1 Petabyte (PB) = ? TB

1 Exabyte (EB) = ? PB

Zetta, Yotta, ...

빅데이터 기술을 가진 회사는 ?

Google, Facebook, Amazon, MS, Netflix, Walmart, eBay, ...

Alibaba, Baidu, ...

빅데이터 핵심 기술은 ?

  1. 분석알고리즘: 추천, 예측 (Machine Learning)
  2. SW플랫폼: 분산컴퓨팅 SW (MapReduce, Hadoop, Spark, ...)
  3. 분석알고리즘+SW 플랫폼 -> 문제해결

Example: Web Search

Example: Recommendation

Facebook's EdgeRank

Example: Prediction

Big Data by Definition

“ Data sets whose size is beyond the ability of commonly used software tools to capture, manage, and process the data within a tolerable elapsed time. ”

Characteristics of Big Data

  • Volume
  • Velocity
  • Variety

Architecture of Big Data

  1. In 2004, Google's MapReduce
  2. In 2006, Doug Cutting's Hadoop
  3. In 2009, Matei Zaharia's Spark

Big Data Echosystem

Hadoop

  • Open-source framework for running applications on large clusters built of commodity hardware
  • Implementation of MapReduce and HDFS

Google Trends

Apache Hadoop

  • MapReduce: a distributed data processing model and execution environmnet that runs on large clusters of commodity machines
  • HDFS: a distributed filesystem that runs of large clusters of commodity machines

MapReduce

MapReduce: Code


function map(String name, String document):
  // name: document name
  // document: document contents
  for each word w in document:
    emit (w, 1)

function reduce(String word, Iterator partialCounts):
  // word: a word
  // partialCounts: a list of aggregated partial counts
  sum = 0
  for each pc in partialCounts:
    sum += pc
  emit (word, sum)

					

Melon

Gruter TECHDAY 2014 MelOn BigData from Gruter

R and others

Big data analysis with R and Apache Tajo (in Korean) from Gruter

Amazon

AWSKRUG 콘퍼런스 - re:Invent 신규 서비스 (윤석찬) - 빅데이터 분석, 모바일 및 IoT를 중심으로 from AWS Korea UserGroup (AWS한국사용자모임)

NCsoft

R을 이용한 게임 데이터 분석 from Eun-Jo Lee

5Rocks

244 5rocks-deview from NAVER D2

DNLAB

Net flowhadoop flocon2013_yhlee_final from Yeounhee Lee

DNLAB's News

Github P3 project

Quantified Self

  • 자신을 측정하여 삶의 개선하려는 운동
  • 핵심은 자동 수집 및 분석
  • 예) Fitbit, Rescuetime, Coachme.com, Hellodatascience.com

Graph of My Fitness

WordCloud

Data Mind

Polar chart by Florence Nightingale, 1858
By w:Florence Nightingale (1820?1910). - http://www.royal.gov.uk/output/Page3943.asp, Public Domain, https://commons.wikimedia.org/w/index.php?curid=1474443

Data Mind

Interested in Big Data ?

  • 데이터과학: 컴퓨터공학 + 통계학 (데이터마이닝, 머신러닝, 딥러닝)
  • 데이터과학은 문제를 해결하는 도구: Small data부터 시작 (LAMP)
  • Hadoop/Hive/Spark + Python scikit + R + Tensorflow ... (SMAQ)
  • Git, JIRA, Jenkins, Slack, Trello, JUnit, Selenium, ...
  • 컴퓨터공학 기반을 갖춘 데이터과학자가 됩시다 !