분류 전체보기
-
Go-modulesGolang 2022. 4. 15. 14:27
go module 이란 go module 은 Golang의 패키지 관리자입니다. go module 은 표준 패키지 관리자이며, golang 1.11 버전 이후부터 표준으로써 자리잡았습니다. 그 이전 버전까지는 dep, glide 와 같은 패키지 관리자가 사용되었습니다. Golang 은 다른 javascript의 package.json, python의 requirements.txt, gradle 환경에서의 build.gradle 과 같은 의존성의 관리하는 파일로써 go.mod 를 활용합니다. go.mod 파일은 go 프로젝트에서 사용하는 의존 패키지들이 기록되는 파일이며, 의존성의 이름과 버전이 상세히 기록됩니다. go build 커맨드를 통해서 의존 패키지들을 설치할 수 있습니다. go workspace..
-
(Java) Programmers JadenCase 문자열 만들기Algorithm 2021. 12. 20. 08:02
- 목차 문제 소개. JadenCase란 모든 단어의 첫 문자가 대문자이고, 그 외의 알파벳은 소문자인 문자열입니다. 단, 첫 문자가 알파벳이 아닐 때에는 이어지는 알파벳은 소문자로 쓰면 됩니다. (첫 번째 입출력 예 참고) 문자열 s가 주어졌을 때, s를 JadenCase로 바꾼 문자열을 리턴하는 함수, solution을 완성해주세요. s는 길이 1 이상 200 이하인 문자열입니다. s는 알파벳과 숫자, 공백문자(" ")로 이루어져 있습니다. 숫자는 단어의 첫 문자로만 나옵니다. 숫자로만 이루어진 단어는 없습니다. 공백문자가 연속해서 나올 수 있습니다. 문제 분석. 문자열의 Char 단위로 순회하면서 올바르게 교정합니다. 교정을 위한 조건은 아래와 같습니다. 1. 첫번째 문자는 반드시 대문자여야함. 2..
-
[pickle] dump, load 알아보기 ( Serialization )Python 2021. 12. 15. 15:25
- 목차 들어가며.이번 글에서는 pickle 모듈의 사용법에 대해서 알아보려고 합니다.pickle 모듈은 자주 사용하는 대상이지만 사용할 때마다 그 사용법이 헷갈리곤 합니다.이 글에서 다양한 사례들을 작성하여 dump 와 load 함수를 손쉽게 사용할 수 있도록 하려고 합니다. pickle.dumppickle.dump 함수를 데이터를 저장하는 용도로 사용됩니다.직렬화하고자 하는 데이터를 특정 파일로 저장할 수 있습니다.흔히 메모리 상에 존재하는 Python Object 들을 Pickle File 형식으로 직렬화 및 저장할 수 있습니다. 아래의 예시는 "hi" 라는 텍스트를 write_text.txt 파일에 저장하는 예시입니다.더 구체적으로 표현하면, Python 의 String 객체를 write_text..
-
RocksDB 알아보기BigData 2021. 12. 15. 12:24
- 목차 소개. RocksDB 에 대해서 알아보려고 합니다. RocksDB 는 대표적인 Key-Value Storage 이자 Embedded Storage 입니다. 빅데이터를 처리하는 여러 어플리케이션에서 주로 사용하는 내부 스토리지인데요. 대표적으로 Apache Flink 가 있습니다. RocksDB 는 File 기반으로 데이터를 저장하고 조회하지만, 특유의 특성으로 인해 빠른 속도의 IO 가 가능합니다. MemTable 의 Write Buffer 와 SSTable 의 빠른 조회를 기반으로 RocksDB는 높은 퍼포먼스를 보입니다. 이어지는 내용에서 자세히 알아보겠습니다. RocksDB Structure. MemTable. MemTable 은 Memory Table 의 약자로, Rocksdb 의 In-..
-
[Python] Programmers 짝지어 제거하기 (Stack)Algorithm 2021. 12. 15. 12:21
- 목차 문제 소개.https://school.programmers.co.kr/learn/courses/30/lessons/12973# 프로그래머스코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요.programmers.co.kr 문제 설명.짝지어 제거하기는, 알파벳 소문자로 이루어진 문자열을 가지고 시작합니다. 먼저 문자열에서 같은 알파벳이 2개 붙어 있는 짝을 찾습니다. 그다음, 그 둘을 제거한 뒤, 앞뒤로 문자열을 이어 붙입니다. 이 과정을 반복해서 문자열을 모두 제거한다면 짝지어 제거하기가 종료됩니다. 문자열 S가 주어졌을 때, 짝지어 제거하기를 성공적으로 수행할 수 있는지 반환하는 함수를 완성해 ..
-
[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..