본문 바로가기

프로젝트(진행중)31

서브쿼리와 With절 쓰임새 차이 서브쿼리를 난무하다 보니 알아볼 수 없는 지경의 쿼리가 되어 난감할 때가 많았다. 그렇다고, 매번 테이블을 생성하기도 어려울 땐 With절을 쓰면 보기도 편하고, 쓰기도 편하다. 이 둘의 차이를 나름 정리해보겠다. 서브쿼리 WITH 주 활용 SELECT 절의 결과를 WHERE절에서 하나의 변수처럼 사용하고 싶을 때 사용 이름을 가진 서브쿼리를 정의한 후 사용하는 구문 위치 SELECT, FROM, WHERE 독립적 장점 코딩할 때는 편하다 가독성이 높아지고, 재사용할 수 잇음 단점 연산 비용이 추가됨. 최적화 받을 수 없음. 쿼리가 복잡해짐 튜닝시 적절하게 가공되지 않으면 메모리 로드가 많이 걸림 서브쿼리 주의할 점 서브쿼리를 쓰다보면 코딩하는 입장에선 편한 나머지 마구잡이로 쓰게 되는 경향이 있다. 아.. 2022. 10. 2.
실무에서 추천 시스템을 만들어 보며 느낀 것들 혼자 개발 + 처음 기획자와 협업 + 서비스 적용 경험을 기억하며 1. 추천 시스템의 목적은 생각보다 다양하고 중요하다. 2. 객체화를 안해도 되는 것 같지만 안하면 나중에 뒷감당이 안된다. 3. 구글링 복사 붙여넣어서 돌아가게 하는 것도 실력이다. 4. 구글링 복사 붙여넣기도 원리를 이해해야 가능하다. 5. 충분한 사전조사 없이 구현부터 하다가는 시간 낭비할 확률이 높다. 6. 누구에게 모델을 설명하는 일은 아주 어려운 일이다. 7. RMSE가 아닌 Metric을 설명하는 건 더더욱 어려운 일이다. 8. 이 모델보다 성능이 좋은 모델들은 셀 수도 없이 많다. 9. state-of-the-art에 현혹되면 토끼굴에 빠지기 쉽다. 10. 주석은 나를 위해서 다는 것이다. 11. 단계단계마다 왜 해야 하는지.. 2022. 4. 17.
추천 시스템 정리 1. 추천 시스템 개요 1) 프로세스 데이터베이스 내 상품의 평점, 구매, 리뷰 등을 포함한 데이터가 저장되어 있다. 유저가 추천을 요구하면 추천 로직에 의해 이 데이터들을 사용해 후보 상품을 추출하고 후보 상품의 평점 혹은 선호도를 예측한다. 이후 가장 높은 순위의 상품을 정해진 개수만큼 추천한다. 이 추천들은 어떠한 방법의 UX를 이용해 사용자들에게 노출된다. 사용자들은 이 추천들에 대해 액션을 취하고 이 액션은 피드백으로 시스템에 주어진다. 이 피드백들은 추후에 사용될 추천들에 영향을 준다. 2) 자주 사용하는 용어 비개인적 /정형화된 Best, top-selling 대중적인, 그룹이 모두 좋아하는, 개인의 선호도와는 상관 없는 추천 연관성 Association Rule, Basket Analysi.. 2022. 2. 21.
Pymysql - Maria DB 연결 오류(Err 99) 퀀트를 공부하다 백테스팅 환경을 구축해보기 위해 파이썬에 Maria DB를 연결하려 했다. 세상 쉬운 일이라 생각했지만 극악의 오류로 난항을 맞았다. 해결한 것은 아니지만 너무 많은 시도를 하느라 까먹어 한 것들과 실패한 것들을 정리하며 얻은 것, 또 해볼 것들을 정리하기 위해서 기록한다. 1. 문제 상황 (2003, "Can't connect to MySQL server on 'localhost' ([Errno 99] Cannot assign requested address)") 2. 접근 (1) root 계정 비밀번호 오류 USE mysql SHOW TABLEs LIKE 'user'; SELECT HOST, user, PASSWORD FROM user; UPDATE user SET PASSWORD=P.. 2022. 1. 2.