Database 썸네일형 리스트형 6/17[TIL] 왜 Database를 사용해야 할까? Data와 정보에 관련한 대화에 있어 개발자 간에 대화에도 Database는 이제는 없어서는 안 될 것으로 자리 잡았다. 대학생 때 Database라는 개념을 처음으로 접했을 시에 Data를 보관하는 대용량 장소이며 스키마, 릴레이션, 관계... 등을 개념적인 측면에서 간단히 훑어보는 식으로 공부했던 기억이 난다. Database는 도대체 왜 사용하는 것일까? 그 당시에는 결론을 단지 Data들을 효과적으로 효율적으로 정리할 수 있고 필요할 때 편리하게 사용할 수 있다(?)라는 수박 겉핥기식으로 생각했던 것 같다. 필자는 Database를 도대체 왜 사용해야 할 것인지에 대한 질문의 답을 기존에 알고 있던 것보다 세세히 정리하여 적어보고자 한다. DB를 사용하기 이전에는 사용하는 data의 크기가 그렇게.. 더보기 6/15[TIL] SQL 과 NoSQL 이란? 프로젝트를 하면서 백엔드 포지션에서 작업을 진행하게 되면 여러 가지 고민에 사로잡히게 되는데 SQL과 NoSQL을 정하는 것 또한 큰 고민 중 하나에 속하는 것 같다. MySQL 같은 MySQL 을 사용할 것인가? 아니면 MongoDB 와 같은 NoSQL을 사용할 것 인가... 필자는 아직 MongoDB 와 같은 NoSQL을 사용해 본 적이 없다. 프로젝트를 진행하면서 MySQL과 Postgresql을 사용해본 게 전부라 MongoDB 와 같은 NoSQL을 사용해본 다른 사람들에게 엄청 편하다는 이야기를 많이 들었다. 스키마에 대해 신경 쓰지 않아도 되고 1:N, M:N과 같은 관계를 지정할 필요 없다는 것까지... 듣고 나서 언젠가 사용해보아야 했다고 생각했는데 아직도 그러지 못하고 있다. 꼭 사용해보.. 더보기 6/3[TIL] Database Indexing이란 무엇이며 왜 하는가요? Database Indexing이란 무엇이며 왜 하는가요? 이를 알아보기 전에 Index이라는 것을 알아보자. Index란? 추가적인 쓰기 작업과 저장 공간들을 활용해서 DB 테이블의 검색 속도를 향상하기 위한 자료 구조라고 한다. 우리는 두꺼운 책을 읽게 되면 간혹 책의 맨 앞이나 맨 뒤에 색인을 추가하여 보다 원하는 내용을 빠른 시간 내에 찾아볼 수 있다. 우리가 만약 책에서 원하는 내용을 찾을 때 책의 처음부터 끝까지 모든 페이지를 찾아보는 것은 정말 오랜 시간이 걸리게 될 것이다. 그렇기에 색인(index)을 이용한다면 이 문제를 해결할 수 있다. DB에서도 또한 크게 상황이 다르지 않다. Index는 DB 내에서 모든 테이블을 검색하면 시간이 오래 걸리기에 데이터와 데이터의 위치를 포함한 자료구.. 더보기 1/13[TIL]Database Database를 이야기할 때 SQL을 논하지 않을 수 없다. SQL 데이터베이스 용 프로그래밍 언어로 데이터베이스에 query(질의문 : 저장되어 있는 정보를 필터 하기 위한 질문)를(을) 보내 원하는 데이터 만을 뽑아올 수 있다. Database가 필요한 이유는 In-memory 방식은 끄면 데이터가 없어진다. File I/O 방식은 원하는 데이터를 가져올 수 없을 뿐만 아니라 항상 모든 데이터를 가져온 뒤에 서버에서 필터링 작업이 필요하다. 그렇기에 서버의 과부하가 생긴다. 그렇기에 필터링 이외에도 File I/O 로 구현이 힘든 관리를 위한 여러 기능들을 가지고 있는 데이터에 특화된 서버인 Database가 필요한 것이다. DB는 스프레드시트(엑셀)와 비슷하게 생겼다. 비교해보자면 테이블(DB) .. 더보기 이전 1 다음