분류 전체보기 70

[ SQL ] 003. 실행계획 보는법

1. 실행계획이란? SQL이 실행되어 데이터를 처리하고 할 때, 옵티마이저에서 수립되는 SQL 실행방법론 가장 안에서부터, 가장 위에서 부터 차례차례 읽으면 된다. 항목 의미 Id Operation의 Id. Predicate Information에 정보가 있다면 Id와 연결된다. Operation 수행되는 일 Name Operation이 수행되는 테이블 혹은 인덱스 --> 오브젝트명 Rows 각 Operation이 끝났을 때 반환되는 예상치 건수 Bytes Access 하는 byte 수 예상치 Cost(%CPU) Operation의 비용 --> 누적치 Time 예상 수행 시간 access Predicate block을 읽기 전에 어떤 방법으로 block을 읽을 것인지 결정. --> index ? full..

IT Diary/# SQL 2022.04.18

[ Knowledge ] Redis(REmote DIctionary Server) 란?

1. redis 의 정의 In-Memory 데이터베이스이며, 다른 제품들과 다르게 다양한 자료구조를 지원한다. String, Set, Sorted Set , Hash ,List key-value 구조 데이터 관리 시스템 쓰기 성능 증대를 위한 클라이언트 측 샤딩(Sharding ) 지원 영속성을 지원한다. (명령어로 명시적으로 삭제, expires를 설정하지 않으면 데이터가 삭제되지 않는다) AOF(Append Only File) 과 RDB(snapshot) 방식을 지원한다. Redis Server는 1개의 Single Thread로 수행된다. ( 딱 하나의 명령어만 실행할 수 있다는 뜻.. ) 장점 : Atomic 보장, race condition 회피 Atomicity(원자성) : Transactio..

JPA ( Java Persistence API ) 의 정의

1. JPA의 정의 JPA(Java Persistence API)는 ORM(Object-Relation Mapping) 전문가가 참여한 EJB 3.0(Enterprise Java Beans) 스펙 작업에서 기존 EJB ORM 표준으로 사용되던 엔티티빈(Entity Bean) 을 대체하여 나온 ORM 표준이다. 기존 엔티티빈이 EJB 컨테이너에 의존하던것에 비해 POJO 방식 프레임워크로 개발되었으며, 이로인해 Java EE 뿐 아니라 JAVA SE 에서도 사용 가능하며 활용도가 높다. 2. JPA 동작원리 자바 ORM 기술에 대한 표준명세 ORM ( Objecet Relational Mapping ) 객체-관계 맵핑의 줄임말 OOP(Object Oriented Programming) 에서 쓰이는 객체라는..

IT Diary/# JPA 2022.01.08

010. SOAP (Simple Object Access Protocol)

SOAP(Simple Object Access Protocol)는 그 자체로 프로토콜이며, 보안이나 메시지 전송 등에 있어서 REST보다 더 많은 표준들이 정해져있기 때문에 조금 더 복잡합니다. 이러한 표준들로 인해서 오버헤드가 많기는 하지만, 보안, 트랜잭션, ACID(원자성, 일관성, 고립성, 지속성)을 준수해야 하는 보다 종합적인 기능이 필요한 조직에게는 적합한 방식이 될 수 있습니다. 굳이 비교를 하자면, SOAP는 웹 서비스 시나리오에 적용하기에는 그다지 좋지 않기 때문에, 기업용 애플리케이션 등을 작업하는데 더 이상적이라고 말할 수 있습니다. SOAP는 보안 수준이 엄격합니다. SOAP에서는 SSL도 지원하고 WS-Security라는 자체 표준의 보안 기능도 가지고 있지요. 따라서 은행용 모바..

IT Interview 2021.09.15

009. DB JOIN의 종류

1. Nested Loop Join 2개 이상의 테이블에서 하나의 집합을 기준으로 순차적으로 상대방 Row를 결합하여 원하는 결과를 조합하는 방식 먼저 선행 테이블의 처리 범위를 하나씩 액세스하면서 추출된 값으로 연결할 테이블을 조인한다 순차적으로 처리된다. 바깥 테이블과 일치하는 값을 안쪽 테이블에서 찾아야 하므로 안쪽 테이블의 해당 열에 인덱스가 필요하다. 메모리 사용량은 가장 적다. 바깥 테이블과 안쪽 테이블의 크기는 성능과 관련이 없다. 첫 테이블 필터링 -> 두테이블간의 연결 -> 최종운반 단위 산출가지 반복적, 순차적으로 진행됩니다. 선행 테이블의 처리 범위가 전체 일의 양을 결정합니다. 후행 테이블의 필터링 조건은 선행 테이블에서 나온 결과를 한번 더 걸러주는 체크 조건 역할을 할 뿐 전체 ..

IT Interview 2021.09.15

008. PUT, PATCH 의 차이

RESTful API란? 자원을 URI로 표현하고, 자원에 대한 행위를 HTTP Method(GET, POST, PUT, DELETE)로 표현한다. PUT : 리소스의 모든 것을 업데이트 한다. PATCH : 리소스의 일부를 업데이트 한다. 가령 한 사용자에 대해 여러 정보를 객체로 수집하여 서버로 보내는 경우, PUT은 보내지지 않은 정보에 대해서는 null값으로 업데이트하지만, PATCH는 기존 데이터를 유지하는 방식으로 대응한다. HTTP Method는 크게 GET, POST, PUT, DELETE가 대표적이며, 보통 CRUD에서 조회는 GET, 등록은 POST, 수정은 PUT, 삭제는 DELETE를 이용한다. GET과 DELETE는 비교적 그 행위가 명확하지만, POST와 PUT을 구분하기 위해서..

IT Interview 2021.09.14

007. MVC , MSA

1. MVC (Model-View-Controller) # 구성요소 모델-뷰-컨트롤러는 응용 프로그램을 세 가지의 구성요소로 나눈다. 각각의 구성요소들 사이에는 다음과 같은 관계가 있다. 개발 할 때, 3가지 형태로 역할을 나누어 개발하는 방법론입니다.Model은 어플리케이션이 “무엇”을 할 것인지를 정의 합니다. 내부 비지니스 로직을 처리하기 위한 역할을 할 것입니다. 처리되는 알고리즘, DB 와 상호작용(CRUD Create Read Update Delete), 데이터 등등.. Controller는 모델이 “어떻게” 처리할 지를 알려주는 역할을 할 것이고, 모바일에서는 화면의 로직처리 부분입니다. 화면에서 사용자의 요청을 받아서 처리되는 부분을 구현되게 되며, 요청 내용을 분석해서 Model과 Vie..

IT Interview 2021.09.13