반응형

전체 글 359

[Git] 외부에 있는 저장소에서 Pull하기

외부 저장소에서 Pulling 함께 개발하는 개발자가 있다면, 항상 최신의 상태를 받아와야 합니다. 예를 들어 A라는 작업을 하고 있지만, B에 의존성이 있다면, B작업의 최신 상태를 나의 저장소에서 최근 상태로 업데이트할 필요가 있습니다. 이때 외부 저장소에서의 변화를 나의 저장소로 반영하기 위해 하는 작업을 pull이라고 합니다. 외부에 있는 저장소를 pull하기 위해서는 $ git pull 명령어를 하면 됩니다. 만약에 아무런 변화가 없으면 'Already up-to-date'라는 결과를 반환합니다. 변화가 있다면 나의 로컬 버전에 merge가 되어 변경이 됩니다.

Programming/기타 2016.06.23

vi/vim에서 register(레지스터)/buffer(버퍼)를 사용하는 방법 (복사/자르기/붙여넣기)

Vi/Vim에서 레지스터를 이용해 복사, 잘라내기, 붙여내기 하는 방법 yy, dd를 이용해 복사 및 붙여넣기를 했고, pp를 통해 붙여넣기를 수행했습니다. 하지만, pp를 통해 붙여넣기전에 yy,dd를 했다면, 그 이전에 있는 내용이 아닌 가장 최근의 값을 사용하게 됩니다. 즉, 하나의 버퍼를 사용해서 복사, 잘라내기, 붙여넣기를 수행하고 있습니다. vi에서는 내부 register를 지원하고 있습니다. 아주 간단한 방법으로 동작합니다. 일단 :reg를 입력하면 현재 register의 항목을 볼 수 있습니다. " " "0 "1 "2 "3 "4 "5 "6 "7 "8 "9 "- ". "% "# "/ "" 레지스터 -> 바로 이전에 지워진 내용이 항상 들어 갑니다 "1 ~ "9 레지스터 -> 지워진 내용이 큐..

운영체제/Linux 2016.06.22

[MySQL] 데이터 경로 변경하는 방법

MySQL 데이터 경로 변경하는 방법 MySQL의 데이터가 저장되는 경로는 기본적으로 /var/lib/mysql에 저장이 됩니다. 하지만 다른 추가적인 HDD에 저장을 하고 싶을때는 데이터가 저장될 경로를 변경하시면 됩니다. 데이터 저장소 생성하기 /var/lib/mysql의 기존 경로를 /media/hdd/mysql로 변경하는 방법입니다. 시작을 하기 전에 mysql server를 stop을 합니다. $ sudo service mysql stop stop mysql Create the new directory: 새롭게 데이터가 저장될 경로를 생성합니다. $ mkdir /media/hdd/mysql 기존의 /var/lib/mysql의 정보를 새로운 경로인 /media/hdd/mysql로 복사를 합니다. ..

DBMS/MySQL 2016.06.21

[MySQL] 외부접속 허용하는 방법

MySQL 외부접속 허용하는 방법 MySQL Server를 설치한 후에 외부에서 접근하는 방법에 대해서 설명하려고 합니다. 외부 접근을 하기 위해서는 두가지를 변경해야 합니다. bind-address 변경 계정 권한 변경 bind-address 변경하기 shell에서 아래와 같이 입력을 하면, mysql configure파일이 확인이 가능합니다. $ sudo vi /etc/mysql/my.cnf configure파일이 열리면 항목중에 [mysqld]라는 항목이 있습니다. 하단에 보면 bind-address의 값이 기존에는 127.0.0.1로 지정이 되어있습니다. 그 값을 0.0.0.0으로 변경합니다. 이렇게 변경이 되면 이제 외부에서도 접근이 가능합니다. [mysqld] bind-address = 0.0..

DBMS/MySQL 2016.06.21

[Git] 브랜치(Branch) 생성 및 사용법

Branch Git 저장소에서 branches를 사용하는 이유는 작업을 분리(isolate)하기 위해서 입니다. 우리가 최초에 생성하는 master 외에도 다른 branch를 생성이 가능합니다. 작업을 분리해서 작업을 한 뒤에 main branch에 merge를 하면 됩니다. branch가 어떻게 동작하는지에 대해서 더 자세하게 알고싶으면 아래 사이트를 참고하시면 됩니다. [참고] guides.github.com/overviews/flow 브랜치(Branch) 생성하기 git status 를 통해 현재 내가 어떤 branch에서 작업을 하는지 볼 수 있습니다. git branch 을 통해 새로운 branch를 생성이 가능합니다. git checkout 을 통해 브랜치를 이동할 수 있습니다. 새로운 파일 ..

