데이터베이스에 대한 이해도 조금은 필요하다 #3

by 전익진

SQL 1


SQL은 관계형 데이터베이스의 표준 언어로, 상용 DBMS인 오라클, MS-SQL, MySQL 등과 같은 대부분의 주요 제품에서 채택하여 활용되고 있다.

SQL은 Structured Query Language의 약자다. 구조화된 질의어, 즉 언어다. 우리가 흔히 컴퓨터 프로그래밍 언어 하면 떠오르는 JAVA, C++ 등과 같은 컴퓨터 언어이다.

우리가 흔히 SELECT, INSERT, UPDATE, DELETE 하는 명령어는 ANSI(American National Standards Institute)-SQL이라고 부른다. 그리고 각 DBMS마다 독자적으로 SQL을 확장하여 사용한다.

0083.jpg

오라클의 P/L-SQL은 오라클 DBMS에서 SQL 언어를 확장하기 위해 사용하는 컴퓨터 프로그래밍 언어로 한 때 오라클이 범용 DBMS에서 가장 점유율이 높았기 때문에 전문 SQLER 분야에 서 가장 보편적으로 접근하였던 언어이다.

T-SQL은 MS-SQL과 SAP의 SYBASE 그리고 IBM에서 개발(즉, ANSI-SQL의 확장 판)하여 표준화된 컴퓨터 프로그래밍 언어를 의미한다. 오라클이 전문성을 강조했다면 MS와 SAP은 보편성을 강조하였다.

SQL을 알아야 하는 이유는 데이터를 추출하기 위해서다. 매번 데이터베이스 관리자에게 데이터 요구하는 것보다 내가 직접 추출하는 것이 유용하기 때문이다.

비단 이런 이유 때문만이 아니라 데이터와 분석의 중요성이 날로 커지는 환경에서 SQL은 데이터 분석을 필요로 하는 사람뿐 아니라 일반 사무 환경에서도 기본적인 소양으로 요구되고 있다. 단순히 데이터베이스를 다루는 언어로 인식되던 SQL이 데이터 분석의 중요성과 맞물려 가장 기본적이고 핵심적인 언어로 그 필요성이 점차 확대되고 있는 것이다.

최근 빅데이터를 위시한 데이터 분석 영역이 기업에서 각광을 받으며 이를 위한 전처리 과정에서 SQL이 기본적이고 핵심적인 언어로서 중요성과 그 필요성이 점점 더 확대되고 있는 것이다.

0084.jpg

최근 빅데이터 전문가를 고용하는 기업체에서 필수요소로 SQL을 요청하고 있는 상황이다. 데이터 분석을 위한 전처리 단계로서 SQL은 매우 중요한 역할을 담당하고 있다는 반증이다. 이는 내가 현장에서 직접 피부로 느끼고 경험한 가치다. 분석을 위해 데이터를 가공 처리하고 정리하는 도구로서 SQL은 지금보다 훨씬 그 중요성이 높아질 것이다.



SQL 2


모든 상용 DBMS에서 다루는 SQL, PL-SQL이나 T-SQL 등, 을 모두 학습할 필요는 없다. 기본적인 ANSI-SQL만 익히면 된다. SELECT, INSERT, UPDATE, DELETE를 말하는 것이다.

SQL은 좀 더 구체적으로 3개의 언어로 나뉜다. 개체 관리를 위한 DDL(Data Definition Language), 접근 권한 등의 사용자 관리를 위한 DCL(Data Control Language) 그리고 실제 데이터를 다루기 위한 DML(Data Manipulation Language)로 구분된다. 이 중에서 DDL과 DCL의 경우는 최근 DBMS가 많은 지원을 해주므로 DML만을 학습하면 된다. SELECT, INSERT, UPDATE, DELETE가 DML에 속한 명령어이다. SQL를 공부할 때 앞서 4가지만 완벽하게 구사할 줄 알아도 일단 초보, 아니 중급 이상의 기술을 가졌다고 자부할 수 있다. 우리가 컴퓨터를 활용하는 목적이 고스란히 내포되어 있는 명령어이다.

0085.jpg


http://www.yes24.com/Product/Goods/91614222


keyword
매거진의 이전글데이터 분석에 대한 궁금증 여덟 가지 #1