profile
Pay it forward
post-thumbnail

5. MySQL SQL 튜닝 4 (인덱스)

1) 인덱스 없이 작은 규모의 데이터를 조회하는 나쁜 SQL 문 (1) 현황분석 사원 테이블 풀 스캔 및 스토리지 엔진에서 가져온 전체 데이터 중 조건절 Extra : Using where 출력 (2) 문제점 1 건의 데이터를 가져오고자 테이블 풀 스캔 방식 비

2022년 1월 13일
·
0개의 댓글
post-thumbnail

4. MySQL SQL 튜닝 3

1) 처음부터 모든 데이터를 가져오는 나쁜 SQL 문 (1) 현황분석 id가 1인 두개 행에 먼저 접근, 사원테이블이 드라이빙 테이블 derived2 테이블이 드리븐 테이블 derived2테이블은 id가 2이고 select_type 항목이 DERIVED로 작성된 세

2022년 1월 12일
·
0개의 댓글
post-thumbnail

4. MySQL SQL 튜닝 2 (조인)

1) 작은 테이블이 먼저 조인에 참여하는 나쁜 SQL 문 (1) 현황분석 부서 테이블에 먼저 접근 후 UI_부서명 인덱스를 활용해 인덱스 풀 스캔 상대적으로 큰 크기의 부서사원매핑 테이블은 I부서번호 인데스로 인덱스 스캔 수행, 이때 rows 항목이 4만건으로 인덱

2022년 1월 10일
·
0개의 댓글
post-thumbnail

JAVA - Data Structures

1. Arrays 2. 2D Arrays 3. Lists and ArrayList 4. Stack 5. Queue 6. Linked List 7. Sets (1) A collection that contains no duplicate elements. (2

2022년 1월 9일
·
0개의 댓글
post-thumbnail

3. MySQL SQL 튜닝

1) 기본 키를 변형하는 나쁜 SQL 문 (1) 현황분석 Type항목이 ALL로 테이블 풀 스캔 방식이며, 인덱스를 사용하지 않고 테이블에 바로 접근 사원번호가 PK임에도 SUBSTRING / LENGTH와 같이 가공하여 작성했으므로, 풀 스캔 수행됨 (2) 튜닝

2022년 1월 8일
·
0개의 댓글
post-thumbnail

2. MySQL 실행 계획

1. 실행 계획 수행 1) 기본 실행 계획 (1) 기본 실행 계획 수행 (2) 기본 실행 계획 항목 분석 1) ID - 실행 순서를 표시 조인할 때는 똑같은 ID가 표시된다. ID의 숫자가 작을수록 먼저 수행된 것이고 ID가 같은 값이라면 두 개 테이블의 조인

2022년 1월 3일
·
0개의 댓글
post-thumbnail

DeepDive node js - 1. 노드란 정확히 무엇인가?

What Exactly Is Node 노드에서 사용한 JS는 machine code에서 실행되기 위해 JS가 machine code에서 실행되기 위해 interpreter가 필요하다. interperter가 바로 v8엔진이다. processor에서 JS코드를 실행하

2021년 12월 13일
·
0개의 댓글
post-thumbnail

8. Graph Data Structure

1. What is a graph? A data structure made up of nodes or vertices and edges or the connections between nodes Typically, a visualization of a graph w

2021년 11월 29일
·
0개의 댓글
post-thumbnail

7.Depth First & Tree Traversals

Downward through the treeDFS algorithm is required to a stack기본 코드재귀 적용Post orderleft노드 -> right노드 -> self노드in-order orderleft노드 -> self노드 -> right노드재

2021년 11월 27일
·
0개의 댓글
post-thumbnail

6.Binary Trees and BFS

A collection of nodeds and edges하나의 루트 노드노드로 가기 위한 길은 오직 하나Tree where each node has at most two children최대 노드 수 2개, 한개거나 없어도 binary tree라 볼 수 있다.코드 구현

2021년 11월 26일
·
0개의 댓글
post-thumbnail

5. Snake with a Queue

해당 블럭이 움직일 때, enqueue/dequeue 발생코드구현1\. Snake 바디를 array로 구현 후 queue 조작2\. Snake body를 grid로 그림3\. 위치에 따른 queue 조작참고 : codebyte - Implementing Snake wi

2021년 11월 22일
·
0개의 댓글
post-thumbnail

4. Stack & Queue Basic

LIFO(Last In First Out)웹페이지 뒤로가기 시, 가장 최신의 페이지 부터 뒤로가기 실행코드 구현FIFO(Last In First Out)참고 : codebyte - stack & queue

2021년 11월 20일
·
0개의 댓글
post-thumbnail

3. Linkded List - Delete / Reverse

참고 : codebyte - Reverse a Linked List

2021년 11월 19일
·
0개의 댓글
post-thumbnail

2. recursive Linkded List

While문 / 재귀 참고 : codebyte - Recursive Linked List from Scratch

2021년 11월 16일
·
0개의 댓글
post-thumbnail

1. The Basics of Linked Lists

순차적으로 연결된 value를 가진 data structurearray보다 insertion/deletion이 효율적value의 메모리 주소들이 인접하지 않아도된다.노드를 접근할 경우array는 메모리에 인접한채로 있기 때문에, index를 통해 빠르게 접근 가능 ->

2021년 11월 12일
·
0개의 댓글
post-thumbnail

Express - Rate Limiting & Caching

요청에 대해 일정시간 같은 response를 줘야한다면, express에서 매번 response를 주는게 아니라 클라이언트에서 max-age값을 기준으로 시간이 지나기 전까지는 해당 캐시를 이용한다.만일 DOS공격과 같은 끊임없는 재요청을 방지 하기 위해서 Rate L

2021년 10월 24일
·
0개의 댓글
post-thumbnail

Dynamic Programming - tabulation

Tabulation 전략 문제를 테이블로 시각화 input값을 토대로 테이블 크기 지정 연산을 위한 table 초기값 설정 해당 문제의 seed value 찾기 ex) 피보나치 1 => 1 iterate through the table 현재 위치를 토대로 이웃 포지션에

2021년 10월 17일
·
0개의 댓글
post-thumbnail

Dynamic Programming

1. 피보나치 Memoization (1) Before Memoization fib(50)의 경우, 2^n으로 인해 1.12e + 15 번의 연산이 필요 (2) After Memoization 메모이제이션 후, 빅오는 O(n) 2. GridTraveler me

2021년 8월 25일
·
0개의 댓글
post-thumbnail

React CRA 배포(AWS S3 & CloudFront)

React build 파일을 넣을 버킷 생성 자세한 설정은 생략Origin domain : 해당 도메인을 통해 content(React) 전달Http 리다이렉트클라우드프론트 생성 후 해당 버킷에 대한 정책은 다음과 같습니다.npm run buildCRA build 폴더

2021년 8월 11일
·
0개의 댓글
post-thumbnail

NestJs(2)_TypeORM(PostgreSQL), Auth관리

(1) TypeORM, postgresql 연동 configs/typeorm.config.ts src/app.module.ts (2) TypeORM, Entity 생성 @Entity() Entitu() 데코레이터 클래스는 해당 클래스가 엔티티임을 나타내는 데 사

2021년 8월 9일
·
0개의 댓글