전체 글

데이터 엔지니어링, 자동화에 관심을 갖고 공부 중입니다.
[프로그래머스] 데이터 엔지니어링 데브코스 3기/TIL(Today I Learn)

[TIL - 63일 차] 하둡과 Spark (3)

Spark 프로그래밍 : SQLSpark SQL 소개Spark SQL과 Spark DataFrame의 차이점과 Spark SQL의 사용법을 알아보자.SQL의 중요성데이터 분야의 필수적인 기본 기술구조화된 데이터를 다룬다면, SQL은 데이터 규모와 관계없이 쓰임모든 대용량 DW는 SQL 기반 : Redshift, Snowflake, BigQuery, Hive/PrestoSpark도 Spark SQL 지원Spark SQL구조화된 데이터 처리를 위한 Spark 모듈데이터 프레임 작업을 SQL로 처리 가능데이터 프레임이 테이블 이름 지정 후 sql 함수 사용 가능HQL(Hive Query Language)과 호환 가능Spark SQL vs DataFrameSQL로 가능한 작업이라면 DataFrame을 사용할 이..

알고리즘 연습/백준

[Python - 1012] 유기농 배추 (S2)

문제1012번: 유기농 배추문제 이해배추 흰 지렁이를 배추 근처에 두고 배추를 보호하려고 함지렁이는 인접(상하좌우)한 배추로 이동할 수 있음최소 배추 흰 지렁이 마리 수 출력테스트 케이스 개수 T, 가로 길이 M, 세로 길이 N, 배추가 심어져 있는 위치의 개수 K, 배추의 위치 X, Y입력 조건 : 1 풀이DFS (깊이 우선 탐색)을 사용해서 모든 땅을 순회하며, 배추가 존재하는 영역을 카운트공부했던 '이것이 취업을 위한 코딩 테스트다 with 파이썬'의 DFS 예시와 비슷한 풀이로 구현이 가능입력 조건에 맞게 t, m, n, k, graph(배추밭), x, y 입력dfs 함수 구현밭의 범위를 넘어가면 False밭의 범위 내에 있고 배추가 있으면, 다시 상하좌우로 이동하여 배추가 있는지 확인모든 땅을 ..

CS/이것이 취업을 위한 코딩 테스트다 with 파이썬

Chapter 5. DFS & BFS

DFS & BFS탐색 (Search)이란 많은 양의 데이터 중 원하는 데이터를 찾는 과정이다. 프로그래밍에서는 그래프, 트리 등의 자료구조 안에서 탐색하는 문제를 자주 다룬다. 대표적인 탐색 알고리즘으로 DFS, BFS가 있다. 이를 이해하기 위해 몇 개의 자료구조를 먼저 알아봐야 한다.자료구조 기초스택 (Stack)선입후출(FILO) or 후입선출(LIFO) : 나중에 들어온 것이 먼저 나감Python의 list : 삽입(append), 삭제(pop)예시 : (박스 쌓기) 아래에서 위로 쌓고 아래의 박스를 치우기 위해 위의 박스를 먼저 내려야 함큐 (Queue)선입선출(FIFO) : 먼저 들어온 것이 먼저 나감python의 deque : 삽입(append), 삭제(popleft)예시 : (대기 줄) 입..

[프로그래머스] 데이터 엔지니어링 데브코스 3기/TIL(Today I Learn)

[TIL - 62일 차] 하둡과 Spark (2)

Spark 프로그래밍 : DataFrameSpark 데이터 처리Spark 데이터 시스템 아키텍처데이터 병렬처리데이터 분산하둡 맵의 데이터 처리 단위는 디스크에 있는 데이터 블록 (128MB)Spark에서는 이를 파티션 (Partition)이라 부름, 파티션의 기본 크기도 128MB나눠진 데이터를 동시 처리MapReduce에서 N개의 데이터 블록으로 구성된 파일 처리 시 N개의 Map 태스크 실행Spark에서는 파티션 단위로 메모리에 로드되어 Executor 배정데이터 분산 -> 파티셔닝 -> 병렬 처리Executor는 할당된 CPU 수만큼의 태스크 처리 가능적절한 파티션 개수 = Execution 개수 * Execution 당 CPU 수Spark 데이터 처리 흐름데이터 프레임은 작은 파티션들로 구성되며,..

기억에 남는 블로그 닉네임
얕게, 깊게