| 일 | 월 | 화 | 수 | 목 | 금 | 토 |
|---|---|---|---|---|---|---|
| 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 |
- list 컬렉션
- datastructure
- Stack
- 윤성우 열혈자료구조
- insertion sort
- R
- Algorithm
- 알기쉬운 알고리즘
- 혼자 공부하는 C언어
- 이것이 자바다
- C 언어 코딩 도장
- 메모리구조
- Serialization
- stream
- C programming
- coding test
- s
- Graph
- 이스케이프 문자
- JSON
- Selection Sorting
- 윤성우의 열혈 자료구조
- buffer
- Today
- Total
목록Computer Science (90)
Engineering Note
Binary Search Tree(BST)- 이진 탐색 트리- 데이터를 효율적으로 저장, 검색, 삽입, 삭제하기 위해 사용되는 일종의 트리 자료구조- 각 노드가 최대 두 개의 자식 노드를 가진다. 특징- 왼쪽 자식 노드 : 부모 노드의 값보다 항상 작거나 같은 값을 가진다.- 오른쪽 자식 노드 : 부모 노드 값보다 큰 값을 가진다.- 탐색 : 위 같은 규칙을 통해 특정 값을 찾을 때마다 탐색 범위가 절반씩 줄어들어 평균적으로 O(logN)의 시간 복잡도를 가진다. 용도- 인 메모리 데이터 관리에 사용
LIMIT- SELECT 명령에서 결과값으로 반환되는 행을 제한하는 명령어 사용 예시- 인터넷 쇼핑몰에서 물건을 구매하거나 커뮤니티 사이트의 게시판을 읽다보면, 수많은 상품과 게시물을 전부 하나의 페이지에 표시하는 대신 몇 건씩 나누어 표시할 때 사용 사용 방법SELECT 열명 FROM 테이블명WHERE 조건식 ORDER BY 열명LIMIT 행수SELECT * FROM sampleLIMIT 3; -> sample 데이터에서 최대 3개의 행만 반환. 테이블에 1개의 데이터만 있다면 1개의 데이터만 반환 OFFSET- 데이터를 취득할 위치를 가리키는 것, LIMIT구에 OFFSET으로 지정할 수 있다.- 페이지네이션을 구현할 때, 첫 번째 페이지라면 LIMIT만으로 데이터를 조회할 수 있지만, 두 번째 페..
낙관적 락은 충돌 발생 가능성이 낮다고 가정하고 실제 데이터 수정시점에 충돌이 발생했는지 확인하고 처리하는 방식이다. 이 방식은 데이터베이스 자체의 잠금 방식을 사용하는 것이 아니라 데이터 버전 정보를 통해 애플리케이션 레벨에서 비교하는 방식을 통해 동시성을 제어 하는 방법이다. 반면 비관적 잠금은 'SELECT ... FOR UPDATE'와 같이 쿼리를 사용해 직접 데이터 레벨에서 직접 잠금을 통해 동시성 제어를 방지하는 방법이다. 여러 트랜잭션이 동시에 같은 데이터를 수정하려고 할 때 충돌이 발생할 것이라고 '비관적으로' 가정하고, 데이터를 읽는 시점부터 잠금을 거는 방식입니다. 이렇게 하면 데이터가 수정되는 동안 다른 트랜잭션이 접근할 수 없으므로 동시성 문제를 확실하게 방지할 수 있습니다.
본 내용은 KOCW 이미정 교수님 강의를 보며 정리하며 작성한 내용입니다. DNS(Domain Name System) DNS- 사용자는 특정 웹 사이트에 액세스 하길 원하거나, 브라우저를 통해 웹사이트를 요청할 때 브라우저의 주소창에 "www.yahoo.com"이라는 hostname or domain name이라고 불리는 값을 사용한다. 그런데 실제 컴퓨터에서 돌아가는 network application process는 이러한 주소가 아니라 32bit의 IP address를 사용하는데, 이때, 사용자가 입력한 Domain Name을 IP 주소로 변환하는 기능을 해주는 시스템을 Domain Name System이라고 한다. 그런데 DNS는 Network application이라면 전부다 필요로 하는 Sys..
데이터베이스에서 가장 중요한 트랜잭션과 동시성 제어에 대해 정리해보려고 한다. 트랜잭션이란 데이터베이스에서 처리하는 하나의 작업단위로, 관련 작업이 모두 성공하거나, 모두 실패해서 데이터의 일관성을 유지해야 하는 작업 묶음 입니다. 트랜잭션의 핵심 속성은 ACID라고 부릅니다.Atomicity(원자성), Consistency(일관성), Isolation(격리성), Durability(지속성) 속성 설명Atomicity (원자성)모두 수행되거나, 전혀 수행되지 않거나Consistency (일관성)트랜잭션 전후의 DB 상태가 일관되어야 함Isolation (격리성)동시에 실행되는 트랜잭션이 서로 영향을 주지 않도록 격리Durability (지속성)트랜잭션이 성공하면 결과는 영구 반영 트랜잭션과 관련해서 ..
Spring으로 웹 개발을 하다보면 파일 전송할 때 Multipart라는 객체를 사용하는데 왜 Multipart라는 개념이 등장하게 됐는지 궁금해서 자료를 찾아 보았습니다.🔍 Multipart라는 개념이 생긴 배경✅ 1. 단일 데이터 구조의 한계초기의 HTTP나 이메일 시스템(MIME 이전)은 텍스트 기반 메시지를 주고받기 위한 프로토콜이었어.그래서 구조가 매우 단순했고, "하나의 메시지는 하나의 내용만 담는다"는 게 기본 전제였지.이메일이면: 본문만 있거나, 본문 하나 + 첨부파일 하나 정도HTTP면: 하나의 이미지나 하나의 HTML 파일 정도이 단일 구조는 점점 현실적인 데이터 처리 요구를 충족시키지 못하게 됨.✅ 2. 복합 데이터를 다뤄야 하는 현실적인 요구 등장기술이 발전하면서 다음과 같은 문제..
본 내용은 KOCW 이미정 교수님 강의를 보며 정리하며 작성한 내용입니다. e-mail applcationnetwork 계층은 여러 계층으로 나누어서 이해할 수 있는데, 그 중에서 사용자에게 가까운 영역은 application layer이다. application layer에는 WEB과 더불어 e-mail application이 있다.e-mail application의 3가지 구성요소user agentsmail serversmail protocols(SMTP(simple mail transfer protocol), POP3, IMAP) User Agent는 사용자가 메일을 작성하고, 편집하고 읽을 수 있게 하는 어플리케이션이다. ex) Outlook, iPhone mail client Mail Serv..
Rate라는 용어가 많이 나오는데 실제 우리가 일상에서 사용하는 속도라는 개념도 있지만, 처리량, 처리능력이라는 의미의 속도도 있다. 맥략적으로 잘 해석해야 하는데 아래처럼 정리하려고 한다. 구분 한글 용어 영어 용어 정의 / 의미 단위 비교구분용어English expressionDescription단위보충 설명전송 속도전송률 / 전송 속도Transmission Rate네트워크 링크가 초당 전송 가능한 최대 데이터 양bps, Mbps, Gbps하드웨어의 능력, 즉 대역폭(Bandwidth)유입 속도트래픽 유입 속도Incoming Traffic Rate또는 Arrival Rate실제로 외부에서 내 서버/시스템으로 도착하는 데이터의 속도Mbps,packets/sec 등보통 측정값이며, 클라이언트 요청량처..