21_빅데이터 뢄석기사

02_빅데이터 기술 및 μ œλ„(4)-빅데이터 μˆ˜μ§‘/μ €μž₯/처리

devnest 2026. 2. 21. 13:50
728x90

2) 빅데이터 μˆ˜μ§‘

β‘  크둀링(Crawling): 무수히 λ§Žμ€ 컴퓨터에 λΆ„μ‚° μ €μž₯λ˜μ–΄ μžˆλŠ” λ¬Έμ„œλ₯Ό μˆ˜μ§‘ν•˜μ—¬ 검색 λŒ€μƒμ˜ μƒ‰μΈμœΌλ‘œ ν¬ν•¨μ‹œν‚€λŠ” κΈ°μˆ μ΄λ‹€. μ–΄λŠ λΆ€λ₯˜μ˜ κΈ°μˆ μ„ μ–Όλ§ˆλ‚˜ 빨리 검색 λŒ€μƒμ— ν¬ν•¨μ‹œν‚€λŠ”κ°€λ‘œ μš°μœ„λ₯Ό κ²°μ •ν•œλ‹€.

 

β‘‘λ‘œκ·Έ μˆ˜μ§‘κΈ°: 쑰직 내뢀에 μžˆλŠ” μ›Ή μ„œλ²„λ‚˜ μ‹œμŠ€ν…œμ˜ 둜그λ₯Ό μˆ˜μ§‘ν•˜λŠ” μ†Œν”„νŠΈμ›¨μ–΄μ΄λ‹€. μ›Ή λ‘œκ·Έλ‚˜ νŠΈλžœμž­μ…˜ 및 클릭 둜그 λ“± 각쒅 둜그λ₯Ό ν•˜λ‚˜μ˜ λ°μ΄ν„°λ‘œ μˆ˜μ§‘ν•œλ‹€.

 

β‘’μ„Όμ„œ λ„€νŠΈμ›Œν¬(Sensor Network): μœ λΉ„μΏΌν„°μŠ€ μ»΄ν“¨νŒ… κ΅¬ν˜„μ„ μœ„ν•œ μ΄ˆκ²½λŸ‰ μ €μ „λ ₯의 λ§Žμ€ μ„Όμ„œλ“€λ‘œ κ΅¬μ„±λœ μœ λ¬΄μ„  λ„€νŠΈμ›Œν¬μ΄λ‹€. μ„Όμ„œλ₯Ό ν†΅ν•˜μ—¬ νšλ“λœ μ—¬λŸ¬ 정보λ₯Ό λ„€νŠΈμ›Œν¬λ‘œ κ΅¬μ„±λœ 톡합 ν™˜κ²½ λ‚΄μ—μ„œ μž¬κ΅¬μ„±ν•˜μ—¬ μ²˜λ¦¬ν•œλ‹€.

 

β‘£RSS Reader/Open API): λ°μ΄ν„°μ˜ 생산, 곡유, μ°Έμ—¬ν•  수 μžˆλŠ” ν™˜κ²½μΈ μ›Ή 2.0을 κ΅¬ν˜„ν•˜λŠ” κΈ°μˆ μ΄λ‹€. ν•„μš”ν•œ 데이터λ₯Ό ν”„λ‘œκ·Έλž˜λ°μ„ 톡해 μˆ˜μ§‘ν•  수 μžˆλ‹€.

 

β‘€ETLν”„λ‘œμ„ΈμŠ€: λ°μ΄ν„°μ˜ μΆ”μΆœ(Extract), λ³€ν™˜(Transform), 적재(Load)의 μ•½μ–΄λ‘œ, λ‹€μ–‘ν•œ μ›μ²œ 데이터λ₯Ό μ·¨ν•©ν•΄ μΆ”μΆœν•˜κ³  κ³΅λ™λœ ν˜•μ‹μœΌλ‘œ λ³€ν™˜ν•˜μ—¬ μ μž¬ν•˜λŠ” 과정이닀.

 

κ³Όμ • μ„€λͺ…
데이터 μΆ”μΆœ(Extract) ● μ›μ²œ λ°μ΄ν„°λ‘œλΆ•ν„° μ μž¬ν•˜κ³ μž ν•˜λŠ” 데이터λ₯Ό μΆ”μΆœν•œλ‹€.
데이터 λ³€ν™˜(Transform) ● μΆ”μΆœν•œ 데이터λ₯Ό λ³€ν™˜ν•˜κ³  κ· μ§ˆν™”ν•˜λ©° μ •μ œν•œλ‹€.
● μ •μ œν•œ 데이터λ₯Ό μ μž¬ν•˜κ³ μž ν•˜λŠ” 데이터 μ›¨μ–΄ν•˜μš°μŠ€ ꡬ쑰에 맞게 λ³€ν™˜ν•œλ‹€. 
● ν†΅ν•©ν•˜λŠ” μ œμ•½μ‘°κ±΄ 및 λΉ„μ¦ˆλ‹ˆμŠ€ κ·œμΉ™μ— 따라 ν•„ν„°λ§μ΄λ‚˜ 확인 μž‘μ—…μ„ ν•œλ‹€. 
데이터 적재(Load) ● λ³€ν™˜λœ 데이터λ₯Ό 데이터 μ›¨μ–΄ν•˜μš°μŠ€μ— μ μž¬ν•œλ‹€.

 

