λͺ©λ‘μŠ€ν„°λ””/Data Analytics (8)

Study Anything 🧐

데이터 뢄석 ν”„λ ˆμž„μ›Œν¬ - AARRR (ν•΄μ μ§€ν‘œ)

AARRR 기법은 그둜슀 ν•΄ν‚Ή(Growth Hacking) 의 뢄석 기법이닀. 그둜슀 해킹은 κΈ°μ—…μ˜ μ„±μž₯을 μ΅œμš°μ„ μœΌλ‘œ ν•˜λ©°, μ‚¬μš©μžμ˜ 데이터λ₯Ό 뢄석해 μ„œλΉ„μŠ€λ₯Ό κ°œμ„ ν•˜λŠ” 데에 ν™œμš©ν•˜κΈ° λ•Œλ¬Έμ— 이런 이름이 λΆ™κ²Œ λ˜μ—ˆλ‹€. λ‹€μ„― λ‹¨μ–΄μ˜ μ•ž κΈ€μžλ₯Ό λ•„μœΌλ©° 각각 Acquisition(νšλ“), Activation(ν™œλ™), Retention(재방문), Referral(곡유), Revenue(수읡) 이닀. μ‚¬μš©μžκ°€ μ„œλΉ„μŠ€λ₯Ό ν™œμš©ν•˜λ©΄μ„œ μˆ˜μ§‘λ˜λŠ” μ—¬λŸ¬ 데이터 쀑 μœ„ λ‹€μ„―κ°€μ§€μ˜ μ§€ν‘œλ₯Ό ν•΅μ‹¬μœΌλ‘œ μ„œλΉ„μŠ€μ˜ μ„±μž₯에 ν™œμš©ν•œλ‹€. λ‹€μ„― 개의 μ§€ν‘œλ₯Ό 순차적으둜 λΆ„μ„ν•˜λŠ” 것이 μ•„λ‹ˆλΌ ν•¨κ»˜ 뢄석해야 ν•œλ‹€. (1) Acquisition νšλ“ λ‹¨κ³„μ—μ„œλŠ” μ†ŒλΉ„μžκ°€ μ„œλΉ„μŠ€λ₯Ό μ–΄λ–»κ²Œ μ•Œκ²Œ λ˜μ—ˆλŠ”μ§€, μ–΄λ–€ 경둜둜 μœ μž…λ˜μ—ˆλŠ”μ§€ 등을 λΆ„μ„ν•œλ‹€. DAU, ..

[Hadoop] λ§΅λ¦¬λ“€μŠ€ - λΆ„μ‚° 데이터 처리 ν”„λ ˆμž„μ›Œν¬

쒋은 λΆ„μ‚° μ‹œμŠ€ν…œμ„ κ΅¬μΆ•ν•˜κΈ° μœ„ν•΄μ„œλŠ” 효율적인 μž…μΆœλ ₯도 μ€‘μš”ν•˜μ§€λ§Œ μ΄κ²ƒλ§ŒμœΌλ‘œλŠ” μΆ©λΆ„ν•˜μ§€ μ•Šλ‹€. YARN은 ν΄λŸ¬μŠ€ν„°μ— 계산을 λΆ„μ‚°ν•˜κ³  HDFS에 λ³΄κ΄€λœ 데이터λ₯Ό ν™•μž₯ κ°€λŠ₯ν•˜λ„λ‘ μ²˜λ¦¬ν•˜λŠ” 방법을 μΆ”μƒν™”ν•΄μ„œ μ œκ³΅ν•˜λŠ” 것 뿐이닀. λ”°λΌμ„œ 계산을 ν‘œν˜„ν•˜λŠ” 방법이 μ€‘μš”ν•œλ°, ν•˜λ‘‘μ΄ κ°€μž₯ 처음 μ§€μ›ν•œ 데이터 처리 λͺ¨λΈμ€ λ§΅λ¦¬λ“€μŠ€μ΄λ‹€. λ§΅λ¦¬λ“€μŠ€λŠ” ꡬ글이 λ°œν‘œν–ˆκ³  λ§Žμ€ 문제λ₯Ό ν•΄κ²°ν•  수 있으며 λ‹¨μˆœν•œ λͺ¨λΈμ— κΈ°λ°˜μ„ λ‘”λ‹€. 덕뢄에 λΆ„μ‚° μ‹œμŠ€ν…œμ„ 잘 λͺ°λΌλ„ 인프라 ꡬ좕을 κ³ λ―Όν•˜μ§€ μ•Šκ³  λ§΅λ¦¬λ“€μŠ€λ₯Ό 톡해 문제λ₯Ό ν•΄κ²°ν•  수 μžˆλ‹€. λ§΅λ¦¬λ“€μŠ€λŠ” 병렬 처리 λͺ¨λΈμ΄κ³  문제λ₯Ό 맡 단계, μ…”ν”Œ 단계, λ¦¬λ“€μŠ€ λ‹¨κ³„λ‘œ λ‚˜λˆ μ„œ μˆ˜ν–‰ν•œλ‹€. HDFS의 데이터 지역성과 YARN의 μž‘μ—… 및 λ¦¬μ†ŒμŠ€ 관리 κΈ°λŠ₯이 이 μ„Έ 단계 계산이 νš¨μœ¨μ μ΄λ„λ‘ λ•λŠ”λ‹€. ..

