[데이터베이스] 최적화 DB, 역정규화 [5]
·
📚 스터디/데이터베이스
우린 데이터 모델링 과정을 토대로 데이터베이스를 구축하는 능력을 얻었다. 정말 신기하고 설레지 않나? 우리도 이제, 일상에 가치를 제공하는 서비스의 데이터베이스를 구축해 그 가치들을 직접 실현할 수 있는 능력을 지니게 되었다. 마음만 먹으면, 우리도 세상 사람들의 삶을 위한 서비스를 제작할 수 있는 능력을 얻은 셈이다. 잠시 멈추고, 우리가 배웠던 것들에 대해 위대함을 느껴보자. 포스팅 목적 이번 포스팅에선, 조금의 욕심을 더 부린, 데이터베이스에 대해서 포스팅해보려 한다. 우리 서비스가 10만명 유저가 있다고 가정하자. 이때 데이터베이스는 하나로, 10만명의 유저 이벤트에 대해서 처리해야 된다. 어떨거 같나? 데이터베이스 오직 하나로 수만명의 요구사항을 모두 받아주기란 유저 한명한명의 처리에서 신속하고..
[데이터베이스] 데이터베이스 가이드북, 정규화 [4]
·
📚 스터디/데이터베이스
이젠 약간의 쉬어가는 쉬는시간이자, 데이터베이스에 대해 좀 더 깊게 이해할 수 있는 지식을 배워볼 시간이다. 우린 데이터베이스를 사용해서 일상의 문제들을 손쉽고 간편하게 해결해주는 세상 속에서 살아가고 있다. 휴대폰으로 간편하게 어플의 서비스들을 이용해 이동할 지역까지의 최적경로를 찾을 수 있다. 친구들이나 비즈니스 관계에 있는 사람들과 커뮤니티 어플로 우린 직접 만나지 않아도, 전화 통화하지 않아도, 간편하게 연락할 수 있다. 정말 세상은 변화했고, 앞으로도 꾸준히 더 나은 세상이 되길 변화하는 중이다. 그런 삶의 변화를 가능케한 역할이 데이터베이스도 한 몫을 했다. 수많은 사람들의 데이터들을 저장하고, 서비스를 기능케한 저장 공간이 데이터베이스이다. 그렇다. 우린, 데이터베이스 라는 도구로 삶에서 수..
[데이터베이스] 데이베이스 설계도, ERD 설계 [3]
·
📚 스터디/데이터베이스
[데이터베이스] ERD 그게 뭔데? ERD Entitity Relationship Diagram [ERD] 는 시스템의 엔티티들이 무엇이 있는지 어떤 관계를 가지고 있는지를 구조적으로 나타낸 다이어그램이다. 앞서, 개념적 데이터 모델링으로 기획 상황을 속성, 그 ceo-uk22.tistory.com 앞선, 포스팅으로 이론적인 개념으로 ERD에 대해서 알아보았다. ERD 는 데이터베이스 표현으로 속성, 그룹, 관계를 칼럼, 테이블, PK,FK 로 바꾼 다이어그램이다. 이젠, 직접 ERD 설계를 해볼차례이다. 왜 ERD 설계를 해야될까? ERD 에 대해 처음 접하는 사람이라면 이에 대해 의심의 여지가 충분히 있다. 데이터베이스 구성하는데, 왜 ERD 설계를 강조하는지 처음엔 이해가 되지 않는다. "그냥, 바..
[데이터베이스] ERD 그게 뭔데? [2]
·
📚 스터디/데이터베이스
ERD Entitity Relationship Diagram [ERD] 는 시스템의 엔티티들이 무엇이 있는지 어떤 관계를 가지고 있는지를 구조적으로 나타낸 다이어그램이다. 앞서, 개념적 데이터 모델링으로 기획 상황을 속성, 그룹, 관계 카테고리로 정리했다. ERD는 개념적 데이터 모델링을 데이터베이스 표현인 칼럼, 테이블, PK & FK 로 설계하는 행위이다. 따라서, 속성, 그룹, 관계 카테고리로 표현된 개념적 데이터 모델링을 데이터베이스 표현으로 나타낸 다이어그램을 ERD라고 한다. ERD 구성요소 개념적 데이터모델링은 다음과 같이 3가지 카테고리로 구분한다. 1. Entity (그룹) 2. Attribute (속성) 3. Relation (관계) 데이터베이스 표현으로 살펴보면, 1. Entitiy ..
[데이터베이스] 데이터 모델링의 시작, 개념적 데이터모델링 [1]
·
📚 스터디/데이터베이스
데이터 모델링 무한하게 엃혀있는 복잡한 현실을 표로 정리할 수 있게 도와주는 행위이자, 기술이다. 웹 사이트로 생각하면, 웹 UI 기획서를 제공받고 기획한 사항대로 동작할 수 있도록 데이터들을 저장하는 표를 모델링하는 것을 데이터 모델링이라고 한다. 정리해서, 데이터 모델링이란, 데이터베이스를 구성할 때 사용되는 기술이다. 데이터 모델링에 대한 과정을 구체적으로 알아두면, DB 구성 시 수월하게 진행할 수 있다. 데이터 모델링 순서 1. 업무 파악 2. 개념적 데이터 모델링 3. 논리적 데이터 모델링 4. 물리적 데이터 모델링 데이터 모델링 순서는 위와 같이 진행된다. 자세한 사항은 앞으로 포스팅을 통해 하나씩 알아본다. 업무 파악 소통 & 기획서를 토대로 수행되어지는 과정이다. 사실, 이 과정에선 개념..
[데이터베이스] 데이터 모델링을 시작하며
·
📚 스터디/데이터베이스
학습 동기 2022년, 작년 백엔드 개발자로써 활동을 하면서 서버 개발 능력, 데이터 베이스 다루는 방법들을 직접적으로 습득했다. 그 경험이후론, 나는 말로 설명하지 못할만큼 큰 성장을 할 수 있었다. 프로젝트 개발을 진행하는 방법부터, 이끄는 방법까지 아주 많은 것들을 배우고, 터득할 수 있었다. 하지만, 시니어 개발자까지의 개발 능력을 가지고 있진 않았다. 작년에 프로젝트를 끝내고 서버 개발에 대한 자신감으로 '해커톤'에 참가했다. 무박 2일간 서비스 기획부터 개발까지 진행하는 대회로, 백엔드 개발자로 참가했다. 해커톤에서 백엔드 개발에 발휘한 능력은.. 처참했다. 모든 서비스 API 중 나는 1개만 구현했었다. 그렇다.. 백엔드 개발자로써 프로젝트를 수행한 경험이 있지만, 각종 백엔드 개발에 대한 ..
[DataBase] 어제까지는 잘되다가 갑자기 오늘 DB timeout 에러.... - 네트워크 넌 도대체 누구냐
·
📚 스터디/데이터베이스
오늘 겪었던 경험은 진짜 의문이다.. 오랜만에 학술정보관에서 게시글 삭제 API를 구성하고 node 서버를 가동시키고 postman으로 url 접근을 했다. (어제와 똑같은 동작을 했지만....) node에서 할당한 라우터로 접근까지는 가능했던 것 같다.. UserController.js 에서 validation 처리한 코드는 실행됨. console.log(); console을 찍어보면서, 어디서 에러가 발생하는지 알 수 있음. DB에서 timeout 에러가 발생했다. 터미널에서 제공한 에러 코드는 다음과 같다. Error: connect ETIMEDOUT 에러의 코드는 node.js 서버에서 DB 서버로 보낸 요청을 처리하는 시간이 timeout 설정된 시간을 초과해서 timedout 에러가 발생했다...
[DataBase] Datagrip의 license 만료
·
📚 스터디/데이터베이스
오랜만에 UMC 강의를 들으려고 하다가 Datagrip에서 알림이 왔다. 알림은 Datagrip의 license 무료 체험기한이 만료되어서 이어서 Datagrip IDE를 사용하려면 구매하라는 알림이었다. 별로 사용하지 않았는데 유료화가 되는게 억울해서? 구글신에게 Datagrip license 만료에 대해 검색해보았다 우연히 아래의 블로그를 통해 대학교 학생 인증을 하면 일정 license 범위로 Datagrip IDE를 사용할 수 있다는 것을 찾았다. [IT] 데이터 그립(DataGrip) 학생 인증하고 무료로 사용하기 인트로 안녕하세요. 오늘은 데이터베이스 관리 툴인 데이터 그립을 무료로 사용하는 방법에 대해 알아보겠습니다. 목차 1. 데이터 그립이란? 2. 데이터 그립 학생인증 및 계정 활성화 데..