3) 빅데이터 μ €μž₯

β‘  NoSQL(Not-only SQL)

전톡적인 κ΄€κ³„ν˜• λ°μ΄ν„°λ² μ΄μŠ€μ™€λŠ” λ‹€λ₯΄κ²Œ 데이터 λͺ¨λΈμ„ λ‹¨μˆœν™”ν•˜μ—¬ μ„€κ³„λœ λΉ„κ΄€κ³„ν˜• λ°μ΄ν„°λ² μ΄μŠ€λ‘œ SQL을 μ‚¬μš©ν•˜μ§€ μ•ŠλŠ” DBMS와 데이터 μ €μž₯μž₯μΉ˜μ΄λ‹€.

 

● 기쑴의 RDBMS νŠΈλžœμž­μ…˜ 속성인 μ›μžμ„±(Atomicity), 일관성(Consistency), 독립성(Isolation), 지속성(Durability)을 μœ μ—°ν•˜κ²Œ μ μš©ν•œλ‹€.

● 데이터 μ—…λ°μ΄νŠΈκ°€ μ¦‰κ°μ μœΌλ‘œ κ°€λŠ₯ν•œ 데이터 μ €μž₯μ†Œμ΄λ‹€.

● Cloudata, Hbase, Cassandra, MongoDB 등이 λŒ€ν‘œμ μ΄λ‹€.

 

β‘‘ 곡유 데이터 μ‹œμŠ€ν…œ(Shared-data System)

● 일관성, κ°€μš©μ„±(Availability), λΆ„ν•  λ‚΄μ„±(Partition Tolerance)μ€‘μ—μ„œ μ΅œλŒ€ 두 개의 μ†μ„±λ§Œ λ³΄μœ ν•  수 μžˆλ‹€.(CAP 이둠)

● λΆ„ν•  내성을 μ·¨ν•˜κ³  일관성과 κ°€μš©μ„± 쀑 ν•˜λ‚˜λ₯Ό ν¬κΈ°ν•˜μ—¬ 일관성과 κ°€μš©μ„±μ„ λͺ¨λ‘ μ·¨ν•˜λŠ” κΈ°μ‘΄ RDBMS 보닀 높은 μ„±λŠ₯κ³Ό ν™•μž₯성을 μ œκ³΅ν•œλ‹€.

 

β‘’ 병렬 λ°μ΄ν„°λ² μ΄μŠ€ 관리 μ‹œμŠ€ν…œ(Parallel Database Management System)

λ‹€μˆ˜μ˜ λ§ˆμ΄ν¬λ‘œν”„λ‘œμ„Έμ„œλ₯Ό μ‚¬μš©ν•˜μ—¬ μ—¬λŸ¬ λ””μŠ€ν¬μ— 질의, κ°±μ‹ , μž…μΆœλ ₯ λ“± λ°μ΄ν„°λ² μ΄μŠ€ 처리λ₯Ό λ™μ‹œμ— μˆ˜ν–‰ν•˜λŠ” μ‹œμŠ€ν…œμ΄λ‹€.

● ν™•μž₯성을 μ œκ³΅ν•˜κΈ° μœ„ν•΄ μž‘μ€ λ‹¨μœ„μ˜ λ™μž‘μœΌλ‘œ νŠΈλžœμ μ…˜ 적용이 ν•„μš”ν•˜λ‹€.

● VoltDB, SAP HANA, Vertica, Greenplum, Netezzaκ°€ λŒ€ν‘œμ μ΄λ‹€.

 

β‘£ λΆ„μ‚° 파일 μ‹œμŠ€ν…œ

λ„€νŠΈμ›Œν¬λ‘œ κ³΅μœ ν•˜λŠ” μ—¬λŸ¬ 호슀트 νŒŒμΌμ— μ ‘κ·Όν•  수 μžˆλŠ” 파일 μ‹œμŠ€ν…œμ΄λ‹€.