[PySpark] μ₯¬ν”Όν„° λ…ΈνŠΈλΆμœΌλ‘œ PySpark μ‚¬μš©ν•˜κΈ°

μ €λ²ˆ ν¬μŠ€νŠΈμ—μ„œλŠ” windows10 에 슀파크λ₯Ό μ„€μΉ˜ν•΄λ³΄μ•˜λ‹€. λ‹€λ§Œ cmd μ°½μ—μ„œ λͺ¨λ“  μž‘μ—…μ„ μ§„ν–‰ν•˜κΈ°μ—λŠ” λΆˆνŽΈν•¨μ΄ μžˆμ–΄μ„œ (μž‘μ—… λͺ…λ Ήμ–΄ λ“± λ‚΄μš© μ €μž₯에 뢈편) μ•žμœΌλ‘œλŠ” μ₯¬ν”Όν„° λ…ΈνŠΈλΆμœΌλ‘œ μž‘μ—…ν•˜κΈ° μœ„ν•΄ μž‘μ—…ν™˜κ²½μ„ μ„ΈνŒ…ν•˜κ³  ν…ŒμŠ€νŠΈλ‘œ 데이터λ₯Ό λΆˆλŸ¬μ™€λ³΄μ•˜λ‹€. μ₯¬ν”Όν„° λ…ΈνŠΈλΆκ³Ό μ•„λ‚˜μ½˜λ‹€λŠ” 이미 μ„€μΉ˜λ˜μ–΄ μžˆλ‹€κ³  κ°€μ •ν•œλ‹€. 데이터λ₯Ό μ €μž₯ν•˜κ³  κ΄€λ¦¬ν•˜κΈ° μœ„ν•΄ ν•˜λ‘‘μ„ ν•¨κ»˜ μ‚¬μš©ν•œλ‹€. (ν•˜λ‘‘ μ„€μΉ˜ 방법은 이전 포슀트 μ°Έκ³ ) 즉, 이번 ν¬μŠ€νŠΈμ—μ„œ λ‹€λ£¨λŠ” λ‚΄μš©μ€ μŠ€νŒŒν¬μ™€ ν•˜λ‘‘μ„ μ—°κ²°ν•˜λŠ” λ‚΄μš©μ΄λΌκ³  λ³Ό 수 μžˆκ² λ‹€. (1) ν•˜λ‘‘ μ‹€ν–‰ cmd 창을 μ—΄μ–΄ ν•˜λ‘‘ μ„€μΉ˜νŒŒμΌμ΄ μžˆλŠ” λ””λ ‰ν† λ¦¬λ‘œ μ΄λ™ν•˜κ³  λ‹€μŒ λͺ…령어듀을 μ°¨λ‘€λ‘œ μ‹€ν–‰ν•œλ‹€. 이 λ•Œ 'hdfs namenode -format' λͺ…령은 ν•  λ•Œλ§ˆλ‹€ μ‹€ν–‰ν•˜μ§€ μ•Šκ³  맨 μ²˜μŒμ—λ§Œ 싀행해도 되..

