개념적 데이터 모델링 개념적 데이터 모델링이란? 업무라는 복잡한 현실속 문제에서, 특징을 추출하여 개념적인 데이터 모델을 세우는 작업이다. 업무와 논리적 데이터 모델링 단계를 연결하는 가교 역할을 하지만, 사실 개념적 데이터 모델링이 데이터 모델링의 절반 이상을 먹고 들어간다고 볼 수 있다. 이 단계에서 개념적 데이터 모델을 잘 설계한다면, 이후의 단계는 그냥 개념적 데이터 모델을 차근차근 컴퓨터 레벨로 옮기는 작업이기 때문이다. 개념적 데이터 모델링을 하는 이유이자 장점은 크게 두 가지가 존재한다. 현실에서 필요한 정보를 추출하는 필터의 역할 개념에 대해서 다른 사람과 대화할 수 있게 하는 언어의 역할 우리가 복잡한 현실을 모방할 때, 우리에게 필요한 정보만을 추출하고, 나머지 불필요한 부수적인 정보들..
본 글은 생활코딩 관계형 데이터 모델링 강의를 수강하고 이를 정리한 글입니다. 관계형 데이터 모델링이란? 현실은 믿을 수 없을 정도로 매우 복잡합니다. 이렇게 복잡한 현실의 문제를 해결하기 위해 동원된 컴퓨터라는 기계는, 매우 강력하지만 똑똑하지는 않은 기계입니다. 이 기계를 활용하기 위해서는, 현실의 문제를 기계가 이해할 수 있게 변형하는 작업이 필요합니다. 일반적으로 모델링이란 말은 ‘현실을 모방한 것’을 의미합니다. 현실은 매우 복잡하기에 이를 그대로 복제하는 것은 불가능하지만, 일반적으로 우리가 요구하는 어떤 기능을 만족하는 가상의 개념을 모방하는 것은, 비교적 매우 쉽습니다. Data Modeling이란 매우 복잡한 현실의 문제를 컴퓨터가 이해할 수 있는 데이터로 모방하는 것을 의미합니다. 인간..
본 글은 갖고노는 MySQL 데이터베이스 by 얄코 강의를 수강하고 이를 정리한 글입니다. 식별자와 인덱스 PK, Unique, FK (기본키, 고유키, 외래키) 1. 기본키(Primary Key, PK) 중복되지 않는 고유값 NOT NULL PK는 테이블 당 하나만 있어야 함 -- 기본키 넣는 방법 1 CREATE TABLE people ( first_name CHAR(2) **PRIMARY KEY**, last_name CHAR(3), nickname VARCHAR(10) ); -- 기본키 넣는 방법 2 CREATE TABLE people ( first_name CHAR(2), last_name CHAR(3), nickname VARCHAR(10), **PRIMARY KEY (first_name)**..
본 글은 갖고노는 MySQL 데이터베이스 by 얄코 강의를 수강하고 이를 정리한 글입니다. 데이터 조작하기 1. MySQL 설치하기 MacOS에서는 homebrew를 이용해서 간단하게 설치할 수 있다. $ brew install mysql MySQL을 설치하고서는, 보안을 강화하기 위해 다음 명령어를 실행하여 보안 패키지를 설치할 것이 권장된다. $ mysql_secure_installation 그렇다면 여러 가지 옵션들이 나오는데(패스워드 설정, Anonymous 유저 삭제, 기본 테스트 스키마 삭제할 것인지 등), 원하는 것을 선택해주면 된다. 나의 경우는 전부 Y로 체크했다. 비밀번호같은 경우는 강도를 설정하라는 안내도 나올 수 있다. MySQL 서버를 실행하려면 다음 두 가지 명령어 중 하나를 이..
본 글은 갖고노는 MySQL 데이터베이스 by 얄코 강의를 수강하고 이를 정리한 글입니다. SELECT 심화, 복합적인 데이터 가져오기 1. 서브 쿼리(Sub Query) 서브 쿼리는 쿼리 안에 들어가있는 또다른 쿼리를 말한다. 1. 비상관 서브 쿼리 메인 쿼리 문과 서브 쿼리 문이 서로 관계가 없는 것, 테이블을 서로 참조하지 아니하는 것 SELECT CategoryID, CategoryName, Description, (SELECT ProductName FROM Products WHERE ProductID = 1) FROM Categories; -- Categories 내에서, ProductID = 1인 ProductName을 Products에서 뽑아냄 CategoryID CategoryName De..
본 글은 갖고노는 MySQL 데이터베이스 by 얄코 강의를 수강하고 이를 정리한 글입니다. RDBMS 관계형 데이터베이스 관리 시스템(RDBMS)는 표를 기준으로 데이터를 저장 및 관리하는 시스템을 의미한다. 역사적으로 오래 사용되어 왔고 많은 곳에서 사용되는, 가장 기본이 되는 데이터베이스 시스템이다. 트랜잭션 취소도 쉬워 안정적이고, 또한 데이터의 구조를 일관적으로 가져갈 수 있다는 장점때문에 널리 이용된다. SQL이라는 데이터베이스 관리용 언어를 사용하게 되며, RDBMS의 대표적인 제품으로는 MySQL, PostgreSQL, MSSQL 등이 있다. 본 글은 MySQL에서 사용되는 SQL의 문법을 정리한 글이다. 한편 이 링크로 들어가면 MySQL 쿼리문을 실제로 시험해볼 수 있는 에디터가 나온다...
이 글은 Edwith의 Essential Hands-On 강의 4강을 듣고 이를 정리한 글입니다. VPC 생성하기 VPC 생성하기 NCP를 이용하기 위해서는 우선 VPC를 생성하여야 합니다. VPC는 Networking 탭의 VPC 탭에 있습니다. 위 페이지에서 VPC 생성 버튼을 누릅니다. IP 주소 범위는 가장 기본값으로 설정하였습니다. 생성 중인 상태가 생성 완료로 바뀌면 VPC가 생성된 것입니다. 이렇게 뜨면 성공입니다. ACL 설정 한편 다음으로 해야 할 설정은 ACL입니다. Network ACL → ACL Rule 탭에 들어가보면, 기본 생성된 ACL이 들어가 있는 것을 확인할 수 있습니다. 다만 기본적으로 생성되는 디폴트 ACL은 잘 사용하지 않고, 요구 사항에 맞추어서 개별 ACL을 만들어..
Python으로 Notion Database에 데이터 업로드하기 이전 글: Selenium과 BeautifulSoup으로 네이버 클라우드 플랫폼 가이드 정보 추출하기 이전 글에서, Selenium과 BeautifulSoup을 사용해서 네이버 클라우드 플랫폼 가이드 정보를 추출해서, JSON 포맷으로 저장했다. 이번 글에서는, 저장된 정보를 Notion Database에 추가해 보겠다. 사실 과정 자체는 은근히 간단한데, 노션 API 자체의 한계로 노가다가 필요하다. API 키 발급받기 & 데이터베이스 ID 확인하기 Notion 내 API 통합 페이지에서, API를 하나 발급받는다. 그리고 '기능' 탭에 들어가서, 권한을 확인해 준다. 콘텐츠 읽기, 업데이트, 입력 등의 권한이 체크돼 있는 지 확인해준다...