본문 바로가기
반응형

분류 전체보기468

SQL 기본문법정리1(DDL/DML/DCL/TCL) 데이터 정의어(DDL) 테이블의 구조를 정의함 CREATE, ALTER, DRTOP,TRUNCATE 데이터 조작어(DML) 데이터 조회/삽입/삭제/변경 SELECT, INSERT, UPDATE ,DELETE 데이터 제어어(DCL) 데이터베이스에 접근권한 GRANT, REVOKE 트랜잭션 제어어(TCL) 트랜잭션 제어명령어 COMMIT, ROLLBACK, SAVEPOINT 1. DDL 데이터정의어 1) 테이블 생성 : CREATE문 create table tr_test( id int not null auto_increment, name varchar(10) not null not null, primary key(id) ) 2) 테이블 삭제 : DROP문 DRTOP table tr_test; 3) 테이블 삭.. 2020. 1. 20.
[Mysql아키텍쳐2] 스레드구조/IO매커니즘/InnoDB 내부구조 내부적으로 어떻게 작동는지 이해하기 출처 RealMysql 서적을 기반으로 이해한 내용 정리 1. Mysql스레딩구조 MySQL서버는 프로세스 기반이 아니라 '스레드'기반 (클라이언트 별로 커넥션을 주면서, 다수의 클라이언트가 연결되는 멀티스레드방식) 1) 포그라운드 스레드(클라이언트 스레드) 몇개? 최소한 서버에 접속된 클라이언트 수만큼 존재 무슨일? 사용자가 요청하는 쿼리문장을 처리하는 역할 어떤 요청이 있는데? 데이터를 MySQL의 데이터 버퍼에나 캐시로 부터 가지고 오는거, 버퍼나 캐시에 없으면 직접 디스크의 데이터나 인덱스 파일에서 읽어오는 작업 스토리지엔진에 따라 포그라운스레드가 하는일이 다름! MyISAM : 읽기 작업을 주로 하기 때문에 '디스크' 쓰기 작업까지 함 InnoDB : 데이터 .. 2020. 1. 20.
[Mysql 아키텍쳐1] 커넥션풀/Mysql엔진/스토리지엔진 내부적으로 어떻게 작동는지 이해하기 출처 RealMysql 서적을 기반으로 이해한 내용 정리 2020.01.19 - [Mysql 아키텍쳐1] 커넥션풀/Mysql엔진/스토리지엔진 2020.01.20 - [Mysql아키텍쳐2] 스레드구조/IO매커니즘/InnoDB 내부구조 2020.01.22 - [Mysql아키텍쳐3] InnoDB특징/MyISAM특징 1. 전체구조 1) 기본적으로 client-server구조 다수의 Client들이 하나의 DB 서버에 연결되는 구조 -> 클라이언트별 Connection 처리 -> 스레드증가 -> 멀티스레드 방식 이때 클라이언트가 접속해서 DB연결할 때 Connection Pool사용 왜 커넥션 풀을 사용해야하지? 한명의 클라이언트가 수행하는 DB커넥션도 많은데 클라이언트가 접속.. 2020. 1. 19.
정형데이터 vs 비정형데이터 (RDBMS VS NOSQL) 데이터를 구분하는 기준 1. 스키마 형태의 유무 (+스키마란? 데이터베이스를 구성하는 요소들 개체,속성,관계, 제약조건 등) 2. 연산가능 여부 (+연산이란? 데이터베이스와 통신하기 위해 SQL언어사용) 정형데이터 스키마 구조라는 특정한 형태를 가지고 있다.(ER모델로 관계를 정의가능) (+스키마 구조? 어떤 데이터가 테이블에 들어가고, 안들어가고를 정의하는 필드집합) 연산이 가능하다(관계 정의가 가능하다)(트랜잭션을 수행함) 마리아/오라클/MySQL과 같은 RDBMS에 저장합니다. 비정형데이터 스키마 구조라는 형태 없음(텍스트나 영상데이터처럼 특정한 형태가 없음) 연산도 불가능합니다.하지만 필요한 형식으로 저장이 되는 유연한 구조로 몽고디비와 같은 NoSQL에 저장합니다. 반정형데이터 정형데이터처럼 특.. 2020. 1. 19.
[NetWork/Web] 쿠키와 세션차이점 (+캐시) 쿠키 : 사용자의 브라우저에 저장 http통신을 할 때 http 헤더에 포함된 파일들 (이름 값 만료기간, 경로정보) 해당 사용자의 컴퓨터를 사용하기만 하면 쿠키에 입력된 값을 쉽게 확인할 수 있음->보안성낮음 클라이언트->서버 : request 서버->클라이언트 : 쿠키가 없음, 통신상태를 저장한 쿠키 response 클라이언트가 이 정보를 저장하고 있음 ->쿠키 다음 연결부턴 클라이언트->서버 : 쿠키를 넣어서 요청 세션 : 서버에 저장되는 쿠키 클라이언트와 서버의 통신상태, 중요한 데이터들 저장 브라우저를 종료할때까지 유지됨 서버에 직접 저장되서 보안성이 높음 -->로그인정보유지에 사용되는 정보 클라이언트->서버 : 세션id발급 서버->클라이언트 : 세션id를 쿠리를 이용해서 저장 클라이언트가 다시.. 2020. 1. 17.
[NetWork/Web] get방식 vs post방식 차이점 HTTP 웹상에서 클라이언트와 서버간에 요청/응답으로 데이터를 주고받는 프로토콜 클라이언트가 HTTP 프로토콜을 통해서 서버서에 요청을 보내면 서버는 요청에 맞는 응답을 클라이언트에게 전송한다. 이때 HTTP메소드 : 서버가 요청을 수행할 행동 그 중 하나인 GET방식 POST방식 공통점 클라이언트와 서버간에 요청/응답을 주고받는 메소드 중 하나 HTTP프로토콜을 사용하여 웹페이지->서버로 정보를 전송하는 방식 GET 방식 URL의 끝에 전송할 데이터의 파라미터를 붙여서 서버로부터 정보를 요청 요청을 전송할때 필요한 데이터를 쿼리스트링을 통해 전송 서버로부터 정보를 '조회'할때 사용 사용예시 : 로그인 -> 로그인정보를 서버에 select하는 용도, 전송해서 일치하는지 확인 EX) www.example-.. 2020. 1. 17.
OLAP/OLTP/DW/ETL 용어정리 1.OLTP: 트랜잭션 기반으로 하는 데이터작업 2.OLAP : 데이터들을 효과적으로 활용하기 위해 여러 관점에서 분석해서 정보화 하는 작업 *둘의 차이점 OLTP는 현재 업무의효율적인 처리에만관심이 있는데 그래서 최대목적은 데이터에 대한 무결성을 확보하는 것이다 트랜잭션은 동시에 수백,수천명의 사용자들이 수행하기 때문에. ex)금융의 계정계작업, 잘못해서 10원이라도 다른 계좌에 이체하면 손해가 엄청나다. 그래서 데이터의 분석보다는 트랜잭션 성능 및 데이터 무결성 확보를 위해 설계한다 OLAP는 의사결정에 도움이되는 데이터분석에 관심이 있음 데이터의 무결성을 확보할 필요가 없다 이미 무결성이 확보된 데이터를 ETL작업한 상태로 저장한 DW에서 이루어지기 때문에 솔루션 : CRM, 데이터웨어하우스, 데이.. 2020. 1. 17.
SI개발 / SM개발 차이점, 왜 이런 태도가 필요한가? SI (System Integration) 순수개발, 시스템통합프로젝트 기능위주의 프로그램개발 위(?)에서 요청한 기능이나 요구사항을 바탕으로 새로 기능 개발하는 역할 흔히 개발프로젝트를 한다면 요구사항분석/설계/개발/테스트 작업 프로젝트를 따오고, 관리하는 담당 (은행, 그래서 갑) 실제 개발하는 하청업체 (갑의 자회사나 IT회사) 그 개발을 또 외주주는 협력회사 SM(System Management) SI에서 개발한 시스템 유지보수,수정 만들어진 프로그램을 업무에 맞게 재정의하거나 수정하는 작업 개선사항이나 오류사항에 대해서 유지보수 오류수정/개선/기능추가/데이터제공/시스템안정화 시스템의 기능업그레이드나 문제사항을 수정하여 정상적으로 운영이되도록 시스템이정상적으로운영되는지점검하는것으로하루를시작 사용중.. 2020. 1. 16.
[Spring] MVC패턴 + Spring에서 MVC 패턴 디자인패턴 디자인 패턴 프로그래밍 형식을 정하는 일종의 약속이다. 객체 지향 프로그래밍 설계를 할 때 자주 발생하는 문제들을 피하기 위해 사용되는 패턴. 싱글톤 패턴이란? 애플리케이션이 시작될 때 어떤 클래스가 최초 한 번만 메모리를 할당하고(static) 그 메모리의 인스턴스를 만들어 사용하는 패턴. (인스턴스가 필요한 경우 똑같은 인스턴스를 여러 개 만드는 것이 아니라, 동일(기존) 인스턴스를 사용하게 하는 한다) *장점 ⓐ 고정된 메모리 사용으로 new 인스턴스를 사용하기 때문에 메모리 낭비를 막음 ⓑ static(전역) 인스턴스이기 때문에 다른 클래스에서 데이터를 공유하기 쉬움 * 단점 너무 많은 사용은 다른 클래스들 간의 결합도가 높아져 수정, 테스트가 어려워질 수 있다. MVC패턴이란? Mod.. 2020. 1. 16.
[NetWork] 도메인/DNS서버/CNAME 도메인 우리가 일상에서 웹브라우저에 입력하는 주소 중 우리가 알기 쉽도록 지정된 모든 주소 IP주소 실제 도메인주소를 웹에 입력하면 숫자로 구성된 주소로 인식함 ex) google.com으로 입력하면 여기에 해당하는 ip주소를 인식해서 컴퓨터에 접속하게 됨 DNS서버 (domain name system) 특정 컴퓨터의 주소를 찾기 위해서 (IP주소를 다 기억하기 어려워서 DNS서버 나옴) ip주소-> 도메인이름, 도메인이름 ->ip주소 변환하는 기능 사람이 이해하기 쉽도록 그래서 IP주소와 도메인이름을 기억하는 기능, 이름을 물어보면 IP주소를 알려주는 기능을 함 ex) 웹에서 naver.com 입력하면 DNS서버에서 이걸 IP주소로 바꾸고, IP주소로접속하게함 웹호스팅 자신의 홈페이지를 보여줄 수 있는.. 2020. 1. 15.
728x90