본문 바로가기
컴퓨터/SQL & DB

Postgre SQL로 시작하는 SQL과 Data Base, 패스트 캠퍼스 후기, 패스트 캠퍼스 sql 강의, Data base강의, 데이터 사이언티스트, 빅데이터 전문가, 데이터 분석가

by 하링아 2020. 12. 18.
반응형

Postgre SQL로 시작하는 SQL과 Data Base

 

생각지 못했던 기회

 

2020 빅데이터 청년 캠퍼스를 수료하고 그대로 연이 끝나는 줄 알았지만 여러 가지 소식들과 정보들을 공유해줬었는데 이번에는 수료생들을 대상으로 한 건지 모르겠지만 나에게 패스트 캠퍼스의 강의 중 하나를 골라서 수강할 수 있는 기회를 줬고 필자는 SQL과 DB 강의를 수강하기로 했다.

 

이전에도 sql을 공부한 적은 있었지만 데이터들을 이용해서 제대로 하기보다 이론이나 손 코딩 위주로 공부했었고 sqld 시험을 벼락치기로 준비했다가 벌써 두 번이나 떨어져서 제대로 익히자는 마음으로 시작하게 됐다.

 

PostgreSQL은 뭐야?

 

이전에 배웠던 sql은 oracle sql이나 mysql이었는데 여기서 가르쳐주는 게 PostgreSQL(포스트그레에스큐엘)이라고해서 뭔지 궁금해서 좀 찾아봤다. 수업에서도 알려주기는 하지만 추가로 알아보니 여러 가지 특징이 있었는데 간단히 언급하고 넘어가려고 한다. 중요한 건 특징이라기보다 대세를 익히고 사용할 줄 알아야 되는 거니까.. 특징은 패스트 캠퍼스의 강의와 아래 링크에서 추렸다.

 

- 무료 소프트웨어

- multi-version concurrency control(MVCC) 완벽 지원

- C/C++, Java 등의 프로그래밍 언어 연동 완벽 지원

- 커뮤니티 활성화

 

- 9.2 버전에서 이루어진 네이티브 JSON 지원이다. 첫 버전은 그리 좋지 않았지만, 버전 9.4에서 JSONB가 오래된 데이터베이스에 상당한 마력을 부여했다.

- “NoSQL과 빅데이터에 대한 피로감”이 생기면서 개발자들이 갑자기 일부 핵심 워크로드용으로 사용하던 몽고 DB와 카산드라의 대안으로 이미 검증을 마친 포스트그레SQL을 선택

- 포스트그레SQL용 오픈소스 확장 기능인 시투스(Citus)가 등장하면서 포스트그레SQL은 여러 노드에 걸쳐 확장하기 쉽고 트랜잭션과 SQL 쿼리를 지능적으로 배포해 대규모 병렬 처리가 가능

- 포스트그레SQL은 언제나 데이터베이스의 기본을 잘 수행해 왔다. 바로 데이터를 저장하고 잃어버리지 않는 것

- 개발자의 관점에서 사용하기 즐겁다. 문서화는 뛰어나고 데이터 타입은 개발자가 작업하는 타입을 반영하며, 예상을 벗어나는 일이 별로 없다

 

 

PostgreSQL 설치 및 실행법 및 샘플 DB준비

 

www.postgresql.org/download/windows/에 들어간 후 Download the installer 클릭 - 자신의 운영체제에 맞게 찾은 후 Download - 설치 파일 실행(주로 다음만 눌러주면 되고 언어는 Korean-Korea, Superuser password의 경우 자신이 기억할 수 있는 비밀번호를 설정한다., 마지막에 Stack Builder 체크 박스는 해제한다.)

 

설치 후 검색을 이용해서 pgAdmin 4를 실행하면 인터넷 창이 하나 열리고 비밀번호를 입력하라는 창이 뜨는데 설치할 때 입력한 postgre Super user password를 입력해서 접속한다. - 왼쪽의 Servers -> PostgreSQL 13(뒤 숫자는 다를 수 있음) -> Databases -> postgres 마우스 오른쪽 클릭 -> Qeury Tool 클릭 후 sql 문을 입력해 볼 수 있음. 추후 이런 식으로 sql문을 입력하는 듯하다.

 

