일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 |
- 인바운드규칙
- db
- 스프링 실행 에러
- 프로그래머스 전호번호 목록
- 알고리즘
- SQL
- 프로그래머스 위장
- jenkins
- SFTP
- AWS
- 윈도우 kill -9
- SQL Parser
- Clooection
- 리액트 돔
- Oracle
- 베트스앨범
- Hard Parsing
- EC2
- SQL파싱
- jenkins gitlab 연동
- Soft Parsing
- Java
- Row-Source Generation
- SQL Optimizer
- 깃랩 젠킨슨 연동
- 코딩테스트
- 윈도우 프로세스 죽이기
- 프로그래머스
- FTP
- 국가공은자격증
- Today
- Total
목록전체 글 (21)
알파돈

LIKE 조건과 BETWEEN 조건중 어느것이 더 성능이 좋을까? 정답은 바로 BETWEEN 조건이다. 아래와 같은 SQL을 작성했다고 해보자 SELECT /*LIKE 조건을 이용한 검색*/ * FROM 매출 WHERE 기간 LIKE '2024%' SELECT /*BETWEEN 조건을 사용한 검색*/ * FROM 매출 WHERE 기간 BETWEEN '202401' AND '202412' 기간으로 생성된 인덱스가 있다는 과정에 두 쿼리를 실행하면 두 SQL 모두 범위검색 (RANGE SCAN)을 실행 할 것이다. 이러면 두 SQL의 성능에는 큰 차이가 없을것이다. 하지만 아래의 쿼리 부터는 말이 달라진다. SELECT /*LIKE 조건을 이용한 검색*/ * FROM 매출 WHERE 기간 LIKE '2024..
SQL의 처리과정은 아래와 같다 SQL 작성을 하면 SQL Parser 은 SQL 파싱을 진행 한다. 옵티마이저가 SQL 최적화를 진행 한다. Row-Source Generation가 옵티마이저에게 전달받은 최적을 실행 계획을 받아 코드 또는 프로시저 형태로 포맷팅 실행 SQL Parser 개발자가 작성한 SQL을 이루는 구성요소를 분석하고 파싱 트리를 만든다. Syntax 체크 : 문법 검사 Symantic 체크 : 오브젝트의 참조 및 존재 여부 검사 Shared Pool에 캐싱되어 있는 SQL 커서인지 확인 : 해시 알고리즘 사용 SQL Optimizer Query Transformer : SQL을 최적화 하기 쉬운 형태로 변환 Plan Genrator : SQL 실행 계획을 생성 Estimarot ..

옵티마이저(optimizer) 개발자를 대신해서 프로그래밍 해주는 DBMS에서의 프로그래머 같은 존재이다 즉 개발자가 SQL을 작성시 옵티마이저는 최적의 실행계획(현재 비용기반 옵티마이저를 대부분 사용하고 있다.)을 세우고 프로시저를 생성해준다 사용자 -> SQL 작성 -> 옵티마이저 -> 실행계획 선택 -> 프로시저 생성 사용자가 아래의 SQL을 작성 했다 가정해보자 SELECT * FROM EMP E WHERE E.EMPNO = 9999 옵티마이저 EMP라는 테이블에서 EMPNO가 9999인 데이터를 찾기 위해서 실행계획을 찾아낸다. 데이터 딕셔너리(Data Dictionary)에서 미리 수집해 놓은 정보들을 바탕으로 실행 계획의 예상비용을 산정한다. 가장 적은 비용의 실행계획을 선택 즉, 옵티마이저..
1. 옵티마이저 - SQL을 가장 빠르고 효율적으로 수행할수 있도록 최적의 처리 경로를 생성해주는 DBMS 엔진

리액트란? 자바스크립트이 라이브러리중 하나입니다. 싱글페이지 플리케이션이나 모바일 애플리케이션개발 하이브리드 앱 개발에 사용됩니다. 자바스크립트에 HTML을 포함하는 JSX(JavaScript XML)이라는 간단한 문법과 단방향 데이터 바인딩(One-way Data Binding)을 사용하고 있습니다. 리고 가상 돔(Virtual DOM)이라는 개념을 사용하여 웹 애플리케이션의 퍼포먼스를 최적화한 라이브러리입니다. 하지만! 라우팅, API통신 등의 기능이 요구되는데 리액트에는 기본적으로 제공하지 않아 라이브러리를 사용해야 합니다. 리액트의 특징 속성과의 단방향 데이터 바인딩 보통 props라 불리는 속성들은 부모 컴포넌트로부터 컴포넌트에 전달된다. 컴포넌트들은 props을 하나의 불변의 값(자바스크립트 ..

스프링 부트 실행시 위와 같은 에러가 발생합니다. 원인은 8080포트가 이미 실행중이여서 그렇습니다. 해결하려면 application.properties 에서 직접 포트를 지정하거나 윈도우일 경우 윈도우의 포트를 죽이면 됩니다. 윈도우 포트 죽이는 방법 cmd 창을 관리 권한으로 실행합니다. netstat -a -o 명령어를 사용해 8080포트를 확인합니다. taskkill /f /pid "죽일 프로세스 pid" 위 명령어로 8080 포트 프로세스를 죽여줍니다.