Quick DBD 사용 후기

써니·2021년 10월 9일
0

UMC-Server

목록 보기
3/6
post-thumbnail

UMC 서버 3번째 수업의 막바지에 차주 DB수업에서 ERD 설계시 필요한 Quick Database Diagram 툴을 준비해야 한다는 것을 전달 받았다. 어차피 수업시간에 다룰 내용이니 예습 겸 ERD에 대해서 알아보고, Quick DBD사용후기를 살펴보겠다!
링크 : QuickDBD

ERD = Entity Relationship Diagram

  • "존재하는 것(Entity)들의 관계(Relationship)을 나타낸 도표(Diagram)"
    즉, 데이터 베이스 주고를 한눈에 알아보기 위해 그리는 다이어그램이다.
  • ERD 표기법은 하나로 지정되어 있지 않지만, 많이 통용되는 IE (Information Engineering) 표기법을 간단히 표기하면 아래와 같다.
  • Entity: 정의 가능한 사물/개념/이벤트 ('테이블')
  • Entity Attribue: 각 entity 개체가 갖고 있는 속성
  • constraint: 제약 조건 (Primary Key, Foreign Key, Not Null 등)
  • 용도 :
  1. 데이터 베이스 설계할 때
  2. 데이터 베이스 사용 중 복잡한 쿼리문을 작성하기 위해 기존의 구조를 디버깅을 해야 할 때
  3. 데이터 베이스 생성하거나 수정해야 할 때 MySQL Workbench 등의 툴을 이용할 수 있다
  4. 데이터의 흐름이나 요구사항 바로 확인--> 특히나 협업에서 유용하게 쓸 수 있을 것 같다!

Quick DBD 1년 free 권한을 받기 위해서

  1. Quick DBD free trial을 간단히 사용해 본 후 블로그 review 작성
    -주의할 점: 작성한 리뷰가 500단어 이상이어야 한다!
    (500자는 언제쯤 넘을까....ㅎㅎ)
  2. promo@quickdbd.com으로 리뷰를 작성한 블로그의 링크를 담아 free권한 신청 메일을 발신
  3. 확인 메일을 받으면 메일의 안내 내용대로 해당 이메일로 QuickDBD에 로그인하여 등록
  4. 등록 후에 확인 메일을 받음
  5. Quick DBD 오른쪽 상단에 Account에 들어가 Pro plan expires on - email confirmed 부분을 확인하면 1년 free 권한 발급 끝!

위의 순서대로 진행하기 위해 우선 Quick DBD 무료 체험을 해봤다. 예시로 나와있던 것을 참고하여 나만의 테이블 정의를 해보았다. 테이블을 명명하고 다음 행부터 칼럼과 contraints들을 작성하면 된다. 좌측에 타이핑하여 정의한 테이블이 우측에 시각화 되어서 작성 현황과 구조를 바로 확인할 수 있다. 이 덕분에 작성하고자 했던 의도와 다르게 정의했을 경우 바로 수정이 가능했다. 또한, 코드로 작성하는 과정에서 실시간으로 오류나 에러를 검출해내어, 문법이나 옵션들을 잘못 입력했을 경우 바로 확인할 수 있으며, 사용자가 직접 오류를 찾아내지 않아도 되는 편리함이 있었다. 우측에 그려지는 표의 위치도 자유롭게 조절할 수 있어서 원하는 구조로 조정할 수 있다. 또한 위의 예시 사진에서 확인할 수 있듯, 각 entity의 attribute 및 contraint이 아이콘으로 나타나며, 부모의 키를 받는지의 여부, 1:N 관계가 성립하는 지의 여부 등 두 개체의 관계가 선으로 나타나 그림으로써 확인이 가능하다. 확대 축소 또한 부드럽게 나타나서 매우 만족스러웠다 :) 그리고 SQL문 또한 MySQL에서 지정해야되는 것을 단순하게 타이핑할 수 있어서 편리했다. 예를 들어 primary keyPM으로, foreign keyFK로 작성하면 끝난다. 또한 이를 작성하고 나면 각각 foreign key는 즉시 화살표로 나타난다. 전공자로서도 데이터베이스 설계 및 데이터 전처리 경험이 부족하여 SQL문에 익숙하지 못했는데, 예시를 보면서도 쉽게 기능들을 파악할 수 있었고 별도의 튜토리얼 없이도 사용하는 것에 불편함을 느끼지 못했다.

