Big Data and Hadoop
빅데이터
데이터가 너무 크고 복잡해서 수작업 또는 기존의 프로세싱 툴로는 처리하기 힘들 때.
Web logs, sensor network, social media, internet pages, scientific research, etc.
3v: volume, velocity, variety
데이터의 종류
Structured data
Tabular format으로 나타낼 수 있는 데이터. Mysql 등등
Semi-structured data
Formal data model이 없는 데이터. XML 파일 등등
Unstructured data
Pre-defined model이 없는 데이터. Text file 등등
빅데이터를 쓰면
Understand and navigate big data sources.
Manage and store a huge volume of a variety of data.
Process data in reasonable time.
Ingest data at a high speed.
Analyze unstructured data.
Bear faults and exceptions.
2가지 challenges
How to handle the system uptime and downtime?
Using commodity hardware for data storage and analysis. Maintaining a copy of the same data across clusters.
How to combine data accumulated from all systems?
Analyzing data across different machines. Merging of data.
하둡 용어
commodity hardware: cluster를 만들 수 있는 PC
cluster: 네트워크에서 시스템간의 연결된 묶음
node: 네트워크 장치를 통해 서로 연결된 commodity server
Hadoop cluster: NameNode, DataNode, JobTracker, TaskTracker, Secondary NameNode
Hadoop HDFS:
저장 하는 측면에 쓰인다.
각 데이터블록에 대해 여러 복사본을 만들어서 안정성을 높인다.
Hadoop Map Reduce:
분산 환경에서 프로세스를 처리하는 역할을 한다.
HDFS를 저장소로 쓴다.
Regular file system vs HDFS
Regular file system에서는 각 데이터 블록이 작다. 대략 51바이트. 여러번 탐색해야 하기 때문에 큰 양의 데이터 입출력이 어렵다.
HDFS에서는 데이터 블록이 기본 64메가이다. 큰 데이터를 한번의 탐색으로 연속적으로 읽을 수 있다.
NameNode server
클러스터에 하나만 있다. 파일시스템 트리에서 파일과 디렉토리를 관리한다.
DataNode server
여러 instance가 있을 수 있다. NameNode에게 주기적으로 어떤 블록을 가지고 있는지 보고한다. 클라이언트나 NameNode server가 요청하면 블록을 저장하거나 제거한다.
Secondary NameNode server
하나만 있다. Failure을 대비해서 NameNode server의 일부분만을 저장한다. 완전한 백업은 아니다.
HDFS에 접근하는 방법
Java API, python이나 C를 이용한 접근, web GUI, HTTP brower, FS shell.
데이터가 너무 크고 복잡해서 수작업 또는 기존의 프로세싱 툴로는 처리하기 힘들 때.
Web logs, sensor network, social media, internet pages, scientific research, etc.
3v: volume, velocity, variety
데이터의 종류
Structured data
Tabular format으로 나타낼 수 있는 데이터. Mysql 등등
Semi-structured data
Formal data model이 없는 데이터. XML 파일 등등
Unstructured data
Pre-defined model이 없는 데이터. Text file 등등
빅데이터를 쓰면
Understand and navigate big data sources.
Manage and store a huge volume of a variety of data.
Process data in reasonable time.
Ingest data at a high speed.
Analyze unstructured data.
Bear faults and exceptions.
2가지 challenges
How to handle the system uptime and downtime?
Using commodity hardware for data storage and analysis. Maintaining a copy of the same data across clusters.
How to combine data accumulated from all systems?
Analyzing data across different machines. Merging of data.
하둡 용어
commodity hardware: cluster를 만들 수 있는 PC
cluster: 네트워크에서 시스템간의 연결된 묶음
node: 네트워크 장치를 통해 서로 연결된 commodity server
Hadoop cluster: NameNode, DataNode, JobTracker, TaskTracker, Secondary NameNode
Hadoop HDFS:
저장 하는 측면에 쓰인다.
각 데이터블록에 대해 여러 복사본을 만들어서 안정성을 높인다.
Hadoop Map Reduce:
분산 환경에서 프로세스를 처리하는 역할을 한다.
HDFS를 저장소로 쓴다.
Regular file system vs HDFS
Regular file system에서는 각 데이터 블록이 작다. 대략 51바이트. 여러번 탐색해야 하기 때문에 큰 양의 데이터 입출력이 어렵다.
HDFS에서는 데이터 블록이 기본 64메가이다. 큰 데이터를 한번의 탐색으로 연속적으로 읽을 수 있다.
NameNode server
클러스터에 하나만 있다. 파일시스템 트리에서 파일과 디렉토리를 관리한다.
DataNode server
여러 instance가 있을 수 있다. NameNode에게 주기적으로 어떤 블록을 가지고 있는지 보고한다. 클라이언트나 NameNode server가 요청하면 블록을 저장하거나 제거한다.
Secondary NameNode server
하나만 있다. Failure을 대비해서 NameNode server의 일부분만을 저장한다. 완전한 백업은 아니다.
HDFS에 접근하는 방법
Java API, python이나 C를 이용한 접근, web GUI, HTTP brower, FS shell.
댓글
댓글 쓰기