본문 바로가기

728x90

전체 글

(303)
CS 강의 11. 공간 자원과 공간 복잡도 출처 : 내일배움캠프 1. 공간 복잡도 1 - 1. 공간 복잡도 개요 - 프로그램을 실행 및 완료하는데 필요한 저장공간의 양을 뜻한다 = > 프로그램 복잡도는 시간 복잡도와 공간 복잡도로 나눌 수 있다 시간 복잡도 : 얼마나 빠르게 실행되는지 공간 복잡도 : 얼마나 많은 저장 공간이 필요한지 ~ 통상 둘 다를 모두 만족하기는 어렵다 - 시간과 공간 복잡도는 반비례하는 경향이 있다 - 최근 대용량 시스템이 보편화되며, 공간 복잡도보다 시간 복잡도가 낮은 것이 우선되는 추세 - 알고리즘 풀이시, 시간 복잡도를 우선하자 - 다만, 그렇다고 공간 복잡도를 소홀히 하면 안된다 총 필요한 저장공간 - 고정 공간(알고리즘과 무관한 공간) : 코드 저장 공간, 단순 변수 및 상수 - 가변 공간(알고리즘 실행과 관련있는..
11. 29 TIL : 데브원영의 카프카 + SQL 풀이 중 WHERE IN 카프카 스트림즈 카프카에서 지원하는 자바 라이브러리 JVM 기반 언어(자바, 스칼라, 코틀린) 중 하나로 선택해 개발이 가능하다 * 카프카와 완벽히 호환된다 ~ 스파크, 로그 스태시를 많이 사용하지만 이는 카프카의 업데이트 속도를 맞추지 못할 수 있다 * 스케줄링 도구가 필요하지 않다 스파크 스트리밍, 스파크 구조적 스트리밍을 사용해 이벤트 데이터 애플리케이션을 만드는 게 일반적이나, yarn이나 mesos와 같은 클러스터 관리자, 리소스 매니저가 필요하다. 또한 클러스터를 운영하기위한 대규모 장비가 필요하다 => 원하는 만큼 배포가 가능하다 * 스트림즈DSL과 프로세서 API를 제공한다 일반적으로 스트림즈를 구현할 때 스트림즈DSL를 사용한다 - 이벤트 기반 데이터 처리시 map, join, windo..
CS 강의 10. HTTP/HTTPS 출처 : 내일배움캠프 1. HTTP 1 - 1. HTTP 개요 Hypertext Transfer Protocol - 서로 다른 시스템들 사이에서 통신을 주고받게 하는 가장 기본적인 프로토콜 - 서버에서 브라우저로 데이터를 전송하는 용도로 가장 많이 사용 - 전송되는 요청/ 응답 정보가 기본적을 암호화되지 않아 보안정보 도난의 위험이 있다 IP가 네트워크 계층, TCP가 전송 계층 프로토콜이라면 HTTP은 어플리케이션 계층 프로토콜이다 ~ 클라이언트와 서버 간 자원을 교환하기 위한 TCP/IP 기반 통신 프로토콜 1) 요청 정보 2) 응답 정보 특징 1) 단방향성 : 서버가 먼저 응답을 보낼 수 없고 클라이언트가 요청을 보내야만 응답할 수 있다(HTTP 2 이전) 2) 비연결성 : 클라이언트의 요청으로 서..
11. 23 TIL : GROUP BY + 약간의 JQuery 및 JSTL https://school.programmers.co.kr/questions/38703 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 즐겨찾기가 가장 많은 식장 정보 출력하기 문제에서 GROUP BY 함수가 작동하는 방식에 대한 설명 + SQL에서 GROUP BY를 사용했을 때 칼럼 중에 특정 칼럼에 MAX 등 연산을 하고 다른 칼럼에 대해 별다른 지정을 하지 않은 경우, 다른 칼럼에 대해서 MAX를 적용하지 않고, 그룹의 다른 칼럼을 임의로 표시한다. 그러므로 해당 컬럼에 표시되는 ROW는 임의로 조햡된 ROW이므로 쿼리 결과가 혼동된다. => 서브쿼리..
CS 강의 9. OSI 7계층 출처 : 내일배움캠프 1. 네트워크의 기본구조 1 - 1. 네트워크 - 네트워크 : 정보가 전송되는 경로 => 이러한 네트워크로 전세계 모든 컴퓨터를 연결하기 위해 1. 통신 장비 :어떻게 연결할지 2. 통신 역할 : 각 장비가 어떤 역할을 할지 3. 통신 규칙 : 각 장비는 서로 어떤 규칙을 가지고 정보를 주고 받을지 이 필요하다 LAN vs WAN 1) LAN : 사무실이나 빌딩 등 비교적 좁은 범위의 네트워크 2) WAN : 서로 떨어진 LAN 사이를 전용선 등으로 연결한 광역 네트워크 ~ 와이파이 공유기의 인터넷 선이 WAN 포트 ~ WAN으로 건물과 통신사 중계기(ISP), 나아가 네트워크 시스템(SDN)을 연결한다 1 - 2. 클라이언트와 서버 클라이언트 vs 서버 - 클라이언트 : 네트워크 ..
11. 22 TIL : SQL 쿼리 & Spring vs Spring Boot 쿼리 : DISTINCT와 COUNT를 함께 사용하는 경우 => COUNT(DISTINCT 특정 컬럼)으로 카운팅 할 때, 특정 컬럼의 NULL은 자동으로 무시한다 https://jjeongil.tistory.com/2131 Spring Boot : Spring, Spring MVC와 차이점, 설명, 개요 Spring vs Spring Boot 스프링: 스프링 프레임워크는 Java의 가장 인기 있는 애플리케이션 개발 프레임워크입니다. 스프링 프레임워크의 주요 기능은 종속성 주입 또는 제어 반전(IoC)입니다. Spring Framewo jjeongil.tistory.com
CS 강의 8. 자료구조의 동작과 활용 출처 : 내일배움캠프 0. 자료와 자료구조 0 - 1. 텍스트 자료의 표현 1) 아스키 코드 2) 유니코드 & UTF-8 0 - 2. 숫자 자료의 표현 1) 부호 없는 정수 2) 부호 있는 정수 3) 실수 0 - 3. 선형/비선형 자료구조 텍스트와 숫자 자료보다 더 복잡한 데이터를 저장하고 연산하기 위해서 다양한 자료구조가 필요하다. 큰 데이터를 단순한 자료 구조에 할당이 어렵고, 저장해도 데이터의 삽입/삭제가 어려워 정렬도 어렵다. 그래서 등장한 자료구조를 선형/비선형 구조라고 한다 선형 자료구조 - 데이터가 저장 순서대로 저장되는 자료구조 - 배열, 연결 리스트, 스택, 큐 - 배열은 데이터를 연속적인 메모리 공간에 저장하는 자료구조 - 연결 리스트는 데이터가 노드로 연결된 형태로 저장되는 자료구조 ..
CS 강의 7. 자료의 저장과 표현 출처 : 내일배움캠프 1. 비트와 바이트 1 - 1. 이진수 체계 - 0과 1만 사용해 수를 나타내는 체계. 각 자리는 2의 거듭제곱으로 컴퓨터 시스템에서 메모리와 프로세서는 0과 1의 상태를 쉽게 표현하고 처리할 수 있어, 이진수를 사용해 데이터를 저장하고 연산을 수행한다. 논리 게이트는 이진수의 입력과 출력을 기반으로 논리적인 연산을 수행하며, 이진수는 논리 연산의 진리값을 표현하는 데 사용된다 1 - 2. 비트 비트는 이진수 체계에서 0과 1 두가지 값을 가질 수 있는 최소한의 단위. 여러 비트를 조합해 복잡한 정보를 나타낼 수 있다. 8비트는 256가지의 조합을 나타낼 수 있다. 텍스트, 숫자, 이미지, 음악, 비디오 등 모든 정보는 비트로 변환되어 저장되고 처리된다. 컴퓨터는 비트를 이해하고 다..

728x90