● 데이터λ₯Ό λΆ„μ‚°ν•˜μ—¬ μ €μž₯ν•˜λ©΄ 데이터 μΆ”μΆœ 및 κ°€κ³΅μ‹œ λΉ λ₯΄κ²Œ μ²˜λ¦¬ν•  수 μžˆλ‹€.
● GFS(Google File System), HDFS(Hadoop Distributed File System), μ•„λ§ˆμ‘΄ S3파일 μ‹œμŠ€ν…œμ΄ λŒ€ν‘œμ μ΄λ‹€.

 

β‘€ λ„€νŠΈμ›Œν¬ μ €μž₯ μ‹œμŠ€ν…œ

이기쒅 데이터 μ €μž₯μž₯치λ₯Ό ν•˜λ‚˜μ˜ 데이터 μ„œλ²„μ— μ—°κ²°ν•˜μ—¬ μ΄κ΄„μ μœΌλ‘œ 데이터λ₯Ό μ €μž₯ 및 κ΄€λ¦¬ν•˜λŠ” μ‹œμŠ€ν…œμ΄λ‹€.

● SAN(Storage Area Network), NAS(Network Attached Storage)κ°€ λŒ€ν‘œμ μ΄λ‹€.


NAS

λ„€ν¬μ›Œν¬ κ²°ν•© μŠ€ν† λ¦¬μ§€, 컴퓨터λ₯Ό 직접 μ—°κ²°ν•˜κΈ° μ•Šκ³  근거리 톡신 λ„€νŠΈμ›Œν¬λ₯Ό 톡해 데이터λ₯Ό μ£Όκ³  λ°›λŠ” 방식


4) 빅데이터 처리

β‘  λΆ„μ‚° μ‹œμŠ€ν…œκ³Ό 병렬 μ‹œμŠ€ν…œ

λΆ„μ‚° μ‹œμŠ€ν…œ ● λ„€νŠΈμ›Œν¬μƒμ— λΆ„μ‚°λ˜μ–΄ μžˆλŠ” 컴퓨터λ₯Ό 단일 μ‹œμŠ€ν…œμΈ κ²ƒμ²˜λŸΌ κ΅¬λ™ν•˜λŠ” κΈ°μˆ μ΄λ‹€.
● λΆ„μ‚° μ‹œμŠ½μ— μ— μ†ν•œ λ…Έλ“œλŠ” λ…λ¦½λœ μ‹œμŠ€ν…œμ΄λ‹€.
● 독립 μ»΄ν“¨ν„°μ˜ μ§‘ν•©μœΌλ‘œ λ§Œλ“€μ—ˆμœΌλ‚˜ 마치 단일 μ‹œμŠ€ν…œμΈ κ²ƒμ²˜λŸΌ μˆ˜ν–‰λ˜μ–΄μ•Ό ν•œλ‹€.
병렬 μ‹œμŠ€ν…œ ● 문제 해결을 μœ„ν•΄ CPUλ“±μ˜ μžμ›μ„ 데이터 λ²„μŠ€λ‚˜ μ§€μ—­ 톡신 μ‹œμŠ€ν…œ λ“±μœΌλ‘œ μ—°κ²°ν•˜μ—¬ κ΅¬λ™ν•˜λŠ” κΈ°μˆ μ΄λ‹€.
● λΆ„ν• λœ μž‘μ—…μ„ λ™μ‹œμ— μ²˜λ¦¬ν•˜μ—¬ 계산 속도λ₯Ό λΉ λ₯΄κ²Œ ν•œλ‹€.

γƒΌ μš©μ–΄λŠ” κ΅¬λΆ„λ˜μ–΄ μ‚¬μš©λ˜κΈ°λ„ ν•˜μ§€λ§Œ μ„œλ‘œ μ€‘μ²©λ˜λŠ” 뢀뢄이 λ§Žμ•„ μ‹€μ œ μ‹œμŠ€ν…œμ—μ„œλ„ 이 λ‘˜μ„ λͺ…ν™•νžˆ κ΅¬λΆ„ν•˜κΈ°λŠ” μ–΄λ ΅λ‹€.

γƒΌ 두 κ°œλ…μ„ μ•„μš°λ₯΄λŠ” λΆ„μ‚° 병렬 μ»΄ν“¨νŒ…μ΄λΌλŠ” μš©μ–΄λ₯Ό μ‚¬μš©ν•œλ‹€.

 

β‘‘ λΆ„μ‚° 병렬 μ»΄ν“¨νŒ…: λ‹€μˆ˜μ˜ λ…λ¦½λœ μ»΄ν“¨νŒ… μžμ›μ„ λ„€νŠΈμ›Œν¬μƒμ— μ—°κ²°ν•˜μ—¬ 이λ₯Ό μ œμ–΄ν•˜λŠ” 미듀웨어(Middleware)λ₯Ό μ΄μš©ν•΄ ν•˜λ‚˜μ˜ μ‹œμŠ€ν…œμœΌλ‘œ λ™μž‘ν•˜κ²Œ ν•˜λŠ” κΈ°μˆ μ΄λ‹€.

 


