[210715 TIL] Database

Choi Rim·2021년 7월 15일
0

Way to developer

목록 보기
18/21
post-thumbnail
post-custom-banner

데이터베이스

  • 데이터가 중요한 이유는 데이터를 가공해서 다양한 일을 할 수 있기 때문이다.
    • 인터넷에 연결된 웹과 앱을 통해서 소식과 지식을 전파할 수 있다.
    • 빅데이터나 인공지능 같은 기술을 이용해서 대규모의 데이터로부터 통찰력 있는 분석결과를 뽑아낼 수 있다.
  • 이를 위해서는 데이터를 저장하고 꺼낼 수 있어야 한다.

데이터 in 파일

  • 데이터를 파일에 저장한다면 배우기 쉽고 운영체제마다 파일을 제공하기 때문에 어디에서나 사용할 수 있다.
    • 심지어 이메일이나 메신저를 통해 간편하게 전송할 수 있다.
    • 하지만 파일은 성능이나 보안이나 편의성에 한계를 가지고 있다.
    • 파일이 가진 한계를 극복하기 위해 고안된 전문화된 소프트웨어가 데이터베이스이다.

데이터 in 데이터베이스

  • 데이터베이스를 이용하면 소중한 데이터를 안전하고, 편리하고 빠르게 보관하고 사용할 수 있다.
  • 다양한 데이터베이스 제품이 존재
    • mySQL, Oracle, SQL server, PostgreSQL, MongoDB

관계형 데이터베이스

MySQL & SQL

  • 세상에는 여러가지 형태의 데이터 베이스가 존재한다.
    • 그 중 가장 성공했고, 널리 사용되는 것이 관계형 데이터베이스이다.
    • 관계형 데이터베이스는 제품명이 아니고, 제품군을 의미한다.
    • 관계형 데이터베이스 제품군에 속하는 구체적인 제품명들
      • MySQL, Oracle, SQL server, PostgreSQL
      • 사용법은 거의 같기 때문에 하나를 배우면 나머지도 알게 된다.
  • 데이터베이스는 매우 방대한 기능을 가지고 있는 정보 도구이다.
    • 데이터베이스의 기능이 방대한 것은, 데이터 관련해서 일어날 수 있는 일들이 많기 때문이다.
    • 어떤 데이터베이스를 만나건 데이터베이스의 데이터를 어떻게 입력하고 어떻게 출력하냐를 따져봐야 한다.
      • input - output
      • input
        • Create Update Delete
      • ouput
        - Read
      • 위 그림에서의 C.R.U.D
        • Create Read Update Delete
        • 데이터를 생성하고, 읽고, 수정하고, 삭제하는 작업이 데이터 관련해서 우리에게 필요한 모든 것이라고해도 과언이 아니다.
  • 데이터를 정리정돈하면 데이터를 가공하는 것이 훨씬 더 쉬워진다.
  • File - Spreadsheet - Database
    • 전문적인 데이터베이스 소프트웨어는 프로그래밍적으로 컴퓨터 언어를 이용하여 데이터를 추가하고, 수정하고, 삭제하고, 읽을 수 있다.
    • 이렇게 하는 것의 장점은 사람이 일일이 작성하지 않고도, 자동으로 데이터를 수정하고, 삭제하고, 생성하고, 읽을 수 있는 자동화가 가능하다는 점이다.

MySQL

  • 1970년 Relational database가 탄생한다.
    • 이를 기반으로 여러 관계형 데이터베이스들이 탄생했다.
    • 지금까지 관계형 데이터베이스는 데이터베이스 분야에서 절대 강자로 군림하고 있다.
    • 관계형 데이터베이스를 이용하면 데이터를 표의 형태로 정리정돈할 수 있고 정렬, 검색과 같은 작업을 빠르고, 편리하고, 안전하게 할 수 있다.
  • 1994년 스웨덴에서 개발되기 시작한 My SQL
    • 관계형 데이터베이스
    • 무료
    • 오픈소스
    • 관계형 데이터베이스의 주요한 기능을 대부분 갖추고 있음
  • WEB이 폭발적으로 성장하며 웹 개발자들은 웹 페이지를 통해서 표현할 정보를 저장할 데이터베이스를 찾게 된다.
    • 무료이면서 오픈소스인 MySQL 은 웹 개발자에게 매우 좋은 대안이었다.
    • 수많은 엔지니어들은 MySQL을 사용하게 되었다.
    • MySQL은 WEB과 함께 폭발적으로 동반성장하게 된다.
    • 그 결과 MySQL은 데이터베이스 시장에서 손꼽히는 시장의 지배자가 되었다.
    • 오늘도 우리는 MySQL이라는 심장에 의해서 동작하고 있는 수많은 웹사이트를 이용했을 것이다.

데이터베이스의 목적

  • 데이터베이스의 주요한 특징은 spread sheet처럼 데이터를 표의 형식으로 나타낸다는 것이다.
  • spread sheet와 데이터베이스의 가장 중요한 차이점
    • 스프레드시트는 사용자가 클릭을 통해서 제어한다.
    • 데이터베이스는 코딩을 통해서 컴퓨터 언어를 통해 제어할 수 있다.
      • 데이터베이스는 사람과 대화하는 것처럼 말을 걸 수 있다.
      • SQL 이라는 컴퓨터 언어를 통해 컴퓨터를 제어할 수 있다.
  • 사용자들이 데이터를 사이트에 저장하면, 그 데이터가 데이터베이스에 저장되고 있다.
    • 내부적으로 어떤 일이 일어나는가?
profile
https://rimi0108.github.io/
post-custom-banner

0개의 댓글