본문 바로가기

분류 전체보기

(104)
TIL 12/27~01/02 - Facebook 메신저 + AWS Lambda + AWS EC2 Crontab + AWS DynamoDB + AWS RDS(Mysql) + AWS S3 + Cloud watch 로 개인 프로젝트 시작 좋아하는 가수와 가장 비슷한 가수정보 찾아 주는 프로젝트 자기가 좋아하는 아티스트를 메신저에 입력하면 아티스트의 정보를 찾아 주고 제일 비슷한 아티스트를 추천해주고 그 아티스트의 대표곡을 보여주는 프로젝트 - 앞으로 고민 할 것 아쉬웟던건 MSA의 개념 적용과 람다 트리깅을 잘 반영한 프로젝트를 하고 싶엇다. 일단 이제 취업을 진짜 준비해야겟다고 생각한다. - 고민 했던것 요청에 대해서 두가지를 핸들링해야 한다. 1)만약에 아티스트가 없을 시 아티스트를 추가해야한다. 요청이 너무 느리면 찾앗다고 잠시 기..
TIL 12/20~12/26 - AWS GLUE에 대한 이해 AWS Glue는 완전관리형 ETL(추출, 변환, 로드) 서비스로, 효율적인 비용으로 간단하게 원하는 데이터를 분류, 정리, 보강하고 다양한 데이터 스토어 간에 이동합니다. - AWS S3를 AWS 인프라 구축시 속도는 느리지만 큰 데이터를 저장하는 용도로 파이썬 코드를 트리깅하여 s3에 json,csv,parquet 형식으로 저장하면 장땡 - AWS Athena와 Presto 학습 페이스북에서 SQL쿼리 엔진를 프레스토라고 한다. mysql을 통해서 구축햇을는 sql로 처리했엇다 하지만 빅데이터로 처리시 s3버킷에 븐리도어 있는 데이터를 하나의 쿼리를 통해서 처리한다. 다양한 데이터소스를 싱글 쿼리로 처리 aws의 경우에는 athena 서버리스, ETL 불필요 Athen..
TIL 12/13~12/19 - 잇플루언서에서 인턴십이 끝났다. 후기는 나중에 적겟지만 일단 인턴으로써 일을 할수 있다는 기회가 감사했엇고 실제로 협업에서만 알 수 있는 이커머스 분야와 인플루언서,마케팅 시장의 도메인을 얻고 구현하는 비즈니스 로직을 짤 수 있어서 좋았다. 모든 기능을 정의했던 것들을 제 시간내에 구현할 수 있어서 좋았다. - 데이터 엔지니어링과 클라우드 인프라 관련해서 공부를 계속 진행하고 있다. 필요한 데이터를 추출,수집,정제 (ETL)하는 프로세싱을 최소한의 사람이 조작하여 머신을 운영하는것 자동화를 위한 고려사항 1) 데이터 프로세싱 스텝들 2)에러 핸들링 및 모니터링(로그 및 걸린시간같은거) 3) 트리거 / 스케쥴링 APi 에러 핸들링, 자동화 등의 기초지식을 공부 했다. - Spotify API에서 데이터..
RePythonOOP 17일차 Python Underscore 파이썬 언더스코어 사용하는 이유 1. 인터프리터에서 마지막 값을 저장 10 _*10 _/10 2. 값을 무시하고 싶을때 i,_,j = 1,2,3 i # 1 j # 3 a = 1 for _ in range(5): print(a) 3. 변수나 함수명에 특별한 의미를 부여하고 싶을때 1) 폴더안에 __init__.py 파일 존재시 폴더를 패키지로 사용가능 2-1) _변수 : protected 외부(module)에서 사용이 불가하고 파일내에서만 직접 접근가능 2-2) __변수 : privated 완전 private 직접접근 불가, 맹글링(변수나 함수명을 일정한 규칙으로 변형)하기 위해서이다. 하지만 인스턴스._클래스(객체명)__변수명 으로 접근이 가능하다 어렵게 접근하게 함으로 직접접근 또는 외부에서의 값 변경..
RePythonOOP 16일차 Local and Global Scope in Function, Function Closure, Function Decorator Insight 1. 지역,전역,자유 영역(Scope)에 대해 정확히 구분하여 사용 할 수있다. (이런 짜치는 걸로 고민 할 시간이 줄어 들었다.) 2. 클로저를 사용하는 가장 큰 이유는 함수를 매개변수로 전달 하기 위함이 가장 큰 장점이라는 것을 알게되었다. 3. 데이터가 크다면 클로저사용은 지양 되어야 한다는 것을 알게 되었다. 4. 데코레이터 자주 쓰긴 했지만 정말 반복되는 작업에서 간편하다. 사전 지식 지역변수(local)와 전역변수(global)의 차이를 인지 Local and Global Scope in Function 지역변수와 전역변수가 같은 이름으로 선언이 되어있을때 지역영역에서 전역변수를 사용하는 예제를 보자 b = 1 def func1(a): print(a) print(b) from d..
RePython 15.5일차 Python에서 mutable자료형은 같은 값의 id(주소)한다 던데 맞을까? Call By Reference Insight 1. 파이썬에서는 is 로 변수들을 비교하자. 2. 튜플과 같은 불변형은 동일한 값을 변수들에게 할당해도 같은 id를 공유한다. 나는 할당 연산자를 무의미 하게 사용한다. 그래서 차이를 정확하게 짚고 넘어가고 mutable과 immutable의 차이를 더 깊게 구분 지어 보고자 한다. 주제를 한마디로 정의하는 것이passed by assignment 불변 타입의 객체를 넘 길때 call by value (==,값) 가변 타입의 객체는 call by reference (is, 주소아이디) 서로 비슷해 보이는 변수의 id를 __eq__ 로 증명해 보자 일단 딕셔너리로 테스트해보자. x = {'name': 'ryu', 'age' : 20} w = {'name': 'ryu', 'age' : 20}..
RePythonOOP 14.5일차 Python(Javascript) // 개념 First Class Object, First Class Citizen, First Class Function, Higer Order Function // 코드 Callable, Callback, Closure // 정확히 분석하기 Insight 1. 무언가 궁금해서 검색해서 안나올때는 덜 중요해서 잘 없는 내용일 수도 있다.... (일급 객체,일급 시민,일급 함수,일급 변수,고차 함수들의 차이는 뭐냐, 클로저,람다,콜백은 항상 고차함수냐라는 생각들에서 출발 했엇다.) 2. 제목에서 개념 이라고 명시한 것은 함수형 프로그래밍 내에서의 추상적 개념일 뿐이다. 3. 중요한건 고차함수의 특징을 지키는 것이 함수형 프로그래밍의 시작이다. 4. 학습을 하다 함수형 개념들이 비슷하고 모호해서 많이 했갈렸는데 예전의 프로그래밍 언어의 환경과 함수형 프로그래밍의 구분,정의 하려고 한 시대상을 알게되면서 이해가 한결 수월 해 졌다.. 5. 프로그래밍 언어별로 각각이 같은 개념을 정의하는 법이 다르다 보니 또 했갈렸는데 정확히 추상적 개념(일급 객체..
RePythonOOP 15일차 Python Multi Parameter Variables, Function Signature, Function Partial Insight 1. 다양한 매개변수들의 형식에 맞게 인자를 처리할 수 있게 되었다. 2. 파라미터의 정보들이 햇갈릴 때 Signature를 사용 할 줄 안다. 3. 함수내 특정한 인자를 고정해야 할 때 Partial을 사용 할 줄 안다. 다양한 매개변수들 입력시 파이선의 처리방법 일반 파라미터, 가변 파라미터, 디폴트 파라미터, 키워드 파라미터 순서대로 알아 보겠습니다. def test(id, *args, age=None, **kwargs): return 'test ({}) ({}) ({}) ({})'.format(id, args, age, kwargs) 아이디 매개변수로만 받는다. print(test('test1')) # test (test1) (()) (None) ({}) 아이디 매개변수 먼저 붙이고..