상단의 export 탭으로 원하는 DB 형식으로 추출이 가능하며, 문서형식의 파일, 이미지 파일이나 pdf 파일 형식도 지원된다. 반대로 IMPORT 기능을 통해 기존의 SQL파일을 불러와 작업을 하는 것도 가능하다.

아직 데이터 베이스를 설계하고 서버를 구축하여 프로젝트를 돌려본 경험은 없지만, 다른 팀 프로젝트를 진행할 때면 팀원들과 프로그램의 구조를 설계하는 것이 가장 중요한 것 같다. 보통 많이 사용하는 플랫폼이 무료롤 사용이 가능한 draw.io 등의 플랫폼이었는데, 이런 플랫폼은 애초에 Database diagram 설계를 위한 플랫폼이 아니였기 때문에 일일이 아이콘을 검색하고 크기를 조정하는 등 불필요한 절차가 필요할 때가 많다. 하지만, Quick DBD과 같은 ERD 툴을 사용하면 이론적으로 배운 데이터 베이스 설계에서는 막막하게 느껴진 데이터 베이스 설계 작업이 보다 수월해질 것 같다.

앞으로 UMC 활동이나 졸업작품 등의 프로젝트를 진행하기 위해서는 규모가 큰 데이터 베이스 설계를 해야 되는데 이 DBD툴을 통해서 진행을 하면 훨씬 수월할 것 같다. 특히나 졸업작품은 네트워크 관련 프로젝트이기 때문에 DB로 들어가는 데이터들의 이름, 입력 값들에 대한 제약 조건이 많고 중요할 것이며, 데이터들 간의 관계가 중요할 것이기 팀원들과 함께 데이터 베이스 설계를 하는 과정에 ERD 설계가 필요할 것이다. 또한 인공 지능 기반의 프로젝트이기 때문에, 인공 지능 모델 학습에 필요한 데이터 전처리를 위한 구조 설계 또한 중요할 것이다. 더불어 산학 연계 프로젝트인 만큼, 협렵 회사에게 보여줄 자료로 사용하기에도 적합할 것 같다! :) UMC 활동으로는 어떤 프로젝트를 만들지 아직 모르지만, 데이터 베이스 설계는 앱 개발자나 백엔드 개발자 뿐만 아니라, 프론트엔드나 디자이너들에게도 중요할 것으로 생각된다. 여러 사람들과 프로그램의 구조에 대해서 논의하기 위해서는 ERD가 꼭 필요할 것이다.
그리고, 프로젝트를 진행하는 과정에서도 데이터 베이스를 수정해야 되거나, 작성한 데이터 베이스의 현황을 점검하고 참고할 때도 유용할 것 같다. 프로그램 작성을 위해 데이터 베이스를 참고해야 할 때 GUI 기반의 데이터 베이스 툴도 있지만, diagram으로써 구조를 저장해둔 것이 있다면 훨씬 빠르고 직관적으로 파악한 후에, 빠른 작업을 할 수 있을 것이다. 특히나 여러 단계를 거쳐서 작성해야 되는 Join문 처럼 복잡한 Query문을 작성할 때 직관적인 database diagran을 참고하면서 작성할 수 있을 것으로 기대된다. 이처럼 프로젝트를 진행하기 전 프로그램의 스펙을 산정하고 디자인할 때 Quick DBD로 협업하는 팀원들과 함께 ERD를 확인하며 데이터 베이스의 구조에 대해 함께 구상하고, 작업하는 과정에서도 참고할 자료로써 확인할 계획이다.

참고
https://velog.io/@ecvheo1/Quick-DBD-%ED%9B%84%EA%B8%B0
https://gngsn.tistory.com/48

0개의 댓글