본문 바로가기
반응형

분류 전체보기136

Airflow 특정 Task 재실행 | LIM Airflow를 이용할 때, 실패한 특정 task를 다시 실행하고 싶은 경우가 있다. 이전까지는.. 그냥 맨 처음부터 실행하는 방법만 있는 줄 알았다.. Task 가 적은 경우 괜찮지만 Task 도 많고 시간도 오래 걸리는 작업은... 하지만 특정 Task 가 실패 후 코드를 수정해서 업데이트 한 다음, 실패한 Task 만 다시 실행해서 올바르게 수행이 되었는지 확인하는 방법이 있다! 즉, Airflow는 DAG run 단위로 재수행 하는 방법, Task 단위로 재수행 하는 방법이 있는 것이다. 왜 이걸 이제야 찾아보고 정리하는 걸까..⭐️ Airflow UI 이용하는 방법 실패한 위 Task는 해당 DAG의 거의 마지막 Task 였다. 이 Task 가 계속 실패하고 테스트하면서 앞에 수많은 Task 들.. 2022. 12. 7.
[Airflow] SFTPToGCSOperator 개념 및 사용방법 | LIM ✔️ [SFTP 개념] ssh의 파일 전송 버전이라고 생각하면 됩니다. ssh 방식을 이용하여 안전하게 암호화된 구간에서 ftp 기능을 이용할 수 있게 됩니다. ftp, ftps, sftp(ssh)에 관한 자세한 설명은 이 블로그를 참고했습니다. https://nhj12311.tistory.com/76 ftp, ftps, sftp(ssh) 개념 정리 IT를 전공하거나 아니면 실무를 접하다보면 이 놈의 ftp, ftps, sftp(ssh) 프로토콜에 대해서 이야길 하게 되거나 듣거나 사용하게 됩니다만 개념이라도 좀 정확하게 갈무리하고 접해야한다는 생각이 nhj12311.tistory.com ✔️ [SFTPToGCSOperator - SFTP to Google Cloud Storage Transfer Ope.. 2022. 11. 12.
[Python] Super() 기초 개념 및 활용 예제 | LIM ✔️ Python Super 란 Super() 함수는 super class, 상속받은 부모 클래스를 호출하는 함수입니다. Super 를 설명하기 전 필수 개념인 상속을 잠깐 살펴보고 넘어가보도록 하겠습니다. 다음과 같이 ParentClass와 ChildClass 두개의 클래스를 만들었을 때, (name, number) argument 가 중복되게 됩니다. 이런 경우 ChildClass 가 ParentClass 를 상속받아 동일한 코드가 반복되는 것을 피할 수 있습니다. 하지만 코드를 작성 후 다음과 같이 실행하였을 때, 다음과 같이 에러가 발생하게 됩니다. score 는 잘 나오나 name과 number를 ChildClass 클래스에서 선언해주지 않았기 때문에 생기는 문제입니다. 이 때 Super() 를.. 2022. 11. 8.
Linked List vs Array List | LIM 💡 List란 순서가 있는 데이터의 집합 📌 List 의 종류 List의 종류로는 Array List와 Linked List 가 있는데 두 개의 차이를 한번에 설명해주는 그림이 있어서 가져와 보았다. java의 ArrayList, LinkedList 비교 (출처: 생활코딩) ✔️ Array List 연속적인 공간에 순차적으로 데이터를 저장 🙂 장점 - indexing 가능 😓 단점 - 데이터 추가/삭제가 LinkedList에 비해 오래 걸린다. - 삽입/삭제가 빈번하게 일어날 시 시간이 오래 걸릴 수 있다. ✔️ Linked List 비연속적인 공간에 순서대로 데이터를 저장 🙂 장점 - 데이터의 추가/삭제가 쉽다 😓 단점 - Array List에 비해 인덱스 조회가 오래걸린다. - 순차탐색으로 조회해야하.. 2022. 10. 3.
[Python] MultiProcessing map() vs imap() | LIM 1. Python Multiprocessing에 대한 간단한 설명 2. Pool.map() 과 Pool.imap() 의 차이 3. Pool.imap_unordered() 🖥 Python MultiProcessing 멀티 프로세싱을 활용하면 여러 작업을 별도의 프로세스를 생성 후 병렬처리해서 더 빠르게 결과를 얻어낼 수 있다. 다만 멀티 프로세싱은 메모리 사용률이 높아진다는 단점이 존재한다. 멀티 프로세싱과 멀티 스레드 두 가지 방법이 존재하는데, 파이썬에서는 GIL(Global Interpreter Lock) 정책 때문에 cpu 위주의 작업에서는 멀티 스레딩은 오히려 성능을 떨어뜨린다. 즉 정리하자면, 쓰레드는 가볍지만 파이썬의 GIL정책으로 인해 I/O 처리를 하는 경우에만 주로 효과적이고 프로세스는 .. 2022. 9. 19.
[Programmers] 전화번호 목록 (Lv.2) 프로그래머스에 '전화번호 목록' 문제는 코딩테스트 고득점 Kit에 해시 카테고리에 있다. https://school.programmers.co.kr/learn/courses/30/lessons/42577 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 📚 해시 알고리즘이란? https://amazelimi.tistory.com/30?category=990184 [Python] 해시(Hash)란 무엇인가(feat. Dictionary 자료구조) | LIM 📚 해시함수 해시함수란 데이터의 효율적 관리를 목적으로 임의의 길이의 데이터를 고정된 길이의 데이터로 매.. 2022. 9. 9.
반응형