아래 링크를 통해서 다뤄볼 샘플 DB를 다운로드할 수 있다. zip 파일을 압축 푸는데 C://temp에 푸는 것을 추천한다.(. tar파일은 압축 풀지 말 것)

www.postgresqltutorial.com/wp-content/uploads/2019/05/dvdrental.zip

 

샘플 DB를 받았다면 다시 pgAdmin 4를 실행해서 왼쪽 메뉴에서 Server -> PostgreSQL 13 -> Databases 마우스 오른쪽 클릭 -> Create -> Database -> databases명을 입력(dvdrental로 하면 좋음 내용이 dvd에 관한 내용임) -> 왼쪽 Databases 리스트에서 생성한 dvdrental 마우스 오른쪽 클릭 -> restore -> filename 오른쪽 점 세 개 클릭 후 C://temp 경로로 들어가서. tar파일 선택(오른쪽 아래 Format : all file로 설정) 이 과정에서 error 하나 발생할 수 있는데 문제없음.

 

이제 다시 왼쪽 메뉴 dvdrental -> schema -> tables로 들어가면 샘플 DB가 보일 것 이제 dvdrental 마우스 오른쪽 클릭 -> Qeury Tool을 클릭해서 샘플 DB 조작 가능.

 

 

dbeaver 다운로드

 

아래 링크를 통해서 다운로드한다.

dbeaver.io/download

자신의 운영체제에 맞게 다운로드해주면 된다. 

 

강의에서 sql 실습을 위해서 위의 pgAdmin 4 보다 dbeaver가 더 유용하다고 판단됐다고 한다. 배우는 입장에서 굳이 다른 프로그램을 사용할 이유는 없으니 따라 하기로 한다.

 

파일을 실행하고 드라이버를 다운로드한 후 왼쪽 상단에 플러그 플러스 버튼 클릭 -> Postgresql 클릭(코끼리 모양) 후 아래 사진처럼 세팅 후 마지막에 완료 버튼을 누르면 로드된다.

 

모두 잘 진행됐다면 아래 사진처럼 들어가면 Tables이 잘 만들어진 걸 볼 수 있다.

 

 

sql 입력창은 제일 위의 dvdrental - localhost:5432 부분 마우스 오른쪽 클릭 후 sql 편집기 클릭하면 된다. 예로 간단히 actor 리스트를 전부 뽑는 sql문을 실행해봤다. 여기서는 pgAdmin 4와 다르게 sql문 실행을 위해서 Ctrl + Enter를 입력한다.

 

 

 

아래 표에서 어느 셀이든 클릭에서 마우스 오른쪽 클릭 -> 추출 -> csv 파일로 추출을 진행하면 엑셀 파일 생성이 가능하다. 필자의 경우 파일 추출 후 구글 스프레드 시트를 이용해서 실행해봤다. 잘 추출된 걸 볼 수 있다.

 

 

 

테이블 간의 관계 파악

 

왼쪽 메뉴에서 dvdrental -> Schemas -> public 마우스 오른쪽 클릭 -> 다이어그램 보기 클릭을 통해 테이블 간의 관계를 아래 사진처럼 한눈에 볼 수 있다.

 

 

데이터 수정

 

각 테이블 마우스 오른쪽 클릭 -> 데이터 수정 -> 셀 클릭하고 데이터 수정을 통해 데이터를 마음대로 쉽게 조작할 수 있다.

 

으로 계획

 

강의 중간중간에 있는 실전 문제 위주로 해결해가면서 포스팅해볼 생각이다. 중간중간 모르는 내용의 경우 강의 외적 소스에서 얻은 게 있다면 추가하겠지만 강의 내용을 그대로 가져오는 것은 안될 것 같으니 패스

 

이번에 제대로 공부해서 sql 졸업하고 싶다.

 

 

 

참고 링크

www.itworld.co.kr/news/107495

www.fastcampus.co.kr/data_online_sqldb

 

 

반응형

댓글0