[python] PySpark 자주 쓰는 기능 정리
·
카테고리 없음
PySpark는 대용량 데이터를 다룰 때 효과적인 분산 처리 프레임워크이다. 이 글에서는 JSON 데이터 처리와 관련된 PySpark의 자주 쓰는 기능과 메서드를 중심으로 실무에서 어떻게 활용할 수 있는지 정리한다.PySpark는 왜 SQL이 아닌 함수형 처리 방식으로 사용하나?PySpark에서는 SQL처럼 한 줄로 복잡한 쿼리를 작성하는 대신, 테이블을 불러와 단계적으로 처리하는 방식이 일반적이다. 이런 방식은...복잡한 로직을 분리해서 디버깅이 용이하다.컬럼 단위 조작이 자유롭고, 재사용성이 높다.중간 단계의 데이터를 쉽게 확인하고 튜닝할 수 있다.와 같은 장점이 있다고 한다.따라서 실무에서는 SQL 쿼리 하나로 모든 작업을 끝내기보다는, 아래와 같이 단계별 처리 방식으로 작성하는 코드 스타일이 더 ..
[python] 현재 파일의 디렉토리 경로를 손쉽게 찾기: os.path 대신 pathlib 사용하기
·
💻 Programming/Python
Python에서 현재 파일을 기준으로 상위나 상위 상위 디렉토리 경로가 필요한 경우가 종종 발생하는데요. 예를 들어, 파일 시스템 내에서 다른 파일을 참조하거나 구성 파일을 읽을 때가 그렇습니다. 보통 많은 분들이(과거의 나도...) os 모듈을 사용하여 이 작업을 수행하지만, pathlib 모듈을 사용하면 더 쉽고 직관적으로 할 수 있으니 아래 내용을 참고해 주세요! 1. os 모듈 사용 방법먼저, os 모듈을 사용하여 현재 파일의 디렉토리 경로를 찾는 방법을 살펴볼게요. import oscurrent_dir = os.path.dirname(os.path.abspath(__file__))print(current_dir) 이 방법은 __file__ 변수를 사용하여 현재 파일의 경로를 가져온 후, os.p..
[python] Streamlit 기본 기능 익히기 ! | 텍스트 & 데이터 표시 | 레이아웃 관리 | 파일 업로드 & 다운로드
·
💻 Programming/Python
Streamlit은 Python을 사용하여 빠르고 쉽게 대시보드를 만들 수 있는 오픈 소스 라이브러리에요. Streamlit을 사용하면 데이터 과학자와 애널리스트가 코드 몇 줄만으로 아름다운 대화형 웹 애플리케이션을 만들 수 있는데요. 다음은 Streamlit을 사용하여 웹 대시보드를 만드는 데 기본적으로 알아야 할 내용들에 대한 설명입니다. Streamlit이 무엇이고 이걸로 무엇을 할 수 있냐고요? 그럼 이전 포스팅을 참고해 주세요-! [python] Streamlit 으로 데이터 웹 애플리케이션 만들기! | 간단한 대시보드 & 웹데모 페이지 개발데이터를 다루는 일이 많으신가요? Streamlit을 이용해 쉽고 빠르게 나만의 데이터 애플리케이션을 만들어보세요! 😎  Streamlit은 Python으..
[python] Streamlit 으로 데이터 웹 애플리케이션 만들기! | 간단한 대시보드 & 웹데모 페이지 개발
·
💻 Programming/Python
데이터를 다루는 일이 많으신가요? Streamlit을 이용해 쉽고 빠르게 나만의 데이터 애플리케이션을 만들어보세요! 😎  Streamlit은 Python으로 작성된 코드만으로도 웹 애플리케이션을 쉽게 만들 수 있는 오픈 소스 프레임워크에요. 이 도구는 데이터 과학자, 엔지니어, 연구자들이 데이터 애플리케이션을 손쉽게 구축하고 공유할 수 있도록 설계되었습니다. Streamlit의 장점은 복잡한 웹 개발 지식 없이도 직관적인 방식으로 애플리케이션을 만들 수 있다는 점이라 알아두시는 것을 추천드립니다! 개인적으로는 직장에서 딥러닝 모델이나 비전 알고리즘 데모 페이지나 특정 로그 대시보드를 만들 때 애용하고 있습니다✨ 📌 Streamlit이란? 🧐Streamlit은 Python만으로 웹 애플리케이션을 쉽게..
[python] 멀티프로세싱 Pool 사용법 및 코드 예시 | multiprocessing.Pool | python 속도 향상
·
💻 Programming/Python
멀티프로세싱은 여러 개의 독립적인 프로세스를 생성하여 각각의 프로세스가 병렬로 작업하도록 하는 방식이다. 각 프로세스는 독립적인 메모리 공간을 가지며, 프로세스 간 통신 (Inter-Process Communication, IPC) 메커니즘을 통해 데이터를 교환할 수 있다. 파이썬에서 멀티프로세싱을 구현하기 위해 사용되는 주요 모듈은 multiprocessing이다. multiprocessing 모듈은 파이썬에서 다중 프로세스를 사용하여 병렬 작업을 수행하는 데 도움이 되는 도구를 제공하는데, threading 모듈과 달리 Global Interpreter Lock (GIL)의 영향을 받지 않으므로 CPU-bound 작업에 효과적이다. multiprocessing.Pool multiprocessing.P..
[python] FastAPI로 딥러닝 모델 API 구축하기 | 문자열 파일경로, Bytes 타입 입력받기
·
💻 Programming/Python
FastAPI를 이용한 API 생성 from typing import List from pydantic import BaseModel from fastapi import FastAPI, Depends, File, Request import uvicorn app = FastAPI() class InputData(BaseModel): data: str @app.on_event("startup") async def load_ai_model(): global model model = My_Model() print("AI Model Loaded") async def parse_body(request: Request): data: bytes = await request.body() return data @app.p..