[Hadoop] YARN - λ¦¬μ†ŒμŠ€ κ΄€λ¦¬μžμ™€ μŠ€μΌ€μ€„λŸ¬

μ €λ²ˆμ—λŠ” ν•˜λ‘‘μ΄ 무엇인지, 그리고 ν•˜λ‘‘μ˜ κΈ°λ³Έ 파일 μ‹œμŠ€ν…œμΈ λΆ„μ‚° 파일 μ‹œμŠ€ν…œμ— λŒ€ν•΄ κ³΅λΆ€ν–ˆλ‹€. μ΄λ²ˆμ—λŠ” μ΄μ–΄μ„œ ν•˜λ‘‘μ˜ λ¦¬μ†ŒμŠ€ κ΄€λ¦¬μžμ™€ μŠ€μΌ€μ€„λŸ¬μ— λŒ€ν•΄ 곡뢀해보렀고 ν•œλ‹€. λΆ„μ‚° μ‹œμŠ€ν…œμ—μ„œλŠ” μŠ€μΌ€μ€„λ§κ³Ό λ¦¬μ†ŒμŠ€ 관리 κΈ°λŠ₯을 핡심 μš”μ†Œλ‘œ 가지고 μžˆλŠ”λ°, ν•˜λ‘‘μ—μ„œλŠ” 계산 λ¦¬μ†ŒμŠ€λ₯Ό ν• λ‹Ήν•˜κ³  μ‚¬μš©μž μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ„ μŠ€μΌ€μ€„λ§ν•˜λŠ” μ‹œμŠ€ν…œμœΌλ‘œ YARN 을 μ‚¬μš©ν•œλ‹€. YARN (Yet Another Resource Negotiator) 은 μŠ€μΌ€μ€„λ§κ³Ό λ¦¬μ†ŒμŠ€ 관리λ₯Ό λ‹΄λ‹Ήν•˜μ—¬ λ°μ΄ν„°μ˜ 지역성을 κ·ΉλŒ€ν™”ν•˜κ³  κ³„μ‚°λŸ‰μ΄ λ§Žμ€ μ• ν”Œλ¦¬μΌ€μ΄μ…˜μ΄ μžμ›μ„ λ…μ ν•˜μ§€ μ•Šλ„λ‘ μ œμ–΄ν•œλ‹€. λ˜ν•œ ꡐ체가 κ°€λŠ₯ν•œ μŠ€μΌ€μ€„λ§ μ‹œμŠ€ν…œμ„ μ§€μ›ν•˜κ³  μ‚¬μš©μžλ‹Ή λ¦¬μ†ŒμŠ€ μ œν•œ, μž‘μ—… λŒ€κΈ°μ—΄λ‹Ή λ¦¬μ†ŒμŠ€ ν• λ‹ΉλŸ‰ λ“±μ˜ 곡용 λ¦¬μ†ŒμŠ€ μ‹œμŠ€ν…œ μŠ€μΌ€μ€„λ§μ— ν•„μš”ν•œ ν™˜κ²½ 섀정을 μŠ€μΌ€μ€„λŸ¬μ—..

[Hadoop] ν•˜λ‘‘ μ„€μΉ˜ν•˜κ³  확인해보기

