[Apache Kafka] 살펴보기
토픽(Topic)과 파티션(Partition), 세그먼트 파일(Segment File) 카프카에서 전달되는 메시지 스트림의 추상화된 개념을 토픽(Topic)이라고 한다. 프로듀서는 메시지를 특정 토픽에 발행한다. 컨슈머는 특정 포틱에서 발행되는 메시지를 구독할 수 있다.
토픽(Topic)과 파티션(Partition), 세그먼트 파일(Segment File) 카프카에서 전달되는 메시지 스트림의 추상화된 개념을 토픽(Topic)이라고 한다. 프로듀서는 메시지를 특정 토픽에 발행한다. 컨슈머는 특정 포틱에서 발행되는 메시지를 구독할 수 있다.
등장배경 기존 링크드인의 데이터 처리 시스템은 각 파이프라인이 파편화되고 시스템 복잡도가 높아 새로운 시스템을 확장하기 어려운 상황이었습니다.
RDD(Resilient Distributed Dataset) RDD는 주된 Apache Spark 프로그래밍 추상화의 구조이며, 여러 노드에 흩어져 있으면서 병렬처리 될 수 이는 아이템들의 모임 Apache Spark의 가장 기본적인 데이터 단위 Resilient :...
Apache Spark Apache Spark는 오픈 소스 클러스터 컴퓨팅 프레임워크이며, 클러스터 환경에서 데이터 병렬처리를 지원합니다.
Apache Hadoop Apache Hadoop은 분산환경에서 빅데이터를 저장하고 처리할 수 있는 Java기반의 오픈소스 프레임워크입니다. Hadoop은 파일 시스템인 HDFS와 데이터를 처리하는 MapReduce 엔진을 합한 것을 말합니다.
제1절 분석 기획 방향성 도출
제1절 분산 데이터 저장 기술
제1절 ETL(Extraction, Transformation and Load)
제1절 빅데이터의 이해
제1절 빅데이터 분석과 전략 인사이트
제1절 데이터와 정보
이 글은 NiFi를 활용하여 GET방식으로 API를 호출하는 방법을 설명하는 글이다. 전체적인 흐름은 FlowFile 생성 -> API 호출 -> JSON 분할 -> 로그 쌓기 순으로 진행된다. 이 글은 API 호출하는 방법에 대해 설명하므로 JSON형태의 데이터는...
이 글은 NiFi를 활용하여 MySQL의 데이터를 연동하는 방법을 설명하는 글이다. 가져온 MySQL 데이터를 분할하여 JSON으로 변환하는 방법까지 다룰 예정이다. Database Extrat with NiFi의 글을 참고하였다.
이 글은 NiFi를 활용하여 Apache Access Log를 읽어와 정형화하고 Elasticsearch에 연동하는 방법을 설명하는 글이다. NiFi에 대해 한글로 example과 한글로 번역된 글이 부족하여 많은 시행착오를 거쳤다.
아파치 나이파이(Apache NiFi, 나이아가라파일즈/NiagaraFiles의 준말)는 소프트웨어 시스템 간 데이터 흐름을 자동화하도록 설계된 아파치 소프트웨어 재단의 프로젝트이다. 과거에 NSA에 의해 개발되었고 2014년 기술 전송 프로그램의 일부로서 오픈소스화된 나이아가라파...
구현 풀이를 떠올리는 것은 쉽지만 소스코드로 옮기기 어려운 문제 알고리즘은 간단한데 코드가 지나칠 만큼 길어지는 문제 실수 연산을 다루고, 특정 소수점 자리까지 출력해야 하는 문제 문자열을 특정한 기준에 따라서 끊어 처리해야 하는 문제 적절한 라이브러리를 찾아서...
정렬 정렬(Sorting)이란 특정한 기준에 따라 순서대로 나열하는 것을 말함 일반적으로 문제 상황에 따라서 적절한 정렬 알고리즘이 공식처럼 사용됨
이진 탐색 알고리즘 순차탐색 : 리스트 안에 특정한 데이터를 찾기 위해 앞에서부터 데이터를 하나씩 확인하는 방법 이진탐색 : 정렬되어 있는 리스트에서 탐색 범위를 절반씩 좁혀가며 데이터를 탐색하는 방법
그리디 알고리즘 그리디 알고리즘은 현재 상황에서 지금 당장 좋은 것만 고르는 방법을 의미함 일반적인 그리디 알고리즘은 문제를 풀기 위한 최소한의 아이디어를 떠올릴 수 있는 능력을 요구함 단순히 가장 좋아 보이는 것을 반복적으로 선택해도 최적의 해를 구할 수 있는지를 검...
재귀 팩토리얼 구현
최단 경로 문제 가장 짧은 경로를 찾는 알고리즘 다양한 문제 상황 한 지점에서 다른 한 지점까지의 최단 경로 한 지점에서 다른 모든 지점까지의 최단 경로 모든 지점에서 다른 모든 지점까지의 최단 경로 각 지점은 그...
다이나믹 프로그래밍 다이나믹 프로그래밍은 메모리를 적절히 사용하여 수행 시간 효율성을 비약적으로 향상시키는 방법 이미 계산된 결과는 별도의 메모리 영역에 저장하여 다시 계산하지 않도록 함 다이나믹 프로그래밍의 구현은 일반적으로 두가지(탑다운, 바텀업)으로 구성 탑다...
소수(Prime Number) 소수란 1보다 큰 자연수 중에서 1과 자기 자신을 제외한 자연수로는 나누어 떨어지지 않는 자연수 코딩 테스트에서는 어떠한 자연수가 소수인지 판별해야하는 문제가 자주 출제
OLTP(Online Transaction Processing) 온라인 트랜잭션 처리 네트워크 상의 여러 사용자가 실시간으로 데이터베이스를 갱신하거나 조회하는 등의 단위 작업을 처리하는 방식 송수신 자료를 트랜잭션 단위로 압축했기에 기존 컴퓨터 통신에서 사용해 왔던 온...
회사 코딩테스트를 대비해서 한번 정리했다. 하지만 코딩테스트의 결과는 좋지 않았다. 그래도 매번 귀찮게 찾아보는 것보다 한번에 보는 것이 나아서 정리했다.
문제 해설 데이터의 수가 부족하다고 판단 되어 기본적인 Data Augmentation을 수행 brightness_range horizontal_flip rescale Cutmix ImageNet 데이터 셋...
확률 분포 주사위나 동전을 던질 때 뭐가 나올지, 그 결과는 실제로 던져 보기 전에는 알 수 없다. 하지만 동전을 던질 때, 앞면이 나올 가능성은 50%다라고 말하는 것 처럼 결과를 예측할 수 있다. 결과는 우연히 정해지는 것이지만 그 결과를 예측할 때는 확률이나 확률...