본문 바로가기

나 취준생/리눅스

spark에 테이블 올리고, SQL 수행하는 법

320x100

어제 테이블 생성 과정 중


sqlContext.sql("LOAD DATA LOCAL INPATH '/home/scott/emp2.txt' INTO TABLE emp")

에서 오류가 계속 떠서 실패했었는데 원인을 알았다.

spark에서 치명적인 오류가 발생하면 안전을 위해서인지 특정 작업을 못하게 막아버려서
spark를 껐다가 다시 켜야한다.


# spark 재접속 하는 법



리눅스 작업환경에서 시작


스파크의 sbin 디렉토리로 이동


cd /home/scott/spark/sbin


ls



start-all.sh , stop-all.sh


가 정상적으로 있는지 확인


stop-all.sh #껐다가


start-all.sh #키기


spark-shell # spark 접속




val sqlContext = new org.apache.spark.sql.hive.HiveContext(sc)


-> hive SQL을 스칼라에서 쓰겠다


sqlContext.sql("create table  IF NOT EXISTS emp (empno int, ename string, job string, mgr int, hiredate string, sal int, comm int, deptno int) ROW FORMAT DELIMITED  FIELDS TERMINATED BY ',' LINES TERMINATED BY '\n'")


-> emp 테이블을 생성하는 명령어 ( 쉼표, 줄 구분 )


sqlContext.sql("LOAD DATA LOCAL INPATH '/home/scott/emp2.txt' INTO TABLE emp")


-> emp 테이블에 emp2.txt를 로드하는 명령어


sql("select * from emp").show()


-> sql 명령어 수행




반응형

'나 취준생 > 리눅스' 카테고리의 다른 글

scala에서 sql문을 실행한 결과를 파이썬에서 사용하기  (0) 2021.01.12
리눅스 특정 텍스트 치환  (0) 2021.01.08
hive  (0) 2021.01.08
리눅스 현재 디렉토리로 복사할 때 팁  (0) 2021.01.07
하둡  (0) 2021.01.07