슀파크λ₯Ό μ‚¬μš©ν•  λ•Œ μ €μž₯μ†Œλ‘œ ν•˜λ‘‘μ„ μ‚¬μš©ν•˜κΈ° μœ„ν•΄ ν•˜λ‘‘μ„ μ„€μΉ˜ν•΄λ³΄κ² λ‹€. ν•˜λ‘‘ μ„€μΉ˜λŠ” λ‹€μŒ 과정을 λ”°λ₯Έλ‹€. (1) ν•˜λ‘‘, μžλ°” λ‹€μš΄ https://hadoop.apache.org/releases.html μœ„ λ§ν¬μ—μ„œ λ°›μœΌλ €λŠ” ν•˜λ‘‘ 버전을 ν™•μΈν•˜κ³  binary λ₯Ό 선택해 μ••μΆ•νŒŒμΌμ„ λ‹€μš΄λ°›λŠ”λ‹€. μ••μΆ•νŒŒμΌμ€ ~.tar.gz ν™•μž₯자 이름을 가지고 있고 λ‚˜λŠ” 3.2.2 버전을 λ°›μ•˜λ‹€. (μŠ€νŒŒν¬μ— ν¬ν•¨λœ ν•˜λ‘‘ 버전이 3.2 버전이닀.) μžλ°”(jdk)도 λ‹€μš΄λ°›μ•„μ•Ό ν•˜μ§€λ§Œ μžλ°”λŠ” 이미 있기 λ•Œλ¬Έμ— ν•΄λ‹Ή 과정은 μƒλž΅ν•œλ‹€. (λ‚˜μ˜ μžλ°” 버전 13) (2) ν™˜κ²½λ³€μˆ˜ μ„€μ • 슀파크 μ„€μΉ˜ λ•Œμ™€ λ§ˆμ°¬κ°€μ§€λ‘œ ν™˜κ²½λ³€μˆ˜λ₯Ό μ„€μ •ν•œλ‹€. (이전 κ²Œμ‹œκΈ€μ—μ„œ μžμ„Ένžˆ λ‹€λ€˜μœΌλ―€λ‘œ μ—¬κΈ°μ„œλŠ” νŒ¨μŠ€ν•œλ‹€.) λ‹€λ§Œ 이전에 μ„€μ •ν–ˆλ˜ HADOOP_HOME 을 편..

[Spark] 슀파크 μ„€μΉ˜ν•˜κ³  csv 파일 뢈러였기

μŠ€νŒŒν¬λŠ” 데이터 κ³Όν•™μ—μ„œ 자주 λ³Ό 수 μžˆλŠ” 반볡 연산에 μ ν•©ν•œ κ°œλ…κ³Ό κΈ°λŠ₯을 μ œκ³΅ν•˜λŠ” 인-λ©”λͺ¨λ¦¬ 데이터 처리 μ—”μ§„μœΌλ‘œ λΉ λ₯Έ 속도가 νŠΉμ§•μ΄λ‹€. λ‹€μ–‘ν•œ 언어와 데이터 포맷을 μ§€μ›ν•˜κ³  데이터 μ „μ²˜λ¦¬λ₯Ό 효과적으둜 μˆ˜ν–‰ν•  수 μžˆμ–΄μ„œ 빅데이터 파일 μ‹œμŠ€ν…œμœΌλ‘œ 많이 μ“°μ΄λŠ” ν•˜λ‘‘κ³Ό 같이 쓰이기도 ν•œλ‹€. 기본적인 λΆ„μ‚° 처리 κΈ°λŠ₯ 뿐 μ•„λ‹ˆλΌ 슀파크 SQL, MLlib, 슀트리밍 λ“± μ—¬λŸ¬ ꡬ성 μš”μ†Œκ°€ μžˆλ‹€. κΈ°λ³Έ 데이터 κ΅¬μ‘°λ‘œλŠ” 객체의 λΆ„μ‚° μ‹œν€€μŠ€μΈ RDD(Resilient Distributed Dataset)λ₯Ό μ‚¬μš©ν•˜λ©° RDDλŠ” λ‹€μ–‘ν•œ 관계 λŒ€μˆ˜ μ—°μ‚°μž(SELECT, JOIN λ“±)와 슀칼라, 파이썬 λ³€ν™˜ 둜직의 ν”Όμ—°μ‚°μžλ‘œ 적용될 수 μžˆλ‹€. RDDλŠ” λ˜ν•œ RAM에 μ €μž₯되며 μžλ™μœΌλ‘œ 결함을 κ·Ήλ³΅ν•˜λŠ” λ©”μ»€λ‹ˆμ¦˜μ„ μ§€μ›ν•œλ‹€. λ§Œμ•½..

[Hadoop] ν•˜λ‘‘κ³Ό λΆ„μ‚° 파일 μ‹œμŠ€ν…œ

