본문 바로가기

전체 글

cross join(trino에서 unnest와 함께 사용하기) 데이터를 분석하다보면 table이나 dataframe에서 join을 많이하게 된다. 보통은 inner을 제일 많이 사용하고 간혹 left나 right JOIN을 자주 사용한다. 그런데 최근에 cross join은 써본적이 없어서 간단하게 정리해본다. cross join은 간단히 이야기 하면 양쪽 table을 서로 조합해서 모든 경우로 확장하는 것이다. 수학적으로는 곱집합(product set, cartesian product 등)이라고 한다.  chatgpt에게 cross join 예시를 들어 달라고한 결과 나는 개인적으로 많이 사용하는게 trino에서 특정 colum을 explode할 떄 많이 사용한다. array나 map으로 되어있는 column을 explode하는데 유용하다. row 수를 줄이기 .. 더보기
[VSCODE] python 자동 코드 포맷팅 방법 Python 코드를 자동으로 포맷팅해주는 Black 라이브러리를 사용하려면, 다음과 같은 단계를 따라 설정할 수 있습니다. 먼저, VS Code 확장 메뉴에서 "Python"을 검색하여 Microsoft에서 제공하는 Python 확장 프로그램을 설치합니다. 이후, VS Code의 왼쪽 사이드바에서 "Extensions"을 클릭한 후, 검색 창에서 "Python"을 입력하여 검색한 후, "Python" 확장 프로그램을 선택하고 "Install" 버튼을 눌러 설치합니다. 설치가 완료되면, VS Code를 다시 시작하고, Python 파일을 열어 봅니다. Python 파일이 열리면, 왼쪽 하단의 상태 표시줄에서 "Python" 버전을 클릭하여 현재 활성화된 Python 환경을 확인합니다. 다음으로, VS Co.. 더보기
newman action https://github.com/marketplace/actions/newman-action Newman Action - GitHub Marketplace Run Postman collections via Newman github.com Newman action은 Postman의 기능 중 하나로, API를 자동으로 테스트하고 문제가 있는지 여부를 확인하는 자동화 도구입니다. Newman action은 Postman의 컬렉션 파일을 실행하고 결과를 리포트 형식으로 출력해줍니다. 이를 통해 API 개발 및 테스트 과정을 자동화하고 효율적으로 수행할 수 있습니다. Newman action은 다양한 플랫폼에서 사용할 수 있으며, CLI(Command Line Interface)를 통해 쉽게 실행할 수 있습니다.. 더보기
spark 최적화 관련 영상 https://www.youtube.com/watch?v=daXEp4HmS-E 더보기
nestjs 스터디 관련 내용 정리 reflect-metadata 패키지 - 데코레이터로 rest api 만들 때 사용 rxjs 패키지 - 비동기 및 이벤트 기반 프로그래밍 작성 컨트롤러 https://docs.nestjs.com/controllers - 클라이언트에서 요청이 들어오면 응답 반환 - 여러개의 컨트롤러(클래스)를 합치는 방식으로 사용 - @Controller() 데코레이터 사용, @Controller('cats') 이런식으로 path를 추가 지정하여 path를 추가할 수 있음 - 보통 컨트롤러 안에 rest api를 @Get @Post로 작성, 각 함수내에서 xx.service.ts 내의 함수에서 비지니스 로직을 구현 - @Req(), @Body(), @Param() 등의 데코레이터를 함수 파라미터로 받아서 클라이언트 요청 .. 더보기
[NestJS] 설치 방법, 개발 환경(nvm, nodejs, npm) 세팅 (MAC) MAC M1 기준으로 설명된 글 입니다. NestJS는 Node.js 기반으로 일단 node.js 설치가 필요 node.js를 쓰려면 nvm을 사용하는 것이 좋음 nvm 이란 Node Version Manager라는 말 그대로 Node.js의 버전을 관리해주는 프로그램 개발자가 한 계정에 여러 버전의 Nodejs을 설치하고 원하는 버전을 선택하여 사용할 수 있음 homebrew로 nvm 설치 brew install nvm nvm 설치 확인 nvm -v 0.39.3 node.js LTS 버전 설치(2023.03.20 기준 v18.15.0) nvm install v18.15.0 nvm use v18.15.0 nodejs, npm 설치 확인 node -v v18.15.0 npm -v 9.5.0 npm으로 ne.. 더보기
[LeetCode] 58. Length of Last Word https://leetcode.com/problems/length-of-last-word/ Length of Last Word - LeetCode Length of Last Word - Given a string s consisting of words and spaces, return the length of the last word in the string. A word is a maximal substring consisting of non-space characters only. Example 1: Input: s = "Hello World" Output: 5 Explanation: Th leetcode.com string에서 last word의 길이를 구하는 문제 space 처리를 하는 문제로 매.. 더보기
35. Search Insert Position https://leetcode.com/problems/search-insert-position/description/ Search Insert Position - LeetCode Search Insert Position - Given a sorted array of distinct integers and a target value, return the index if the target is found. If not, return the index where it would be if it were inserted in order. You must write an algorithm with O(log n) runtime com leetcode.com sorted array에 주어진 하나의 숫자를 정확한 .. 더보기