Programming/기타 2016.06.20

Jupyter Notebook 특징 및 설치 방법

Jupyter Notebook Jupyter Notebook은 live code, equation, visualization, 그리고 explanatory text를 할 수 있는 web application 입니다. IPython Notebook과 유사하지만 서버를 두고 작성하기 때문에 공유가 가능하다는 장점이 있습니다. data cleaning, transformation, numerical simulation, statistical modeling, machine learning 외에도 많은 용도로 사용이 가능합니다. Jupyter 특징 Language of choice Notebook에서는 40개의 프로그래밍 언어를 지원하고 있습니다. Python, R, Julia, Scala 등 Share not..

데이터분석 2016.06.17

[Git] Fork를 이용해 외부 git 프로젝트 가져오기

Forks And Clones Forks란? Open source projects에 참여하고 싶은가? 그렇다면 forks에 대해서 알아야 합니다. fork란 다른 원격 저장소에 있는 히스토리를 그대로 나의 github 원격 저장소에 복사하는 것을 말합니다. 다른 사람의 프로젝트에 바로 push를 할 수 없기 때문에 일단 나만의 프로젝트 버전을 관리하기 위해 다른 사람의 원격 저장소에서 프로젝트를 가져옵니다. 그런다음에 내가 contributing을 원래 원격 저장소로 요청을 합니다. 한마디로 외부 프로젝트를 진행할때 나만의 버전을 관리하기 위해서 fork를 해서 외부 프로젝트에 반영한다고 생각하시면 됩니다. fork를 했다면 나의 github에 있는 저장소에서 로컬로 clone을 합니다. 그럼이제 프로젝..

Programming/기타 2016.06.17

클러스터 매니저(Cluster Manager) Yarn의 아키텍쳐 및 역할

Yarn? Hadoop 1.0에서는 JobTracker가 클러스터의 자원 배분과 Job관리를 함께 수행했기 때문에 JobTracker에서 병목현상이 일어났다. JobTracker가 하던 두 가지 역할-자원관리를 Resource Manager와 Application Master로 분리해서 JobTracker에 몰리던 병목을 제거했습니다. Resource Management, Scheduling/Monitoring을 구분하는 daemon의 기능을 분할하였습니다. global하게 ResourceManager, per-application ApplicationManager를 두자라는 아이디어에서 부터 시작했습니다. 범용 컴퓨팅 클러스터가 가능 (MapReduce)외에도 다양한 어플리케이션을 실행할 수 있으며, ..

빅데이터/Hadoop 2016.06.16

Linux(Ubuntu)에 Java설치 및 환경 설정하는 방법

Ubuntu에 Java설치 및 환경 설정하는 방법 Ubuntu에서 apt-get으로 Java를 설치하고, 환경변수를 설정하는 방법에 대해서 설명하겠습니다. 일단 설치하기에 앞서, java를 설치할때 어떤 설치 항목이 있는지 살펴보면 JRE, JDK가 있습니다. 그럼 각각 어떤 역할을 하는지 알고, 내가 필요한 부분만 설치하시면됩니다. JRE (Java Runtime Environment) 즉, 자바로 구현이 되어있는데 프로그램을 동작시킬 때 필요한 라이브러리들과, 기타 파일들을 가지고 있다. JRE는 JVM의 실행 환경을 구현했다고 생각하면 된다. JDK (Java Development Kit)은 JRE + 개발을 위한 도구(javac, java 등)을 포함합니다. 그럼 내가 만약 개발자라면 JRE가 아..

운영체제/Linux 2016.06.16

Spark Shell을 이용한 간단한 예제 및 앱 배포 방법

Interactive Analysis with the Spark Shell API를 쉽게 습득하기 위해서는 spark's shell만큼 좋은게 없습니다. python과 scala를 통해서 할 수 있습니다. 이번에는 RDD를 생성하는 방법, MapReduce를 Spark에서 구현하는 방법과, caching하는 방법에 대해서 설명하려고 합니다. 마지막에는 내가 구현한 앱을 사용자들에게 배포하기 위해 sbt build tool을 이용해 배포하는 방법에 대해서 설명합니다. Resilient Distributed Dataset(RDD) 생성하기 위해서는 hadoop hdfs file을 읽거나, 기존에 있는 rdds를 transforming을 통해서 변환이 가능합니다. RDD에서 제공하는 method는 action..

빅데이터/Spark 2016.06.16
반응형