데이터 κ³Όν•™, 데이터 뢄석에 관심이 μžˆλ‹€λ©΄ ν•œ 번쯀 μ ‘ν•˜κ²Œ λ˜λŠ” 이름이 λ°”λ‘œ 'ν•˜λ‘‘(Hadoop)'이닀. ν•˜λ‘‘μ€ μžλ°” 기반의 λΆ„μ‚° μ»΄ν“¨νŒ… ν”Œλž«νΌμœΌλ‘œ, 핡심 파일 μ‹œμŠ€ν…œμΈ HDFS(Hadoop Distributed File System) 덕뢄에 λŒ€μš©λŸ‰μ˜ 데이터λ₯Ό μ €μž₯ν•˜κ³  λ‹€λ£° 수 μžˆλ‹€. μ–΄λ–»κ²Œ 이런 관리가 κ°€λŠ₯ν• κΉŒ? ν•˜λ‘‘μ€ κ΅¬κΈ€μ˜ GFS(Google File System)λ₯Ό 기반으둜 μ„€κ³„λ˜μ—ˆλŠ”λ°, 일반적인 파일 μ‹œμŠ€ν…œμ„ 가진 μ—¬λŸ¬ λ°μ΄ν„°λ…Έλ“œλ₯Ό λ¬Άμ–΄μ„œ ν•˜λ‚˜μ˜ λΆ„μ‚° 파일 μ‹œμŠ€ν…œμ„ κ΅¬μΆ•ν•˜λ„λ‘ ν•˜μ˜€λ‹€. λ”°λΌμ„œ 파일 μ‹œμŠ€ν…œμ„ μ‰½κ²Œ ν™•μž₯ν•  수 있게 λ˜μ—ˆκ³  λŒ€μš©λŸ‰μ˜ 데이터λ₯Ό μ €μž₯ν•˜κ³  관리할 수 있게 λ˜μ—ˆλ‹€. 이런 HDFS의 μ„€κ³„μ—λŠ” μ„Έ κ°€μ§€μ˜ 가정이 λ°˜μ˜λ˜μ—ˆλŠ”λ° 첫 번째, λ°μ΄ν„°μ˜ ν’€ μŠ€μΊλ‹μ„ μ§€μ›ν•˜κΈ° μœ„ν•΄μ„œ 파일 순..

[Pandas] νŒλ‹€μŠ€μ™€ μ‹œλ¦¬μ¦ˆ κΈ°λ³Έ

μ°Έκ³  : https://wikidocs.net/75004 Pandas(μ΄ν•˜ νŒλ‹€μŠ€)λŠ” 파이썬 라이브러리둜, 데이터 μ‘°μž‘ 및 뢄석에 μš©μ΄ν•˜λ©° μ‚¬μš©ν•˜κΈ° μ‰¬μš΄ 데이터 ꡬ쑰λ₯Ό μ œκ³΅ν•œλ‹€. λ°μ΄ν„°ν”„λ ˆμž„, μ‹œλ¦¬μ¦ˆ, 인덱슀 λ“±μ˜ 자료ꡬ쑰λ₯Ό μ œκ³΅ν•˜λ©° κ΄€κ³„ν˜• λ°μ΄ν„°λ² μ΄μŠ€μ˜ ν…Œμ΄λΈ”κ³Ό 같은 ꡬ쑰둜, SQLκ³Ό 같은 ν˜•νƒœλ‘œ 데이터λ₯Ό μ²˜λ¦¬ν•  수 있기 λ•Œλ¬Έμ— μ‰½κ²Œ μ ‘κ·Όν•  수 μžˆλ‹€. 단독 μ‚¬μš©λ³΄λ‹€λŠ” NumPy, scikit-leran, matplotlib κ³Ό ν•¨κ»˜ μ‚¬μš©ν•˜λŠ” κ²½μš°κ°€ λ§Žλ‹€. (1) νŒλ‹€μŠ€μ˜ 자료ꡬ쑰 νŒλ‹€μŠ€κ°€ μ œκ³΅ν•˜λŠ” μžλ£Œκ΅¬μ‘°μ΄λ‹€. μ‹œλ¦¬μ¦ˆλŠ” λ°°μ—΄ ν˜•μ‹, λ°μ΄ν„°ν”„λ ˆμž„μ€ ν‘œ ν˜•μ‹μ˜ ꡬ쑰이며 μ‹œλ¦¬μ¦ˆκ°€ λͺ¨μ—¬ λ°μ΄ν„°ν”„λ ˆμž„μ„ κ΅¬μ„±ν•œλ‹€. μ‹œλ¦¬μ¦ˆ : κ°’(values) + 인덱슀(index) λ°μ΄ν„°ν”„λ ˆμž„ : 칼럼(columns) + 인덱슀..