CSV 파일 다루기

Header 즉 첫번째 줄 linux에서 삭제하기

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25

# 덮어쓰기 전의 파일을 확장자.bak를 붙여서 보관하는 것이 가능하다
sed -i.bak -e '/^#/d' config.txt

# DATA.csv에서 첫번째 줄 제거하여 DATA_NO_HEADER.csv 생성
sed '1d' DATA.csv > DATA_NO_HEADER.csv

# 동일한 이름으로 첫번째 줄 제거
sed -i '1d' DATA.csv


# 패턴을 포함하는 선을 삭제
vi DATA.csv
:g/<pattern>/d
:wq

# '#'문자가 포함된 라인 삭제하면서 공백 제거된 내용만 출력
sed '/#/d' jupyterhub_config.py | sed '/^$/d'


#덮어쓰기
cat > 명령어는 덮어쓰기 명령어이다.
# 이어쓰기
. cat >> [파일 경로 / 이름]

  1. cat [ 파일 경로 / 이름 ]

    • 파일을 열어 내용을 출력
  2. cat > [ 파일 경로 / 이름 ]

    • 같은 이름의 파일이 없는 경우 : 파일 새로 만들고 내용 입력하기

    • 같은 이름의 파일이 있는 경우 : 파일 덮어쓰고 내용 새로 입력하기

  3. cat >> [ 파일 경로 / 이름 ]

    • 같은 이름의 파일이 없는 경우 : 파일 새고 만들고 내용 입력하기

    • 같은 이름의 파일이 있는 경우 : 기존 파일의 내용 밑에 이어쓰기

첫줄 일괄 삭제해서

find . -type f -name “*.csv” -exec sed -i “-new” ‘1d’ {} ;

CSV

Comma Separated Values

HBase와 Hive 차이는?

  • HBase는 NoSQL 데이터베이스이고 Hive는 하둡잡을 실행하는 DW 프레임워크이다.

  • HBase는 HDFS위에서 동작하고, Hive는 MapReduce 위에서 동작한다.

  • Schema flexibility: 다양한 구조와 포맷의 데이터를 처리하고 저장합니다.

  • SQL-like queries: Hadoop에서

  • Data management:

Hive DDL

하이브는 CSV 형식의 파일을 효과적으로 적재하기 위한 CSV 서데를 제공한다.

  • Hive 0.14 버전부터 기본 지원
    • CSV 서데를 이용하면  테이블 칼럼의 타입은 String 으로 고정
  • sepratorChar: 칼럼간의 구분자
  • quoteChar: 칼럼의 값을 지정한 문자로 묶어준다.
  • escapeChar: 칼럼에 데이터를 입력할 때 파싱하지 않고 무시
1
2
3
4
5
6
7
8
9
10
11
12
13
CREATE TABLE my_table
(   
   a string
,   b string
)
ROW FORMAT SERDE
'org.apache.hadoop.hive.serde2.OpenCSVSerde'
WITH SERDEPROPERTIES
(   "separatorChar" = ","
,   "quoteChar"     = "'"
,   "escapeChar"    = "\\"
)
STORED AS TEXTFILE;

[참고한 게시글]

https://118k.tistory.com/451

Apache Spark 설치

Window 운영체제

1. Anaconda 설치하기

Anaconda Prompt에서 python 3.8 이상인지 확인

where python 으로 Python이 어디에 설치되어 있는지 확인

pip : python package installer
where pip으로 pip이 어디에 있는지 확인

pip --version으로 pip 버전 확인

2. JAVA

java --version으로 버전 확인
Extended Support Until이 긴 JAVA 8(LTS)을 다운받는다

3. Spark

다운받은 파일을 원하는 위치에 이동한다.

4. Hadoop

hadoop-2.7.7을 사용
다운받은 파일을 원하는 위치에 이동한다.

5. Pyspark

Anaconda Prompt에서 pip install pyspark

환경변수 설정

주의사항: 파일경로에 빈칸이 존재하면 Error가 발생

JAVA_HOME
D:\ProgramFiles\Java\java-14-openjdk-14.0.2.12\bin

HADOOP_HOME
D:\ProgramFiles\Hadoop

SPARK_HOME
D:\ProgramFiles\Spark\spark-3.2.0-bin-hadoop2.7

PYSPARK_PYTHON
where python을 해서 D:\ProgramFiles\Anaconda3\python.exe

환경변수 > 변수: Path를 선택하여 [편집]버튼을 누르고 아래와 같이 추가

Mac 운영체제

1. Anaconda 설치하기

2. which python 으로 경로 찾기

3. Homebrew 설치

1
2
3
4
5
6
7
8
9
10
11
12
13
14
#JAVA 버전확인
java -version
# JAVA8 설치
brew install --cask adoptopenjdk8
# SCALA 설치
brew install scala
# Apache Spark 설치
brew install apache-spark
# pip 버전확인
pip --version
# pyspark 설치
pip install pyspark
# pyspark 터미널 뜨는지 확인
pyspark