병렬(Parallel) λ°μ΄ν„°λ² μ΄μŠ€μ˜ νŠΉμ§•

● λΆ„μ‚° μ•„ν‚€ν…μ²˜

● λ³‘λ ¬μ²˜λ¦¬/κ³ μ„±λŠ₯ 처리

● 데이터 νŒŒν‹°μ…”λ‹μ„ ν†΅ν•œ 데이터 병렬성

● 데이터 λΆ„ν• κ³Ό λΆ„μ‚°


미듀웨어

ν•˜λ“œμ›¨μ–΄λ‚˜ ν”„λ‘œν† μ½œ, ν†΅μ‹ ν™˜κ²½ 등을 μ—°κ²°ν•˜μ—¬ μ‘μš© ν”„λ‘œκ·Έλž¨ κ°„ μ›λ§Œν•œ 톡신이 μ΄λ£¨μ–΄μ§ˆ 수 있게 ν•˜λŠ” μ†Œν”„νŠΈμ›¨μ–΄


 

β–Ά λΆ„μ‚° 병렬 μ»΄ν“¨νŒ… μ‹œ 고렀사항

문제 μ„€λͺ…
전체 μž‘μ—…μ˜ λ°°λΆ„ 문제 ● 전체 μž‘μ—…μ„ 잘 μͺΌκ°œμ–΄ μ—¬λŸ¬ 개의 μž‘μ€ μž‘μ—…μœΌλ‘œ λ‚˜λˆ μ•Ό ν•œλ‹€.
각 ν”„λ‘œμ„Έμ„œμ—μ„œ κ³„μ‚°λœ 쀑간 결과물을 ν”„λ‘œμ„Έμ„œ κ°„ μ£Όκ³ λ°›λŠ” 문제   ● 효율적인 톡신은 μ„±λŠ₯κ³Ό μ§κ²°λœλ‹€.
● 보톡 단일 μ‹œμŠ€ν…œμ€ 전체 μž‘μ—…μ„ λ…Έλ“œμ˜ 수만큼 κ· λ“±ν•˜κ²Œ λ‚˜λˆˆλ‹€.
● 이쒅 μ‹œμŠ€ν…œμ€ μ»΄ν“¨νŒ… λŠ₯λ ₯에 따라 전체 μž‘μ—…μ„ λ°°λΆ„ν•œλ‹€. 
● λ…Έλ“œ κ°„μ˜ 톡신을 μ΅œμ†Œν™”ν•˜λŠ” 기법 등이 반영되면 μžμ›μ„ μ’€ 더 효율적으둜 μ‚¬μš©ν•  수 μžˆμ–΄ μ„±λŠ₯ ν–₯상에 도움이 λœλ‹€.
μ„œλ‘œ λ‹€λ₯Έ ν”„λ‘œμ„Έμ„œ κ°„ 동기화 문제 ● 데이터 병렬 μ²˜λ¦¬μ—μ„œ 동기적 방법을 μ‚¬μš©ν•  경우 ν”„λ‘œμ„Έμ„œλŠ” νŠΉμ • 계산이 λλ‚˜κ±°λ‚˜ νŠΉμ • 데이터λ₯Ό λ„˜κ²¨λ°›μ„ λ•ŒκΉŒμ§€ λ°˜λ“œμ‹œ λŒ€κΈ°ν•˜μ—¬ν– ν•œλ‹€.
● 동기적 λ°©λ²•μ˜ 경우 μ†‘μ‹ μžλŠ” μˆ˜μ‹ μžμ—κ²Œμ„œ 데이터λ₯Ό λ°›μ•˜λ‹€λŠ” 응닡이 올 λ•ŒκΉŒμ§€ λŒ€κΈ°ν•˜μ—¬μ•Ό ν•œλ‹€.
● 비동기적 λ°©λ²•μ—μ„œλŠ” κ²°κ³Ό λ©”μ„Έμ§€λ₯Ό 보낸 μ¦‰μ‹œ λ‹€μŒ μž‘μ—…μ„ 계속할 수 μžˆλ‹€.
● 비동기적 λ°©λ²•μ˜ 경우 ν”„λ‘œμ„Έμ„œλŠ” 기닀릴 ν•„μš”κ°€ μ—†μ§€λ§Œ, 계산 과정이 μ ν•©ν•œμ§€λŠ” 확인해야 ν•œλ‹€.