latest article
-
Information Technology
[VR] VR video format
2016년에는 2D 기반의 360 영상(Monoscopic)이 주로 쓰였다. 이후 카메라 등 장비들의 발전으로 3D 기반의 Stereoscopic 형태의 영상이 늘어났다. 주로 쓰이는 영상 포맷으로는 Monoscopic 360 equirectangular projection Top bottom stereoscopic 360 equirectangular projection Left right stereoscopic 360 equirectangular projection Top bottom stereoscopic 3D 180 Left right stereoscopic 3D 180 등이 있다. Monoscopic 360 equirectangular projection 기존에 쓰던 2D 촬영물을 이용한 360 ..
-
Distributed Computing for Big Data
Apache Hive
Apache Hive 개요 Apache hive는 MapReduce 기반의 High-level abstraction이다. - HiveQL은 SQL-like 언어를 사용한다. - Hadoop 클러스터에서 MapReduce 잡을 생성한다. - Facebook 에서 데이터 웨어하우스를 위해 개발되었다.(현재는 오픈소스인 Apache 프로젝트) Why Hive? -MapReduce를 직접 작성하는 것 보다 좀 더 생산적이다.(Java로 100라인 작성하는 것 5라인 HiveQL로 구현 가능) -폭 넓은 사용자에게 대용량 데이터를 분석할 수 있는 기회를 제공한다. (소프트웨어 개발 경험이 필요 없음, 기존 SQL 지식을 가진 사용자가 사용 가능) -다른 시스템과의 상호 운용성을 제공한다.(Java나 외부 Scri..
-
Distributed Computing for Big Data
Hive and Pig
숭실대학교 컴퓨터학부 박영택 교수님의 강의를 듣고 정리했다. What is Hive and Pig? Hadoop은 대용량 데이터 처리에 효율적이다. 그런데 모든 작업을 JAVA 또는 Python 으로 작성하는 것은 다소 장황하며, 시간이 오래 걸린다. 또한 모두가 이러한 프로그래밍 언어를 사용하길 바라거나, 사용할 줄 아는 것은 아니다. 그래서 high-level의 데이터처리 언어가 필요했다. 그렇게 개발된 것이 Hive와 Pig 다. 우리는 이 중 Hive를 중점으로 본다. Hive: HQL은 SQL과 유사하다. : Hadoop에서의 데이터웨어하우스 어플리케이션 -쿼리 언어는 SQL의 변형인 HQL을 사용한다. -테이블은 HDFS에 flat file 형태로 저장된다. -Facebook에서 개발되어 현재..
-
Distributed Computing for Big Data
How Hadoop Works (Computation)
숭실대학교 컴퓨터학부 박영택 교수님의 강의를 듣고 정리했다. What is MapReduce? 여러 노드에 태스크를 분배하는 방법 각 노드 프로세스 데이터는 해당 노드에 저장 (가능한 경우) 두 단계로 구성(Map, Reduce) MapReduce는 fork-join이다. f라는 task를 할 때 일을 나누고(fork), 다시 합치는(join) 방식이다. 예를 들어 Alphago와 이세돌에 관한 글에서 알파고라는 단어와 이세돌이라는 단어가 각각 몇 번 쓰였는지 확인하는 작업을 하겠다. 긴 text를 64MB의 block으로 자르고, 각각의 block마다 Alphago가 몇 번, 이세돌이 몇 번 나왔는지 확인한다. 이후 block을 합치며 alphago의 언급 횟수를 합치고, 이세돌의 언급 횟수도 똑같이 ..
-
Distributed Computing for Big Data
How Hadoop Works (Storage)
숭실대학교 컴퓨터학부 박영택 교수님의 강의를 듣고 정리했다. HDFS Basic Concepts *HDFS는 JAVA로 작성된 파일 시스템 -google의 GFS 기반 *기존 파일 시스템의 상위에서 동작 -ext3, ext4 or xfs HDFS의 file 저장 방식 file 은 block 단위로 분할 (각 block은 기본적으로 64MB 또는 128MB 크기) 그런데 file이 이 block의 크기보다 작을 때, block 크기 전체를 사용하지는 않는다. 데이터가 로드 될 때 여러 machine에 분산되어 저장됨(같은 file의 다른 block들은 서로 다른 machine에 저장됨, 이를 통해 효율적인 MapReduce 가능) block들은 여러 machine에 복제되어 data node에 저장됨(기본..
리스트 예시: 게시물이 존재할 경우 3건을 노출합니다.