본문 바로가기

분류 전체보기126

ssh-keygen에 대해 알아보자 목차 LIST   개요업무하면서 종종 ssh-keygen을 사용할 일이 있었는데, 정확히 이해하지 않고 그냥 사용하다가 한 번은 정리해야 할 것 같아서 글 작성합니다. 서버 간에 SSH 통신을 위해 SSH 키 기반 인증을 사용합니다. 이 방법을 사용하면 비밀번호를 사용하는 것보다 안전하며, 자동화된 스크립트를 실행할 때 유용합니다. SSH 키 생성 및 설정1. 키 생성 : 로컬 서버에서 SSH 키를 생성합니다. 일반적으로 RSA 키를 사용하지만, 최근에는 보안성이 강화된 Ed25519 키 사용을 권장합니다. 공개 키와 비밀 키로 구성된 SSH 키 쌍이 생성됩니다.# RSAssh-keygen -t rsa -b 4096# Ed25519ssh-keygen -t ed25519 2. 공개 키 복사 : 위에서 생성.. 2024. 4. 25.
NGINX TCP / UDP Load Balancing NGINX를 사용해서 TCP / UDP 트래픽을 프록시하고 로드 밸런싱하는 방법에 대해 설명합니다. 소개 로드 밸런싱은 네트워크 트래픽을 여러 백엔드 서버에 효율적으로 분산하는 것을 말합니다. Prerequisities '--with-stream' 를 포함하여 빌드된 NGINX Reverse Proxy 구성 먼저, NGINX가 클라이언트의 TCP / UDP 를 프록시된 서버로 전달할 수 있도록 리버스 프록시를 구성해야 합니다. proxy_pass에는 서버가 트래픽을 전달할 proxy된 서버나 upstream 그룹을 지정합니다. stream { server { listen 12345; #TCP traffic will be forwarded to the "stream_backend" upstream grou.. 2024. 4. 17.
Apache Spark : Join strategy 목차 LIST Join operation은 스파크에서 가장 대중적으로 사용되는 transformation이다. 스파크는 join을 어떻게 구현할지 선택하기 위한 몇가지 알고리즘을 사용한다. 이 알고리즘들은 스파크가 작업을 어떻게 처리할지 결정하는 단계에서 사용된다. 아래에서 스파크가 조인을 사용하기 위한 전략을 결정하는지 알아보자. Spark Join 전략의 요소들 Data Size Spark는 비용이 많이 드는 셔플과 정렬을 피할 수 있는 join 전략을 선택한다. 따라서, 데이터가 브로드캐스트 될 수 있다면 해시 기반 join 전략을 더 선호한다. 셔플 (shuffle)? Apache Spark에서 shuffle은 데이터를 재분배하는 과정을 의미합니다. shuffle은 특정 작업을 수행하기 위해 다른.. 2024. 3. 21.
코딩테스트 언어 Java->Python 변경 기록 목차 LIST 코딩 테스트에서 사용하는 언어를 Java에서 Python으로 바꿔보려고 한다. 그래서 가벼운 문제들 풀면서 감잡는 과정 기록 1) 백준 2606번 바이러스 import sys from collections import deque n = int(input()) m = int(input()) table = [[0 for _ in range(101)] for _ in range(101)] for _ in range(m): x, y = map(int, input().split()) table[x][y] = 1 # 이부분! 때문에 처음에 틀렸었음 table[y][x] = 1 result = 0 visited = [0] * 101 stack = deque() stack.append(1) visited.. 2024. 3. 14.
Apache Spark : RDD, Transformation, Action, Persist 목차 LIST RDD 스파크는 연산 과정을 클러스터 전체에 걸쳐 자동으로 병렬화하여 분산 배치된 연산 작업들의 모음으로 표현한다. 이 모음은 RDD(Resilient Distributed Dataset, 탄력적인 분산 데이터세트)라고 부른다. RDD는 분산 데이터와 연산을 위한 스파크의 핵심 개념이다. 즉, RDD는 분산되어 존재하는 데이터 요소들의 모음이다. RDD 기초 RDD는 쉽게 말하면 '분산되어 있는 변경 불가능한 객체 모음'이다. 각 RDD는 클러스터의 서로 다른 노드들에서 연산이 가능하도록 여러 개의 파티션으로 나뉜다. RDD는 외부 데이터세트를 로드하거나 드라이버 프로그램에서 객체 컬렉션(ex. list, set)을 분산시키는 두 가지 방법으로 생성할 수 있다. 아래는 SparkContex.. 2024. 2. 27.
Apache Spark : SparkContext vs SparkSession SparkContext와 SparkSession의 차이점은 스파크 사용자들 사이에서 자주 논의되는 주제입니다. 둘 다 스파크의 엔트리 포인트(entry points)로 사용 가능하지만, 몇 가지 차이점이 있습니다. 이제 차이점에 대해 알아보겠습니다. 엔트리 포인트(entry point)? 프로그래밍 언어에서 엔트리 포인트는 프로그램 실행이 시작되는 함수나 메서드입니다. 예를 들면 main() 함수가 전형적인 엔트리 포인트입니다. 스파크와 같은 프레임워크에서의 엔트리 포인트는 해당 라이브러리나 프레임워크의 기능을 초기화하고 접근하기 위한 API나 함수를 말합니다. 예를 들어, 스파크에서 SparkContext, SparkSession은 애플리케이션이 스파크 기능을 사용하기 위해 초기에 접근해야 하는 엔트리.. 2024. 2. 26.
반응형