일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- 네이버
- 백준 #baekjoon # 2563
- Ubuntu 20.04
- Virtual Box 7.0.6
- 후기
- id # tr # 환경변수
- 네이버 부스트 코스
- 웹/모바일
- 운영체제론
- 8기
- 부스트캠프
- 보기 편하라고 만든
- Today
- Total
목록2024/02 (14)
Miner
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/bmQln8/btsEFgpZLDu/FpR38nQHDej95bQ15Yfi8k/img.png)
데이터 배치 처리 배치 처리 - 주기적으로 데이터를 한 곳에서 다른 곳으로 이동하거나 처리 주기 = daily, hourly, 5분에 한번, 10분에 한번 (1분단위는 못함) 처리량(Thriughput)이 중요 데이터를 모아서 처리 처리 시스템 구조 분산 파일 시스템(HDFS, S3) 분산 처리 시스템(MapReduce, Hive/Presto, Spark DataFrame, Spark SQL) 처리 작업 스케줄링에 보통 Airflow 사용 데이터 실시간 처리 연속적인 데이터 처리 realtime vs semi-realtime (micro batch) realtime : 특정한 이벤트가 발생했을 때 (~카드를 사용했을 떄) Semi-realtime : 분단위 보다 적은 간격으로 그 사이에 모아진 데이터를 ..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/Nd6Ch/btsEGjTBjdI/CkyB7gVVK7j5c5GVuamjo0/img.png)
일반적인 데이터 처리의 단계 데이터 수집 (Data Collection) 데이터 저장 (Data Storage) 데이터 처리 (Data Processing) Decision Science 의사 결정을 데이터 기반으로 과학적으로 하는 것 Product Science 우리가 만드는 서비스의 품질을 데이터를 기반으로 개선하는 것 처음에는 배치로 시작 ( 이 경우 처리할 수 있는 데이터의 양이 중요 ) 서비스가 고도화되면 실시간 처리 요구가 생기기 시작함 ( Realtime 처리 vs Semi Realtime 처리 ) 동일 데이터 소비가 필요한 케이스 증가 : 다수의 데이터 소비자 등장 처리량(Throughput) vs 지연시간(Latency) 처리량 : 주어진 단위 시간 동안 처리할 수 있는 데이터의 양 클수..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/mw603/btsEECmDRLc/OpiStsBb8oLdkB3qZvLNj0/img.png)
Kafka / Spark Streaming 구글이 데이터 분야에 끼친 영향 구글이 데이터 분야에 미친 영향은 하둡 등을 통한 배치 프로세싱부터 시작해서 텐서플로우, K8s 등 이루 말 할 수 없다. 1. 구글 검색 엔진의 등장 기존의 검색 엔진은 기본적으로 웹 페이지 상의 텍스트를 보고 랭킹을 결정 -> 신뢰가 높은 결과가 나오지 않게 됨 구글은 웹 페이지들간의 링크를 기반으로 중요한 페이지를 찾아서 검색 순위 결정 (페이지 랭크 논문) 2004년 여름에 상장, 2021년 2월 기준 1.41T로 급성장 / 검색 마케팅 플랫폼으로 확장, 안드로이드 개발로 모바일 생태계 지배, 유튜브 인수를 통한 스트리밍 시장 석권 다양한 논문 발표와 오픈소스 활동으로 개발자 커뮤니티에 큰 영향을 미침 페이지 랭크 더 중요..
Spark Session 생성 Spark 프로그램의 시작은 Spark Session 이라는 Object를 만드는 것 그리고 Spark Session에 다양한 환경설정을 하게 됨 프로그램마다 하나를 만들어 Spark Cluster와 통신: Singleton 객체 Spark 2.0에서 처음 소개됨 Spark Session을 통해 Spark이 제공해주는 다양한 기능을 사용 DataFrame, SQL, Streaming, ML API 모두 이 객체로 통신 config 메소드를 이용해 다양한 환경설정 가능 단 RDD와 관련된 작업을 할때는 SparkSession 밑의 sparkContext 객체를 사용 Spark Session API 문서 pyspark.sql.SparkSession — PySpark 3.1.1 ..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/sko7X/btsEA7lulmm/CCzsWeWIUmFW1ZCwkAscf1/img.png)
RDD, DataFrame, Dataset Immutable Distributed Data RDD (Resilient Distributed Dataset) - 클러스터내의 서버에 분산된 데이터를 지칭, 레코드별로 존재하지만 스키마가 존재하지 않음, 구조화, 비구조화 된 데이터 모두 지 RDD(low_level) 가 가장 밑 바닥에 있는 구조, 그 위에 DataFrame과 Dateset 이 올라가 있는 구조 RDD로 할 수 있는 일은 많지만 생산성이 낮아서 대부분 파이썬으로 코딩을 한다고 하면 DataFrame을 사용하고 Scala혹은 Java로 코딩한다고 하면 Dataset을 사용한다. 구조화된 데이터를 사용한다고 하면 SparkSql을 사용하는 것이 일반적, Pyspark에서는 DataFrame을 사용..
![](http://i1.daumcdn.net/thumb/C150x150.fwebp.q85/?fname=https://blog.kakaocdn.net/dn/Jir43/btsEBVkvXu7/oZbcNXOJYmUR3FGRi9VqY1/img.png)
Summary 데이터 처리에서 중요한 개념 : Partition, Shuffling 데이터 구조 : RDD, DataFrame, Dataset Spark Session 생성과 설정 DataFrame 프로그래밍 Spark 데이터 시스템 아키텍처 ( 종합선물세트 같은 ) 외부데이터 : NOSQL, RDMS 데이터 병렬처리가 가능하려면? 데이터가 먼저 분산되어야함 하둡 맵의 데이터 처리 단위는 디스크에 있는 데이터 블록(128MB) hdfs-site.xml에 있는 dfs.block.size 프로퍼티가 결정 Spark에서는 이를 파티션(Partition)이라 부름. 파티션의 기본크기도 128MB spark.sql.files.maxPartitionBytes : HDFS등에 있는 파일을 읽어올 때만 적용됨 다음으로..