본문 바로가기

CS 지식22

기본 인덱스(Primary index)와 보조 인덱스(Secondary index) 기본 인덱스(Primary index) 기본 키(Primary key)를 기반으로 하는 인덱스를 기본 인덱스라 한다. 이러한 키는 각 레코드에 대해 고유하며 레코드 간의 1:1 관계를 포함한다. 기본 인덱스를 사용하여 데이터를 검색하면 정렬된 순서로 데이터를 저장한다는 점에서 효율적이다. 보조 인덱스(Secondary index) 대체 키(Altanative key)와 테이블에서 다른 속성들의 부분집합을 포함한다. 테이블처럼 인덱스에 쿼리를 사용하여 데이터를 가져올 수 있다. 기본 인덱스와 보조 인덱스의 차이점 기본 인덱스는 필드의 기본 키를 포함하고 중복을 포함하지 않는 필드 집합의 인덱스인 반면, 보조 인덱스는 ㄱ;본 인덱스가 아닌 인덱스이며 중복을 포함할 수 있다. 기본 인덱스는 데이터 블록의 행이.. 2022. 12. 4.
인덱스(Index) 인덱스(Index) : 인덱스는 데이터베이스 테이블의 검색 속도를 높여주는 자료구조이며 우리가 책을 읽을 때 색인을 추가하는 것과 같다. 인덱스의 관리 DBMS 는 인덱스를 항상 최신의 정렬된 상태로 유지해야 원하는 값을 빠르게 찾을 수 있다. 따라서 인덱스가 추가된 컬럼에 INSERT, UPDATE, DELETE 가 수행된다면 추가적으로 아래와 같은 연산을 해야 한다. INSERT : 새로운 데이터에 대한 인덱스를 추가 DELETE : 삭제하는 데이터의 인덱스를 사용하지 않는다고 하는 작업을 진행 UPDATE : 기존의 인덱스를 사용하지 않는 것으로 처리하고, 갱신된 데이터의 인덱스를 추가 인덱스를 사용하면 테이블을 조회하는 속도가 빨라져 전반적인 시스템의 부하를 줄일 수 있는 장점이 있는 방면에 단점.. 2022. 11. 28.
Blocking 과 Non-Blocking Blocking 요청한 작업을 마칠 때까지 계속 대기한다. 즉시 return 하며 return 값을 받아야 끝난다. Thread 관점에서는 요청한 작업을 마칠 때까지 계속 대기하며 return 값을 받을 때까지 하나의 Thread 를 계속 사용하고 대기한다. Non-Blocking 요청한 작업을 즉시 마칠 수 없다면 바로 return 한다. 작업을 방해하며 즉시 return 하지 않는다. Thread 관점에서는 하나의 Thread 가 여러 개의 IO 를 처리할 수 있다. 그리고 이와 비슷하게 느껴지는 동기와 비동기가 있다. 동기(Synchronous) Thread1 이 작업을 시작 시키고 Task1 이 끝날 때까지 대기한 다음 Task2 를 시작한다. 작업을 요청했을 때 요청 결과값을 직접 받는데, 요청.. 2022. 11. 26.
TLS(SSL) HandShake TLS(Transport Layer Security) HandShake TLS 는 안전한 인터넷 통신을 위한 암호화 프로토콜이며, TLS HandShake 는 TLS 암호화를 사용하는 통신 세션을 실행하는 프로세스이다. 통신 양측은 TLS HandShake 중에 메세지를 교환하여 서로를 인식하고 검증하며, 사용할 암호화 알고리즘을 구성하고 세션 키를 합의한다. HTTPS 작동 원리의 시초이다. 클라이언트와 서버가 교환하는 일련의 데이터그램(메시지) 이다. *SSL(Secure Socket Layer)은 원래 HTTP 용으로 개발된 암호화 프로토콜이었지만 오래 전 TLS 로 대체되었다. TLS HandShake 의 발생 타이밍 TLS HandShake 는 사용자가 HTTPS 를 통해 웹 사이트를 탐색하고 .. 2022. 11. 15.