데이터베이스 공부/인프런 이고잉 DATABASE 1&2 - MySQL 노트정리

0. DATABASE 1 - DATABASE 소개 및 본질 알아보기

모항 2023. 3. 13. 22:53

https://www.inflearn.com/course/database-2-mysql-%EA%B0%95%EC%A2%8C/dashboard

 

[무료] DATABASE 1&2 - MySQL - 인프런 | 강의

정보기술의 심장인 데이터베이스에 대한 포괄적인 소개를 담고 있습니다. 데이터베이스의 본질을 공부하며 가장 대표적인 관계형 데이터베이스인 MYSQL 을 학습해 봅니다., - 강의 소개 | 인프런

www.inflearn.com

 

이고잉 강사님은 DATABASE 1과 DATABASE 2 강의를 제작하셨다. 본 인프런 강의는 DATABASE 1 부분 + DATABASE 2 중 MySQL 부분의 합본이다.

 

DATABASE 1 에서는 데이터베이스에 대한 감을 잡는다.

데이터베이스란 무엇이며,

무슨 역할을 하며,

왜 데이터베이스가 필요한지를

직관적으로 느끼고 제대로 이해하도록 하는 수업들이다.

 

DATABASE 2 에서는 구체적인 데이터베이스 기술들을 배운다.

MySQL, MongoDB 등 다양한 기술에 대한 강의 묶음이 따로 만들어져있다.

 

DATABASE 1 강의의 목적은 다양한 DATABASE 2 강의 중 어떤 것을 먼저 배워보는 것이 좋을지 스스로 판단할 수 있도록 돕는 것이다.

 

나는 인프런 사이트의 커리큘럼 상에서 한 묶음으로 묶인 영상들을 한 게시글에 몰아 적을 것이며,

서로 다른 영상은 대제목 및 구분선으로 분리하여 정리할 것이다.

 

 


 

데이터베이스 수업 소개

데이터베이스 공부가 중요한 이유를 설명하는 회차이다.

 

저장방식으로서 파일 대신 데이터베이스를 쓰는 이유

파일은 배우기 쉬우며, 어느 운영체제에서든 사용할 수 있으며, 전송이 간편하다는 등의 장점을 가진다.

그러나 성능, 보안, 편의성 등에서 한계를 가진다.

이러한 한계를 극복하기 위해 전문화된 소프트웨어인 데이터베이스를 사용한다.

 

DATABASE 1 수업에서 배울 내용

데이터베이스의 가장 본질적인 내용

DATABASE 2 수업에서 보편적으로 나올 사례들

 

수업을 들으며 명심할 것

공감 없이 이해해서는 안 된다.

데이터베이스의 개념을 상상하고 제대로 이해하며 공부해야 한다.

 

 


 

데이터베이스의 본질

데이터베이스의 본질을 매우 간단하게 설명해주는 회차이다.

데이터베이스의 본질은 입력과 출력

입력

  • 생성 (Create)
  • 수정 (Update)
  • 삭제 (Delete)

출력

  • 읽기 (Read)

위의 네 가지 기능, 즉 CRUD를 제대로 하는 것이 데이터베이스의 중심 기능이다.

 

 


 

 

File vs Database

파일의 어떤 점이 불편한지, 그리고 이렇게 불편한 파일에서부터 데이터베이스에 이르기까지 데이터 관리 방식이 어떻게 나아질 수 있는지 직관적으로 보여주는 회차이다.

이 회차를 통해, 효율적인 데이터 관리 툴이 왜 중요하고 필요한지, 개발자를 비롯한 많은 전문가들이 왜 그런 툴의 니즈를 느끼고 만들어냈는지 눈으로 직접 보고 느낄 수 있다.

 

txt 파일

단순히 txt 파일에 정보를 저장하여 디렉토리에 저장하는 모습을 강사님께서 직접 보여준다.

데이터를 원하는 기준에 맞춰 원하는 방식으로 정렬/분류하는 데에 한계가 있다.

 

스프레드시트

스프레드시트에 데이터를 저장하고 표시하는 모습을 강사님께서 직접 보여준다.

데이터를 원하는 기준에 맞춰 원하는 방식으로 정렬/분류할 수 있다.

데이터 저장과 관리에 있어 사용자의 의도를 더욱 잘 반영할 수 있게 된다.

 

데이터베이스

데이터를 좀 더 자유롭고 편리하게 사용할 수 있게 만드는 것이 데이터베이스이며, txt 파일 - 스프레드시트 - 데이터베이스가 데이터 관리 툴의 진화 과정과 같은 특성을 가진다고 설명해주신다.

데이터베이스를 사용하면 txt 파일과 스프레드시트가 가진 기능에 더하여 자동화까지 가능하다.

프로그래밍 언어를 사용해 데이터 CRUD 작업을 하기 때문이다.

 

 


 

 

DATABASE 1을 마치며

이 강의를 만들었던 궁극적인 목적을 소개하며, DATABASE 2 로 나아가는 다리를 놓는 회차이다.

또한 데이터베이스 기술 생태계에 대해 대략적으로 감을 잡을 수 있게 해준다.

 

중심 내용은 다음과 같다.

 

일단 조사부터 하라

어떤 데이터베이스를 공부해야 할지 고민된다면, 일단 검색과 조사를 해보라

어느 검색엔진이든 들어가서 데이터베이스에 대해 일단 검색을 해보라고 하셨다.

강사님께서는 이렇게 말씀하시며, 구글 검색을 통해 다음의 사이트에 접속하였다.

https://db-engines.com/en/ranking

 

DB-Engines Ranking

Popularity ranking of database management systems.

db-engines.com

나도 한 번 접속해보았다.

강사님이 강의를 촬영했던 2018년과 동일하게 MySQL을 비롯한 관계형 데이터베이스들이 최상위에 위치하고, MongoDB가 그 사이에 끼어있다.

 

 

관계형 데이터베이스가 강세인 이유

관계형 데이터베이스가 변함없이 시장의 절대강자로 군림하는 이유는 무엇인가?

  • 일단, 관계형 데이터베이스 기술 사이에는 공통점이 많아, 관계형 데이터베이스 기술을 배우면 다른 관계형 데이터베이스를 배울 때 러닝 커브를 줄일 수 있다.
  • 관계형데이터베이스가 오랜 시간 동안 널리 사용되어왔기 때문에, 많은 회사에서 관계형 데이터베이스를 사용하고 있다. 따라서 개발자 입장에서는 이 기술만 알아도 여러 회사에서 역할을 할 수 있으므로 좋고, 회사 입장에서는 관계형 데이터베이스를 써야 인력을 구하기 쉬웠다.

 

NoSQL 데이터베이스가 등장한 이유

이전과는 달리, 훨씬 다양한 형태의 데이터가 매우 방대한 양으로 나타나기 시작했다.

이 과정에서 관계형 데이터베이스에 맞지 않는 데이터들도 많아졌다. 이 데이터를 저장해야 하는 입장에서는 관계형 데이터베이스가 억압으로 작용하기도 한다.

이로 인해 2010년부터 NoSQL, 즉 관계형 데이터베이스가 아닌 데이터베이스가 등장했다.

 

결론 (기억해야 할 것)

관계형 데이터베이스가 오랫동안 널리 사용되어왔다는 점

그러나 관계형 데이터베이스에 맞지 않는 다양한 데이터를 다루기 위해 NoSQL이 등장하였다는 점

내가 일하고 싶은 업계와 하고 싶은 일, 그리고 데이터베이스 생태계의 흐름을 고려하여 기술 공부를 해야 한다는 점