기타(5)
-
SQL Query - (1) with문, window 함수
회사에서 쿼리를 짜다가 너무 Chatgpt에 의존하는 것 같아 기록용으로 남겨본다. 1) With vs Subquery항상 쿼리를 짜다보면 Subquery와 With 문의 차이가 무엇인지 고민했었다.개인적으로 Subquery 사용을 선호했었는데 (Subquery로 쿼리를 시작해서 With문은 거부감이 들었다.) 요번에 Subquery로 짜면서 했던 고민들(반복적인 쿼리사용, 가독성이 떨어짐 등) 겪고 싶지 않아서 With문으로 쿼리를 사용하기 시작했는데 아래에서 위로 굉장히 직관적이어서 좋았다. 그래서 문득 With 문과 Subquery의 차이점이 궁금해져서 Gpt에게 물어보니성능에 큰차이는 존재하지 않고 가독성, 및 반복적인 호출, 유지보수에 With문 사용이 권장된다고 한다. 기존(Postgres ..
2025.05.13 -
PlanetScale 연동 방법
PlanetScale 이란 MySQL과 호환되는 서버리스 데이터베이스 플랫폼. 클라우드 기반의 데이터베이스 솔루션으로 데이터베이스를 운영하거나 확장하는데 확실한 이점이 있음 성능적으로도 개방형 소스 데이터베이스인 Vitess를 기반으로 하여 큰 규모의 데이터베이스 워크로드를 관리하고 확장할 수 있는 기술을 제공 PlanetScale 연결방법 1. DBeaver DB는 MySQL을 고르고 아래와 같이 Connection Setting을 설정해준다. 참고로 Server Host, Username, Password 등의 정보는 PlanetScale에서 DB를 생성한 뒤 오른쪽 상단의 Connect 버튼을 누르면 연결에 필요한 정보들을 알 수 있다. 아래와 같이 SSL 탭으로 넘어가서 Use SSL과 밑에 Re..
2024.02.14 -
Postgresql CSV파일 업로드
회사에서 일을 하다보면 CSV 파일을 Postgresql로 가져와서 사용하는 경우가 왕왕 있다. CSV 파일을 Postgresql에 불러오는 방법에 대해서 소개해본다. 1. DBeaver 가져오기 가장 쉬운 방법은 DBeaver라는 어플리케이션이 있는데, Postgres 뿐만 아니라 다양한 DBMS를 지원하며 데이터베이스를 개발하는데 있어서 일을 쉽게 해주는 마법의 툴로 자주 이용하는데.. 이를 이용한 방법이 가장 쉽다. 원하는 스키마에 오른쪽 버튼을 누르고 데이터 가져오기를 누르면 클릭만을 통해 쉽게 가져올 수 있으며 테이블 생성도 알아서 컬럼 타입에 맞게 해줌으로 자주 사용하는 방법이다. 2. psql 사용하기 다만 위의 방법은 데이터 크기가 작은 csv파일에 한해서 유용하지만... 데이터가 1기가 ..
2024.02.12 -
Streamlit에서 데이터베이스 연결
Streamlit과 Postgresql 연동하기 Streamlit에서 Postgresql과 같은 DB에 연동이 꼭 필요하다. 이때 파이썬 코드를 이용해 바로 연결해도 상관 없지만 더 편리하고 접속 정보를 숨길 수 있는 방법을 활용하는게 좋다. main.py 즉 streamlit run 이라는 명령어를 통해 앱을 실행시키는 디렉토리로 이동하자 .streamlit이라는 폴더를 하나 생성하고 그 폴더 아래에 secrets.toml 이라는 파일을 하나 생성하자 그 안에 [postgres] host="localhost" port="5432" dbname="my_db" user="bill" password="1234" 와 같이 DB의 접속 정보를 입력하고 저장한다. 그리고 나서 Streamlit 코드를 작성할 때 ..
2023.10.31 -
파일에서 Hive 테이블로 데이터 밀어 넣기
유지보수를 진행하면서 서버가 다운되버리면서 외부에서 받아오는 데이터를 제한된 환경에서 내가 수동으로 하이브에 적재해야되는 일이 생겼다. RDB와 똑같이 거기서 사용하고 있는 Dbeaver라는 툴을 활용해 데이터 가져오기를 하려고 했으나 작은 데이터인데도 시간이 너무 오래걸리거나 에러가 발생해기 때문에 실패! KNIME이라는 툴을 활용해서 HIVE와 직접 연결해서 데이터를 적재하려고 했으나 HIVE 뿐만 아니라 HDFS와도 연결이 필요했으며 제한된 환경이라고 했는데 HIVE와는 포트가 연결되어있으나 HDFS와는 연결이 되어있지 않아 실패! 다른 방법을 찾다가 HIVE는 결국 HDFS의 자바로 된 쿼리를 SQL형식의 쿼리로 변환하게 해주는 툴이자 하둡에 파일로 저장된 데이터를 RDB와 같이 보여주게 하는 기..
2023.07.03