Computer Science/Backend(11)
-
mac에 하둡(3.3.0) 설치하기
환경 - macOS Big Sur (버전 11.2.2) - Hadoop 3.3.0 Home brew로 설치하는 방법 포스팅하겠습니다. 맥 터미널을 열고 $ brew install hadoop # 설치 경로 # 3.x.x 부분은 설치하신 버전에 맞게 자동으로 경로 생성 됨 /usr/local/Celler/hadoop/3.x.x/libexec 설치가 완료 됐으면 몇 가지 세팅을 추가해준다. 1. hadoop-env.sh 세팅 $ cd /usr/local/Celler/hadoop/3.x.x/libexec/etc/hadoop $ vim hadoop-env.sh 해당 파일을 열면 주석처리 된 글들이 나올 것이다. 맨 아랫줄에 다음을 추가해주자. export HADOOP_OPTS="-Djava.net.preferI..
2021.06.06 -
Spring Boot와 sqlite3 연동, JPA, Hibernate, SQLDialect
Spring Boot와 sqlite3 연동하기 Code: https://github.com/C-YooJin/lite (해당 게시물은 깃허브 코드를 참고하면서 보는 것을 권장합니다.) 1. Spring Boot 프로젝트를 생성한다. 나는 보통 빌드 툴로 maven을 사용하기 때문에 pom에 Spring web, Spring Data JPA, sqlite 디펜던시를 추가해주자. org.xerial sqlite-jdbc 3.21.0.1 2. SQLDialect를 설정해준다. JPA로 어플리케이션을 개발하게 되면 개발자가 직접 JDBC 레벨에서 SQL문을 작성하는게 아니고 JPA가 이를 대신해주게 되는데 그 때 필요한게 Dialect다. SQLDialect는 데이터베이스간의 SQL문법 차이를 보정해주기 위해 J..
2021.05.04 -
JAVA Selenium NoSuchElementException, elementclickinterceptedexception 해결
JAVA Selenium 데이터 크롤링을 하게됐다. 자바를 메인언어로 바꾸겠다고 마음 먹은지 6개월정도 지났나 이제 좀 익숙해져 가고 있다. 두려움을 떨쳤다는 것 만으로도 스스로 기특하다고 생각하고 있다. 파이썬에서 자바로 언어를 바꿀 때 가장 답답한 부분은 함수형 사고방식에서 OOP형 사고방식으로 바꾸는 거였다. 뭐든 모르면 쫄기 마련인데, 하다보면 사실 몰랐을 뿐 어려운 건 아니었다는 생각을 하게 된다. 셀레니움 쓰다보면 자주 맞닥뜨리는 에러랑 간단한 해결법이다. 이런 글이라도 도움 되는 사람이 있겠지. 1. NoSuchElementException 셀레니움을 쓰다보면 제일 많이 보이는 에러다. 그런 엘리먼트는 없어~ 이런 느낌이다. 기본적으로 셀레니움은 다음 코드를 가장 많이 사용한다. import..
2021.01.18 -
Spark로 HDFS 데이터 활용하기 (+ pandas, time range filter)
python 기반입니다 HDFS 데이터 spark로 불러오기 HDFS(Hadoop File System)으로 저장 돼 있는 데이터를 주피터 노트북에 불러와서 스파크 데이터 프레임으로 활용하는 일이 종종 있다. 첫 번 째로 Spark Session을 열어줘야 된다. SparkSession은 인스턴스 생성을 위한 build() 메서드를 제공하는데, 이 메서드를 통해 인스턴스를 재사용 하거나 새로 생성할 수 있다. from pyspark.sql.session import SparkSession import pyspark.sql.functions as F # SparkSession 인스턴스 생성 spark = SparkSession.builder.appName('deepjin').getOrCreate() 위 과..
2020.07.22 -
[Linux] screen 명령어로 백그라운드 프로세스 띄우기
screen은 서비스를 데몬으로 동작시킬 수 있게 해주는 명령어다. 데몬이란 리눅스 시스템이 가동될 때 실행되는 백그라운드 프로세스의 일종이다. A daemon is a long-running background process that answers for services. The term originated with Unix, but most operating systems use daemons in some form or another. In Unix, the names of daemons conventionally end in "d". Some examples include inetd, httpd, nfsd, named, and lpd. ㅡ 인디아나 주립대학교 날리지베이스에 정의된 daemon in..
2020.07.13 -
[Kafka] 카프카 주요 개념 정리
Apache Kafka는 분산 메시징 시스템(A high-throuhput distributed messaging system)이다. 2011년 링크드인에서 처음 개발 됐다. 자사 웹사이트의 이벤트 체크 목적으로 만들어지기 시작했고 2014년 아파치 재단으로 이관 됐다. Architecture 카프카는 발행-구독(publish-subscribe) 모델을 기반으로 동작한다. Producer가 데이터를 발행하고, Consumer가 구독하는 토픽의 데이터를 가져오는 구조다. 중간에서 Producer가 전달하는 데이터를 받는 클러스터를 Broker라고 한다. 고가용성(Fault tolerant, High Availability) 및 확장성(Scalability) 카프카를 논할 때 이 두 가지 특성이 빠지면 섭하..
2020.05.30