본문 바로가기
반응형

분류 전체보기164

Kubernetes kubectl MongoDB 데이터 추출하기 K8s클러스터에 구성된 MongoDB(DocumentDB) 에서 데이터를 추출하는 방법에 대해 설명합니다. 로컬에서 K8s에 접근하여 pod를 띄워 mongo db 내부 데이터를 복사하는 순서는 아래와 같습니다.  1. mongosh을 사용할 수 있는 pod를 하나 띄우고 내부에 접속한다.2. 내부에서 mongosh을 이용해서 데이터베이스에 접근한다.3. 데이터를 조회하여 변수에 담는다.4. 해당 변수를 javascript를 이용해서 pod 로컬에 저장 한다.5. pod로 부터 로컬에 파일을 복사한다. 순서에 맞게 명령어를 통해 확인해봅시다. 로컬과 Pod 내부에서 진행되는 내용이 헷갈릴 수 있으므로 잘 확인하며 진행하면 될 것이다. * 명령어 실행 전, 먼저 mongo 도커 이미지가 필요하다.1dock.. 2024. 4. 29.
[Ubuntu 20.04] nvtop 설치하기 Ubuntu 20.04 버전에서 nvtop을 설치하려고 할 때 다음과 같은 에러가 발생했다. 다음 패키지의 의존성이 맞지 않습니다: nvtop: 의존: libnvidia-compute-418 하지만 %s 패키지를 설치하지 않을 것입니다. E: 문제를 바로잡을 수 없습니다. 망가진 고정 패키지가 있습니다. 보통 sudo apt install nvtop 으로 해결이 되지만 위처럼 에러가 발생하면 아래와 같이 실행해보자. 해결 되신분은 댓글로 공유 부탁드립니다 😊😃 sudo apt-get install libncurses5-dev libncursesw5-dev -y sudo apt-get install libudev-dev libsystemd-dev -y sudo apt-get install libdrm-de.. 2024. 3. 5.
[LeetCode] Number of Changing Keys https://leetcode.com/problems/number-of-changing-keys/ int: s = s.lower() answer = 0 # 처음 문자를 가지고 origin = s[0] # 두번째 문자부터 for i in s[1:]: if i!=origin: answer += 1 origin = i return answer cs 제출 결과 속도가 느린편에 속한데, 빠른 사람들의 코드를 보면 크게 로직의 차이는 없다. 제일 빠른 사람의 코드이다. 1 2 3 4 5 6 7 8 9 class Solution: def countKeyChanges(self, s: str) -> int: s = s.lower() count = 0 for i in range(1,len(s)): if s[i] != s[.. 2024. 2. 24.
[LeetCode] 3042. Count Prefix and Suffix Pairs https://leetcode.com/problems/count-prefix-and-suffix-pairs-i Count Prefix and Suffix Pairs I - LeetCodeCan you solve this real interview question? Count Prefix and Suffix Pairs I - You are given a 0-indexed string array words. Let's define a boolean function isPrefixAndSuffix that takes two strings, str1 and str2: * isPrefixAndSuffix(str1, str2) returns truleetcode.com 주어진 string 리스트에서 하나의 단어가 .. 2024. 2. 23.
[Codility] CyclicRotation 파이썬 풀이 문제 링크: https://app.codility.com/programmers/lessons/2-arrays/ 문제 An array A consisting of N integers is given. Rotation of the array means that each element is shifted right by one index, and the last element of the array is moved to the first place. For example, the rotation of array A = [3, 8, 9, 7, 6] is [6, 3, 8, 9, 7] (elements are shifted right by one index and 6 is moved to the first plac.. 2024. 1. 23.
[Codility] BinaryGap 파이썬 풀이 문제 링크: https://app.codility.com/programmers/lessons/1-iterations/ 문제 A binary gap within a positive integer N is any maximal sequence of consecutive zeros that is surrounded by ones at both ends in the binary representation of N. For example, number 9 has binary representation 1001 and contains a binary gap of length 2. The number 529 has binary representation 1000010001 and contains two binary .. 2024. 1. 23.
ChatGPT로 인한 블로그 유입량 저하를 어떻게 해결할까? 개발하며 접했던 오류와 이슈들을 해결하는 포스트를 많이 작성했었습니다. 메타버스가 뜨거웠을 당시에는 하루 1,000명도 들어왔던 블로그였으나 이제 메타버스 관련 포스트에는 유입이 거의 없는 것 같습니다. 이직 한 지 1년이 채 되지 않았습니다. 그동안 업무에 집중하고 결혼을 준비하며 거의 포스트는 작성하지 못했는데 점점 유입이 줄어드는 것 같습니다. 바쁜 이유로 블로그를 관리하지 못한 이유도 있겠지만 가장 큰 유입량 저하의 원인은 ChatGPT가 아닐까 싶습니다. 개발하는 데에 있어서 검색하고 제 블로그에 들어오는 것보다 ChatGPT가 더 빠를테니까요. 제 블로그에서 가장 인기 있는 글인 네이버 카페 크롤링 하는 코드를 물어보면 제 코드와 비스무리하게 ChatGPT도 답변을 합니다. 네이버 크롤링 코드.. 2023. 10. 18.
[Python] 파이썬 프로파일링 (w/ line_profiler) 코드를 짜다보면 어느 부분에서 가장 오래걸리는지 체크를 할 때 time 패키지를 사용해서 현재시간에서 시작 시간을 빼주곤 한다. 매 라인 적어주기가 엄청 귀찮음.. Line-by-line profiling을 통해 쉽게 해결하자. 사용 방법 - pip install line_profiler - 기본적으로 타겟 함수 def위에 @profile을 적어주어야 한다. (파일로 저장할 경우) - 터미널에서는 python 명령어가 아닌 kernprof -l -v 명령어를 사용한다. (kernprof -l -v test.py) - 주피터 노트북에서는 아래와 같이 프로파일러를 로딩하고 실행한다. %load_ext line_profiler %lprun -u 1e-6 -f test for _ in range(100): te.. 2023. 2. 28.
[Python] Garbage Collection 파이썬 가비지 콜렉션 기존 메모리 관리의 문제점 메모리를 직접 관리해야하는 언어들은 크게 두 가지 관점에서 문제점을 가지고 있다. 필요 없는 메모리를 삭제: 메모리를 사용하고 비우지 않는 경우, 메모리 누수가 발생할 수 있고 장기적인 관점에서 치명적일 수 있음 사용중인 메모리 삭제: 존재하지 않는 메모리에 접근하려고 하면 프로그램이 중단되거나 데이터가 손상될 수 있음 이러한 문제를 해결하기 위해 자동 메모리 관리(Automatic Memory Management) 시스템이 등장하게 되었음 GC module 사용 gc 모듈을 사용하여 가비지 컬렉션 통계를 확인하거나 가비지 컬렉터의 동작을 변경할 수 있다. -- gc 모듈을 사용하며 get_threshold() method를 사용하여 가비지 컬렉터의 구성된 임계값을 확인할 수 .. 2023. 2. 6.
반응형