ICT 김남년_아파치 조사 및 빅데이터 복습내용입니다.
천보식교수님 안녕하십니까
아파치 조사 및 빅데이터 복습내용입니다.
====================================================================================
아파치 (Apache)
- 1955년 처음 발표된 월드와이드웹 서버용 소프트웨어이다.
- Apche란 것은 소프트웨어 단체 이름이다.
- 우리가 흔희 부르는 아파치서버라는 것은 이제단에서 후원하는 오픈소스
프로젝트 커뮤티니에서 만든 http웹서버를 자칭하는 말이다.
- http 웹서버는 http 요청을 처리할 수 있는 웹서버이고, 아파치 http
서버는 http요청을 처리하는 웹서버인 것이다.
- 클라이언트가 GET, POST, DELETE 등등의 메소드를 이용해 요청을 하면
이프로그램이 어떤 결과를 돌려주는 기능을 한다.
- 아파치 = 웹서버 !!!!
*아파치 소프트웨어 재단은 아파치 오픈 소스 소프트웨어 프로젝트 지원을 제공합니다.
아파치 프로젝트는 협업과 개발 프로세스를 기반으로하는 상호간의 공감대와 개방되어있는 실용적인
소프트웨어 라이센스, 그 분야에서 선두를 달릴수있는 고품질 소프트웨어 개발을 추구하고 있습니다.
*프로젝트 350개정도 이상있지만 대표적인걸로만 설명하자면 ↓
-http 서버 : 아파치 소프트웨어 재단에서 관리하는 http 웹서버이다.
-엔트 : 자반기반 빌드도구
-커먼즈 : 재사용 가능한 자바 기반의 컴포넌트를 모아놓은 통합 프로젝트이다.
-하둡 : 분산 파일 시스템(HDFS)과 맵리듀스를 구현한 것이다.
-Hbase : 기존의 SQL 데이터 베이스를 직접적으로 대체하지는 않지만 페이스북의
메시징 플랫폼과 같은 데이터를 많이 사용하는 웹사이트에서 사용된다.
-하이브 : 하둡에서 동작하는 데이터 웨어하우스 인프라 구조로서 데이터 요약, 질의 및 분석 기능을 제공한다.
-로깅 : 프로그램을 작성하는 도중에 로그를 남기기 위해 사용되는 자바 기반 로깅 유틸리티이다.
-카프카 : 스칼라로 개발한 오픈소스 메시지 브로커 프로젝트이다.
-스쿱 : 관계형 데이터 베이스와 아파치 하둡간의 대용량 데이터들을 효율적으로 변환하여 주는 명령 줄 인터페이스
애플리케이션이다
-톰캣 : 아파치 소프트웨어 재단에서 개발된 서블릿 컨테이너만 있는 웹 애플리케이션 서버이다.
-스팸어쌔신 : 내용 일치 규칙 기반의 스팸 메일 필터링을 위해 사용되는 아파치 라이선스 2.0 하에 공개된 컴퓨터
프로그램이다. 현재 아파치 재단의 일부이다.
-스트럿츠 : Jaba EE 웹 애플리케이션을 개발하기 위한 오픈 소스 프레임워크이다. 이전에는 자카르타 프로젝트의
하부프로젝트에 속하였으나 스트럿츠는 이제 최상위 레벨의 프로젝트가 되었다.
-주키퍼 : 아파치 소프트웨어 재단 프로젝트중의 한 소프트웨어 프로젝트로서 공개 분산형 구성 서비스, 동기 서비스
및 대용량 분산 시스템을 위한 네이밍 레지스트리를 제공한다.
======================================================================================
빅데이터 수집 및 통합 기술
1.개요
- 기존 RDBMS의 문제를 보완하고 비정형 데이터를 처리하는 어려움을 해결하려면 비정형 데이터의 특성을 파악하여
여러 시스템에서 파일을 수집, 저장할 수 있도록 분산 처리를 중심으로 화되, 각 단계마다 서로 다른언어와 API를
요구할 수 있다는 점을 염두에 두어야한다. 또한 이렇게 수집된 비정형 데이터를 분석에 적합한 형태로 통합하는
발전된 융합 기술도 필요하다.
2.빅데이터 주요 수집 및 통합 기술
1.Flume(플럼) - 안정성과 가용성이 높다.
- Cloudera에서 공개한 오픈 소스 프로그램이며
아파치를 옮겨진 후 Flume-NG로 명칭이 바뀌었다.
- 클라이언트에 저장되는 로그를 중간 에이전트가 수집한후
최종적으로 하둡 분산 파일 시스템으로 통합하여 저장하는 구조이다.
2.Chukwa(척와) - 2008년 야후에서 개발한 것으로 Flume과 마찬가지로 로그 데이터
수집 및 분석, 출력, 모니터링하는 시스템이다.
3.Scribe(스크라이브) - 분산형 로그 수집 서버로, 페이스북에서 자체 스케일링 작업용으로
개발한 오픈 소스 프로젝트이다.
4.SQOOP(스쿱) - 기존 RDBMS에서 하둡으로 데이터를 이전하려고 시작한 프로젝트이다.
메타데이터를 기반으로 각 시스템에 맞도록 데이터를 매핑시켜 수집하고,
수집된 데이터를 분산 처리한다.
5. Kafka(카프카) - LinkedIn에서 사용중인 아파치의 초기 프로젝트인 Kafka는 확장성이
좋고 처리량이 높은 분산 메시지 시스템으로 지속적이고 우수한메시지 전달 성능을 보장한다.
6. OpenRefine - 학계나 관공서에서 발표하는 대규모 데이터에 정제되지 않은 상태로 있는 데이터를 깔끔하게
정리해 주는 데이터 정체 출로, 크고 복잡한 스프레드시트를 정리할 수 있다.
7. JSON - 기존 XML과 비슷하지만 용량이 작고 변환 속도가 빠르다는 장점이 있어 더 주목을 받는다.
8. BSON - JSON의 이진 표현 형식인 BSON은 데이터 저장 엔진으로 활용한다.
9. Thrift - 확장성 높은 이기종 언어 서비스를 지원하는 소프트웨어 프레임워크이다.
10. Protocol Buffers - 구글에서 내놓은 오픈소스 직렬화 라이브러리이다.
11. Aveo - 스카마 기반이라 프로그램을 생성할 때 이미 알려진 데이터 타입뿐만 아니라 임의의 데이터 구조도
취급할 수 있다. 하지만 인코딩과 디코딩을 할 때 저장 공간을 많이 차지하며 성능을 저하시킨다는 단점도 있다.
====================================================================================
이상입니다.
첫댓글 아파치 웹서버와 빅데이터 수집에 대한 공부 잘 하셨네요...
아파치 웹서버는 초창기 Linux와 같은 Unix기반에서 사용했는데, 지금은 MS계열을 비롯한 많은 곳에서 사용하고 있는 웹서버 입니다. 수고 많았어요.