분류 전체보기
-
[MySQL] Slow Query 알아보기 ( slow_query_log, long_query_time )Database/MySQL 2021. 12. 15. 10:30
- 목차 들어가며.Slow Query Log 는 MySQL 서버에서 실행 시간이 일정 시간 이상 소요된 쿼리들을 기록하는 로그 파일입니다.이번 글에서는 Slow Query 와 관련된 여러 가지 설정과 활용 방법 등에 대해서 알아보는 시간을 가지겠습니다. slow_query_log.MySQL 에서는 Slow Query 의 기록을 위한 몇가지 설정이 있습니다.먼저 my.cnf 파일에서 slow_query_log 을 ON 또는 OFF 를 통해 활성화/비활성화시킬 수 있습니다.그리고 slow_query_log_file 설정을 통해서 Slow Query Log File 의 파일 위치를 지정할 수 있습니다. 아래의 예시는 slow_query_log_file 설정을 통해서 Slow Query Log 의 파일 위치와 ..
-
[Hadoop] Docker 로 Hadoop Cluster 실행하기 ( docker-compose )Hadoop 2021. 12. 15. 10:27
- 목차 소개. 하둡을 이해하기 위해서 실습을 하고자하였습니다. 하지만 리눅스 또는 AWS 에서의 실행은 VM 을 사용하거나 비용이 청구되는 수고로움이 있었습니다. 그래서 도커로 실행하는 방법에 대해서 작성해보고자 합니다. Single NameNode & DataNode. 아래 명령어는 1개의 NameNode 와 DataNode 를 실행하는 docker-compose.yaml 파일과 관련된 명령어들입니다. cat cat docker-compose -f /tmp/hadoop-docker-compose.yaml --project-name=hadoop up -d Docker 실행. 1. hadoop config 파일을 생성합니다. 하둡은 core-site.xml, hd..
-
[Programmers] 연속된 부분 수열의 합 ( Two Pointers, 투포인터 )Algorithm 2021. 12. 11. 10:19
- 목차 문제 설명. 비내림차순으로 정렬된 수열이 주어질 때, 다음 조건을 만족하는 부분 수열을 찾으려고 합니다. 기존 수열에서 임의의 두 인덱스의 원소와 그 사이의 원소를 모두 포함하는 부분 수열이어야 합니다. 부분 수열의 합은 k입니다. 합이 k인 부분 수열이 여러 개인 경우 길이가 짧은 수열을 찾습니다. 길이가 짧은 수열이 여러 개인 경우 앞쪽(시작 인덱스가 작은)에 나오는 수열을 찾습니다. 수열을 나타내는 정수 배열 sequence와 부분 수열의 합을 나타내는 정수 k가 매개변수로 주어질 때, 위 조건을 만족하는 부분 수열의 시작 인덱스와 마지막 인덱스를 배열에 담아 return 하는 solution 함수를 완성해주세요. 이때 수열의 인덱스는 0부터 시작합니다. 제한사항 5 ≤ sequence의 ..
-
[SparkML] Linear Regression 구현하기 ( Kaggle )Spark/SparkML 2021. 12. 5. 21:43
- 목차 소개. 아래 링크는 kaggle 의 Conf. Interval for Inferences 의 Linear Regression 관련 문제입니다. https://www.kaggle.com/code/abdulazizdusbabaev/conf-interval-for-inferences/notebook Conf. Interval for Inferences Explore and run machine learning code with Kaggle Notebooks | Using data from Linear Regression www.kaggle.com SparkML 을 기반으로 Linear Regression 을 구현한 예시코드입니다. import os from pyspark.ml.feature impor..
-
(Java) Programmers 괄호 회전하기 [Stack, Queue]Algorithm 2021. 12. 4. 17:23
- 목차 문제 설명. 다음 규칙을 지키는 문자열을 올바른 괄호 문자열이라고 정의합니다. (), [], {} 는 모두 올바른 괄호 문자열입니다. 만약 A가 올바른 괄호 문자열이라면, (A), [A], {A} 도 올바른 괄호 문자열입니다. 예를 들어, [] 가 올바른 괄호 문자열이므로, ([]) 도 올바른 괄호 문자열입니다. 만약 A, B가 올바른 괄호 문자열이라면, AB 도 올바른 괄호 문자열입니다. 예를 들어, {} 와 ([]) 가 올바른 괄호 문자열이므로, {}([]) 도 올바른 괄호 문자열입니다. 대괄호, 중괄호, 그리고 소괄호로 이루어진 문자열 s가 매개변수로 주어집니다. 이 s를 왼쪽으로 x (0 ≤ x < (s의 길이)) 칸만큼 회전시켰을 때 s가 올바른 괄호 문자열이 되게 하는 x의 개수를 r..
-
[SparkML] VectorAssembler 알아보기Spark/SparkML 2021. 12. 4. 16:57
- 목차 소개. SparkML 에서 VectorAssembler 는 feature 들을 하나의 Vector 로 만들어주는 모듈입니다. Vector 와 Assemble 은 이름 그대로 feature 들을 모아 하나의 Vector 를 만듭니다. Assemble 이 "모으다", "집합시키다", "조합하다" 뜻을 가지듯 말이죠. VectorAssembler 를 통해서 DataFrame 의 Column 들은 하나의 Vector 됩니다. 아래 예시는 Boolean, Integer, Double 타입의 칼럼 3개를 하나의 Vector 로 만드는 예시입니다. from pyspark.ml.feature import VectorAssembler from pyspark.sql import SparkSession from p..
-
[Programmers] 최솟값 만들기 (lv2, Java)Algorithm 2021. 12. 4. 16:51
- 목차 문제 설명. https://school.programmers.co.kr/learn/courses/30/lessons/12941# 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 길이가 같은 배열 A, B 두개가 있습니다. 각 배열은 자연수로 이루어져 있습니다. 배열 A, B에서 각각 한 개의 숫자를 뽑아 두 수를 곱합니다. 이러한 과정을 배열의 길이만큼 반복하며, 두 수를 곱한 값을 누적하여 더합니다. 이때 최종적으로 누적된 값이 최소가 되도록 만드는 것이 목표입니다. (단, 각 배열에서 k번째 숫자를 뽑았다면 다음에 k번째 숫자는 다시 뽑을 수 ..
-
[Sarama] Sarama 로 Kafka Producer 만들어보기 ( Golang )Golang 2021. 12. 4. 16:25
- 목차 들어가며. 이번 글에서는 Golang 의 Kafka Clients 라이브러리인 Sarama 에 대해서 알아보려고 합니다. 무엇보다도 구체적인 예시와 시각적인 자료가 이해하는데에 있어서 큰 도움이 된다고 생각해서 Sarama 를 활용한 Kafka Producer 를 만들어보겠습니다. 현 시점의 가장 최신 버전인 Golang 1.19 와 Sarama 1.43.0 버전을 사용하도록 하겠습니다. Sarama 와 Golang 의 버전 호환성은 아래와 링크를 통해서 확인하실 수 있습니다. https://github.com/IBM/sarama/releases Releases · IBM/sarama Sarama is a Go library for Apache Kafka. Contribute to IBM/sar..
-
Linux awk 알아보기Linux & Shell 2021. 12. 4. 16:25
- 목차 소개. awk 는 텍스트를 분석 및 처리하는 유닉스/리눅스의 실행파일입니다. Aho, Weinberger, Kernighan 세 사람에 의해서 개발되어 AWK 라고 이름붙여졌구요. awk 를 통해서 간단한 텍스트 또는 문서를 프로세싱할 수 있습니다. 이번 글에서는 awk 실행파일을 사용하는 문법과 여러 케이스들에 대해서 알아보려고 합니다. awk 란 ? awk 는 텍스트를 처리하는 명령어입니다. Unix, Linux, MacOS 등에서 사용할 수 있는 실행파일로써 built-in binary file 로써 제공됩니다. 텍스트파일을 행 기반으로 처리하는 대표적인 유닉스 도구이구요. 텍스트 파일의 행은 한 줄의 Line 을 의미합니다. 텍스트의 문자를 추출할 수 있습니다. "Andy Bob Chri..
-
Programmers 멀리 뛰기Algorithm 2021. 12. 3. 22:24
- 목차 소개. "프로그래머스 멀리 뛰기" 문제의 웹 링크를 첨부합니다. https://school.programmers.co.kr/learn/courses/30/lessons/12914 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 문제 분석. 멀리 뛰기 문제는 대표적인 점화식과 관련된 문제입니다. 제가 시도한 문제 해결의 접근 방법을 나열해보겠습니다. 효진이가 1칸을 뛰는 방법. 1칸만큼 점프를 할 수 있으므로 1개의 방법이 존재합니다. j(1) = 1 효진이가 2칸을 뛰는 방법. 1 칸만큼 2 번 점프를 할 수 있고, 2 칸만큼 1 번 점프할 수 있..