본문 바로가기

반응형

분류 전체보기

(154)
vpn이란 초창기의 인터넷(아파넷)이 설계될 때, 주요 초점은 데이터 전송이지, 암호화가 아니었다. 최초 개발 당시 군사용으로, 한정된 대상과 공간에서 사용하는 것이 목적이었기 때문에 암호화는 고려하지 않았다.그렇기에 현재 인터넷에서 데이터 전달을 담당하는 프로토콜인 internet protocol(IP, 인터넷 프로토콜)의 설계에는 패킷(데이터)의 암호화가 반영되지 않았다. 사설망(Private Network)과 전용 회선(Leased Line) 의 탄생인터넷의 성장은 IPv4 Address의 폭발적 수요를 불러왔고, 43억개의 IPv4의 숫자는 부족하게 되었기에 사설망(Private Network)이 탄생했다. IPv4의 대역 중 일부를 Private IP(이하 사설 IP)로 지정하여 가정, 기업, 기관 등 근..
[Learning Spark] Chapter 2 : 아파치 스파크 다운로드 및 시작 스파크 셸에서 모든 처리가 하나의 머신에서 이루어지는 로컬 모드를 사용해보는 것으로 하자.프레임워크를 익히며, 반복적 스파크 수행으로 빠르게 배울 수 있을거라 생각한다. 스파크 셸은 스칼라, 파이썬, R만 지원하지만, 스파크 애플리케이션은 자바 포함 다양한 언어로 작성 가능하고, 쿼리는 스파크 SQL로 실행할 수 있다. 실제로 복잡한 스파크 애플리케이션을 먼저 작성해볼 수 있지만, 분산 처리의 이득을 원하는 큰 데이터, 실무 작업에 로컬 모드는 적당하지 않고, YARN, 쿠버네티스 배포 모드를 써야 한다.  1단계 : 아파치 스파크 다운로드https://spark.apache.org/downloads.html Downloads | Apache SparkDownload Apache Spark™ Choose..
[Learning Spark] Chapter 1 : 아파치 스파크 소개 : 통합 분석 엔진 [Learning Spark] "Chapter 1 : 아파치 스파크 소개, 통합 분석 엔진"와 스터디 및 유튜브를 보고 정리한 내용입니다.  아파치 스파크의 시작과 역사컴퓨터 규모 측면에서, 우리가 가지는 데이터가 지속적으로 쌓이고, 많아짐으로구글은"어떻게 해야 수십억개가 넘어가는 페이지들을 빠르게 indexing을 해서 user에게 내줄수 있을까"에 대한 고민에서 새로운 접근 방식이 필요했다.- 기존의 RDBMS(관계형 데이터베이스)는 이런 문제를 해결하기가 어려웠음그래서 구글 파일 시스템(Google File System, GFS), 맵리듀스(MapReduce, MR), 빅테이블(BigTable) 등을 만들었다.*GFS : 클러스터 안에 상용 서버 장애 내구성이 있는 분산 파일시스템 제공(빅데이터들을..
MIT OpenCourseWare - Introduction To Algorithm 2020년 봄학기, Lecture 1 : Algorithms and Computation 를 듣고 정리한 내용알고리즘 수업의 목표는Goal 1 - 계산 문제 해결(Solve computational problem)Goal 2 - 정확성 입증(Prove Correctness)Goal 3 - 효율성 주장(argue efficiency)Goal 4 - 아이디어 의사소통(communication)솔루션을 다른 사람에게 전달하고, 문제 해결 방법이 정확하고 효율적이라는 점을 전달하는 능력⇒ 당연히, 계산 문제를 푸는 것도 중요하지만, 이론 수업으로 얻는 것은 다른 어떤 것보다 해당 방법이 옳다는 것을 증명하는 것을 컴퓨터 뿐만 아니라, 다른 사람에게 전달할 수 있는것이 수업 내용이라고 합니다.계산, 데이터 구조,..
[SolveSQL] ORDER BY ASC, DESC (오름차순, 내림차순 정렬) 최고의 근무일을 찾아라 ORDER BY는 SELECT 문에서 나온 결과를 정렬할 때 사용한다. - 오름차순 (Ascending) - 내림차순 (Descending) 이 두가지가 존재하고, 각각의 앞자리를 따서 ASC(오름차순), DESC(내림차순)이라고 명시합니다. 만약에 SQL 값에서 숫자가 아닌 문자일시, 알파벳 순으로 정렬합니다. - 오름차순 : 작은 값에서 큰 값으로 (1, 2, 3, 4) (A, B, C) - 내림차순 : 큰 값에서 작은 값으로 (1, 2, 3, 4) (A, B, C) SELECT [id, name] FROM [table_name] ORDER BY [id] 기본값은 오름차순으로 위의 SQL 코드처럼 따로 명시를 하지 않을 경우 (오름차순)으로 정렬되고, 내림차순의 정렬을 원할 경우에는 (내림차순)을 명..
[SolveSQL] 우리 플랫폼에 정착한 판매자 1, SQL에서 중복값 찾아내는 방법 목차- SQL 에서 중복값 찾는 방법 = 조건문 차이 where having - SolveSQL 우리 플랫폼에 정착한 판매자 1 = 오류 분석 = 틀린코드와 정답 코드 = 오류 더 분석 중복된 데이터를 다루는 것은 SQL의 문제를 풀다보면, 정말 자주 접할 수 있다. 이번 글은 SQL의 Group By 와 Having 절을 활용해 중복값을 발견하고 이를 제거할 수 있는 방법에 대해서 알아보려고 한다. 데이터베이스 내 데이터가 잘 구축되기 위해, 데이터가 추출 및 합쳐질 정보의 중복 생성을 막고자 기본키(primary key)와 같은 고유 제약 조건을 가지는 것이 좋다. 그러나 막상 실제로 작업을 하다보면 이상적으로 돌아가지 않을 때가 ㅏ많다. 중복값은 올바른 계산을 위해 필요하다. SQL 에서 중복값을 ..
백준 14719 - 빗물 파이썬 이 문제는 새로운 유형이라서 처음에 어떻게 풀어야 할지 난감했다. 그러나 생각해보니 굉장히 쉽게 접근할 수 있었고, 재미있었다. 문제 링크 : https://www.acmicpc.net/problem/14719 문제 정보 : 어떻게 풀지 감을 못잡았는데, 차근차근 하나씩 생각해보기로 했다. 아래는 첫번째 예제에 대해서 그림과 식을 그려보며 생각해본것이다.예제 1만 생각을 해봐도, 쉽게 식에 도달할 수 있었다. 양옆의 가장 큰 두 값 중에서 작은 값을 가져온다. 그리고 현재의 블럭의 크기만큼 빼준다. 그러나 예제 2번에서 예외의 상황을 하나 보여주는데, 양 옆보다 크기가 클 때의 값은 어떻게 처리할 것인가? 에 대한 생각을 주는 예시였다. 아래는 예시 2를 그려본 것이다.그래서 양 옆의 값을 봐줄 때, 자..
[SolveSQL] 두 테이블 결합하기, SQL 조인(JOIN) 정리 SQL 기본 문법 : JOIN (INNER, OUTER, CROSS, SELF JOIN) 두 개의 테이블을 엮어야 하는 일이 정말 많은데, 그럴 때, JOIN을 사용하면 두 개의 테이블을 엮어서 원하는 데이터를 추출할 수 있다. 두 테이블의 조인을 위해, 일대다 관계로 기본키(PRIMARY KEY, PK)와 외래키(FOREIGN KEY, FK) 관계로 맺어져야 한다. - INNER JOIN(내부 조인) : 두 테이블에 모두 일치하는 값이 있는 레코드를 반환 ## INNER JOINSELECT FROM INNER JOIN ON [WHERE 검색 조건]JOIN의 기본값은 INNER JOIN 이다.(교집합에 해당하는 개념) - OUTER JOIN : 1개의 테이블에만 데이터가 있어도 됨SELECT FROM O..

반응형