Database 6

6. 파이썬 기반 크롤러

1. 크롤링(Crawling) vs 스크래핑(Scraping) 개념 및 기술 스택웹 크롤링 (Web Crawling): 조직적·자동화된 방법으로 웹을 순회하며 하이퍼링크를 탐색·수집하고 인덱싱(색인)하는 '무한 웹 순회 및 링크 수집 기술' (ex: 구글 검색 엔진 봇)웹 스크래핑 (Web Scraping): 정해진 특정 웹 페이지에 타겟팅하여 우리가 원하는 특정 알갱이 데이터(가격, 제목, 리뷰 등)만 도려내어 구조화된 파일로 보관하는 '데이터 추출 기술'🛠️ 수집 대상에 따른 핵심 기술 스택정적 페이지 데이터 추출 (HTTP 통신):requests, urllib: 서버에 HTTP 요청을 보내고 순수한 HTML 소스 코드를 응답받는 라이브러리BeautifulSoup: 받아온 HTML 문자열을 메모리에..

5. ERD 정규화 및 비정규화

1. ERD 정규화(Normalization) 전략 : 무결성 확보정규화는 데이터의 중복을 최소화하고 일관성을 확보하여, 데이터를 다룰 때 발생하는 이상 현상(Anomaly: 삽입·수정·삭제 이상)을 구조적으로 제거하기 위해 테이블을 쪼개어 나가는 과정입니다.1️⃣ 제1정규화 (1NF) : 원자값 확보핵심 개념: 테이블의 모든 속성은 더 이상 쪼개질 수 없는 단 하나의 원자값(Atomic Value)만 가짐해당 현상: 하나의 칸(Cell)에 여러 개의 데이터가 쉼표(,) 등으로 나열되어 있는 상태해소 전략: 중복 그룹을 분리하여 행(Row)을 늘리거나 별도의 하위 테이블로 독립실무 예시: [학생] 테이블의 '취미' 컬럼에 독서, 축구가 동시에 있다면 ➔ [학생취미] 테이블을 신설해 분리2️⃣ 제2정규화 ..

4. ERD 설계

1. ERD 설계의 개념과 궁극적 의의ERD 설계는 단순한 테이블 드로잉이 아니라, 모호한 비즈니스 도메인을 표준 기호로 추환하여 단 하나의 의미로 고정하는 고도의 엔지니어링 및 추상화 과정입니다.비용의 기하급수적 절감 (선 설계 후 구현):코딩 및 테스트 단계에서 데이터 구조 결함이 발견되면 시스템 전체를 뜯어고쳐야 하므로 막대한 재작업 비용이 듦.설계 단계에서의 수정은 지우개나 툴 클릭 몇 번으로 가능하여 리스크를 선제 해결이해관계자 간의 번거로운 번거로움 해소 (Bridge): 현업 실무자(비즈니스 언어)와 개발자(데이터/코드 언어) 사이의 언어 격차를 연결하는 공통의 시각 언어(Universal Visual Language) 역할을 수행데이터 무결성(Integrity) 확보:코드는 버그가 나면 패..

3. ERD 개요

1. 데이터 모델링(Data Modeling)의 이해🔹 데이터 모델링이란?현실 세계의 복잡한 비즈니스 요구사항(사람, 사물, 행위 등)을 추상화, 단순화, 명확화하여 컴퓨터 시스템이 이해하고 처리할 수 있는 데이터베이스 구조로 설계하는 전체 공정입니다.특징추상화( Abstraction) : 정보를 일정한 형식에 맞춰 표현단순화(Silmplification) : 누구나 이해할 수 있게 표기법으로 규격화명확화(Clarity) : 오해를 방지하고 한 가지 의미로 해석되게 함🔹 점진적으로 발전하는 3단계 파이프라인데이터 모델링은 한 번에 완성되지 않으며, 비즈니스 관점에서 하드웨어 관점으로 구체화되는 생명 주기를 가집니다.개념적 데이터 모델링 (Conceptual Modeling)목적: 핵심 엔터티(Enti..

2. SQL 기초

1. 데이터 제어 언어 (DCL: Data Control Language)데이터베이스의 보안, 접근 권한 관리, 무결성 유지를 위해 계정에 권한을 부여하거나 회수하는 최상위 통제 계층입니다.GRANT (권한 부여): 특정 사용자 계정에 DB 객체(테이블, 뷰 등)의 조작/정의 권한 부여문법 조합: GRANT [권한] ON [대상] TO [계정];REVOKE (권한 회수): 이미 부여된 권한을 박탈하여 회수문법 조합: REVOKE [권한] ON [대상] FROM [계정];FLUSH PRIVILEGES;: 변경된 권한 설정을 MySQL 시스템 메모리에 즉시 동기화(재로드)하는 필수 명령어 -- [준비] 모든 IP('%')에서 접속 가능한 'ana_min' 계정 생성 CREATE USER 'ana_min'..

1. Database 개요

1. 데이터(Data)의 정의와 분류🔹 데이터와 정보데이터(Data): 단순한 수치나 문자 (예: 38)정보(Information): 데이터에 문맥(Context)과 의미가 부여된 가치 있는 형태 (예: 오늘 서울의 최고 기온은 38°C이다.)🔹 형태 및 구조화 수준에 따른 분류정형 데이터(Structured Data): 고정된 틀(테이블 구조)이 있고 연산이 빠른 데이터 (예: RDBMS의 이름, 나이 등)반정형 데이터(Semi-structured Data): 고정된 틀은 없으나 데이터 내에 태그나 메타데이터가 포함된 데이터 (예: JSON, XML)비정형 데이터(Unstructured Data): 형태가 없고 규칙성이 없는 데이터 (예: 이미지, 영상, 오디오, 텍스트 원문)🔹 속성 및 시간에 ..