[ SQLD ] SQL 연산 / Alias / CONCAT / IN / LIKE / NOT
·
IT_STUDY/SQLD
SQL 연산 순서 FROM WHERE GROUP BY HAVING SELECT ORDER BY select 컬럼명 --> 전체 열 중 원하는 열만 선택 (열 제어) from 테이블명 where 조건식; --> 전체 행 중 원하는 행만 선택 (행 제어) DML (데이터 조작어 : Data Manipulation Language) - Select(조회) : 데이터베이스에 들어있는 데이터를 조회하거나 검색하기 위한 명령어를 말하는 것이다. - Insert(삽입), Update(수정), Delete(삭제) : 데이터베이스의 테이블에 들어있는 데이터에 변형을 가하는 종류의 명령어 DDL (데이터 정의어 : Data Definition Language) - Create(생성), Alter(변경), Drop(삭제),..
[ SQLD ] 데이터 모델과 성능 (2)
·
IT_STUDY/SQLD
로우 체이닝 - 로우의 길이가 너무 길어서 데이터 블록 하나에 데이터가 모두 저장되지 않고 두 개 이상의 블록에 걸쳐 하나의 로우가 저장되어 있는 형태 로우 마이그레이션 - 데이터 블록에서 수정이 발생하면 수정된 데이터를 해당 데이터 블록에서 저장하지 못하고 다른 블록의 빈 공간을 찾아 저장하는 방식 - 로우 체이닝과 로우 마이그레이션이 발생하여 많은 블록에 데이터가 저장되면 DB 메모리에서 디스크 I/O가 발생할 때 많은 I/O가 발생하여 성능 저하 발생 트랜잭션을 분석하여 적절하게 1:1 관계로 분리함으로써 성능 향상이 가능하도록 해야 한다. PK에 의해 테이블을 분할하는 방법 (파티셔닝) RANGE PARTITION : 대상 테이블이 날짜 또는 숫자값으로 분리가 가능하고 각 영역별로 트랜잭션이 분리..
[ SQLD ] 데이터 모델과 성능 (1)
·
IT_STUDY/SQLD
성능 데이터 모델링 - DB 성능 향상을 목적으로 설계 단계의 데이터 모델링 때부터 정규화, 반정규화, 테이블 통합, 테이블 분할, 조인 구조, PK, FK 등 여러가지 성능과 관련된 상향이 데이터 모델링에 반영될 수 있도록 하는 것 - 분석/설계 단계에서 데이터 모델에 성능을 고려한 데이터 모델링을 수행할 경우 성능 저하에 따른 재업무 비용을 최소화 할 수 있음 - 데이터의 증가가 빠를수록 성능 저하에 따른 성능 개선 비용은 기하급수적으로 증가하게 된다. 성능 데이터 모델링 고려사항 순서 데이터 모델링을 할 때 정규화를 정확하게 수행 DB 용량산정을 수행한다. DB에 발생되는 트랜잭션의 유형을 파악한다. 용량과 트랜잭션의 유형에 따라 반정규화를 수행 이력 모델의 조정, PK/FK조정, 슈퍼/서브타입 조..
[ SQLD ] 데이터 모델링의 이해
·
IT_STUDY/SQLD
데이터 모델링의 중요성 및 유의점 중복 : 같은 시간 같은 데이터 제공 비유연성 : 사소한 업무 변화에 데이터 모델이 수시로 변경되면 안 된다. 데이터 정의를 사용 프로세스와 분리한다. 비일관성 : 데이터 간 상호 연관 관계에 대해 명확히 정의해야 한다. 데이터 모델링 개념적 데이터 모델링 논리적 데이터 모델링 물리적 데이터 모델링 데이터 독립성 요소 외부 스키마 : 개개 사용자가 보는 개인적 DB 스키마 개념 스키마 : 모든 사용자 관점에서 통합한 전체 DB 내부 스키마 : 물리적 장치에서 데이터가 실제적 저장 데이터 독립성 논리적 독립성 : 개념 스키마 변경, 외부 스키마에 영향을 안 준다. 물리적 독립성 : 내부 스키마 변경, 외부/개념 스키마에 영향 안 준다. Mapping 상호 독립적인 개념을 ..
[정보처리기사 실기] 9. 응용 SW 기초 기술 활용
·
IT_STUDY/정보처리기사
[9] 응용 SW 기초 기술 활용 (1) 운영체제 - 사용자가 컴퓨터 하드웨어를 쉽게 사용할 수 있도록 인터페이스를 제공해주는 소프트웨어 특징 : 편리성 제공, 인 터페이스 기능, 스케줄링, 자원 관리, 제어 기능 운영체제 = 커널 + 쉘 커널 : 하드웨어 관련 내부적인 역할 쉘 : 운영체제의 가장 바깥 부분에서 사용자 명령에 대한 처리 종류 : 윈도즈, 유닉스, 리눅스, 맥, 안드로이드 윈도즈 특징 GUI 제공 선점형, 멀티테스킹 방식 제공 자동 감지 기능 제공 (Plug and play) OLE 사용 유닉스 특징 대화식 다중 작업 기능 다중 사용자 기능 이식성 : 90% 이상 C언어로 구현 계층적 트리 구조 파일 시스템 제공 (2) 리눅스/유닉스 기본 명령어 chmod : 특정 파일 또는 디렉토리의 ..
[정보처리기사 실기] 8. 애플리케이션 테스트
·
IT_STUDY/정보처리기사
[8] 애플리케이션 테스트 (1) 소프트웨어 테스트 원리 테스팅은 결함이 존재함을 밝히는 것 완벽한 테스팅은 불가능 개발 초기에 테스팅 시작 요르돈 법칙(눈덩이 법칙) : 개발 초기에 테스팅 하지 않으면 비용이 커진다. 결함 집중 파레토 법칙(Pareto Principle) : 오류의 80%는 전체 모듈의 20%안에서 발견된다. 살충제 패러독스(Pesticide Paradox) : 동일한 테스트 케이스에 의한 반복적 테스트는 새로운 버그를 찾지 못함 테스팅은 정황에 의존적 : 소프트웨어의 성격에 맞게 테스트 실시 오류 - 부재의 궤변 : 요구사항을 충족시키지 못한다면, 결함이 없다고 해도 품질이 높다고 볼 수 없음 (2) 테스트 시각에 따른 분류 검증(Verification) : 소프트웨어 갭라 과정을 ..
[정보처리기사 실기] 7. 소프트웨어 개발 보안 구축
·
IT_STUDY/정보처리기사
[7] 소프트웨어 개발 보안 구축 (1) S/W개발 보안의 3대 요소 기밀성 (Confidentiality) : 인가되지 않은 개인 혹은 시스템 접근에 따른 정보 공개 및 노출을 차단하는 특성 무결성 (Integrity) : 정당한 방법을 따르지 않고서는 데이터가 변경될 수 없으며, 데이터의 정확성 및 완전성과 고의/악의로 변경되거나 훼손되지 않음을 보장하는 특성 가용성 (Availability) : 권한을 가진 사용자나 애플리케이션이 원하는 서비스를 지속해서 사용할 수 있도록 보장하는 특성 (2) DoS(Denial of Service) 공격자 컴퓨터 1대, 직접 공격 - 시스템을 악의적으로 공격해 해당 시스템의 자원을 부족하게 해 사용하지 못하게 하는 공격 DoS 공격 종류 SYN 플러딩 (Flood..
[정보처리기사 실기] 6. 서버 프로그램 구현
·
IT_STUDY/정보처리기사
[6] 서버 프로그램 구현 (1) 개발도구 - 빌드 도구 - 구현 도구 - 테스트 도구 - 형상 관리 도구 (2) 서버 하드웨어 개발 환경 - 웹 서버 : 정적 콘텐츠 (CSS, Javascript, Image)처리 / Spache 웹 서버 - 웹 애플리케이션 서버 : 동적 콘텐츠 (Servlet, JSP) 처리 / Tomcat - 데이터베이스 서버 : MySQL, Oracle - 파일 서버 : HDD, SDD (3) 소프트웨어 개발 환경 - 운영체제 : 하드웨어를 사용자가 편리하고 유용하게 사용하기 위한 소프트웨어 - 미들웨어 : 컴퓨터와 컴퓨터 간의 연결을 쉽고 안전하게 할 수 있게 - DBMS : 데이터베이스 관리 (4) 형상 관리 : 소프트웨어 개발을 위한 전체 과정에서 발생하는 모든 항목의 변경..