
Lambda에서 S3에 저장된 파일들의 총 리스트를 가져와서 특정 조건을 만족하는 경우 파일명을 반환하는 코드이다. 보통 boto3 라이브러리를 많이 사용하는데, 저장된 파일이 1000개 이상이 넘어갈 경우 list_objects_v2와 paginator를 사용하여 구현하여야 한다. 파일명을 리턴할 때 버킷명 + 폴더경로 + 파일명을 전체적으로 반환하기 때문에 replace로 앞 경로는 강제로 제거하였다. import json import boto3 import datetime def lambda_handler(event, context): # TODO implement currentTime = datetime.datetime.now() befcurrentTime = datetime.datetime.no..

AWS 에서는 서비스를 사용하는 만큼 과금이 되는 체계이므로, 대용량 파일을 upload 하여 storage에 저장하는 경우라면 과금이 얼마나 될 것인지 판단해 보아야 한다. AWS에서 크게 과금이 되는 요소로는 1) computing 자원 사용 2) storage 자원 사용 3) data transfer 이다. 예를들어 서로 다른 계정에서 S3간 데이터 파일을 이동시켜야 하는 경우, 1) source data 를 로컬에 download 하여 destination data를 upload 한다. 2) source data 를 data transfer 하여 destination data를 upload 한다. 둘 중 어떤 방식이 더 과금이 적게 될까? 1) 방식의 경우 source data 의 download..
pandas를 이용하여 csv 파일을 로드하여, 특정 열을 처리하고 다시 Dataframe으로 합치는 작업을 해보았습니다. # This is a sample Python script. # Press Shift+F10 to execute it or replace it with your code. # Press Double Shift to search everywhere for classes, files, tool windows, actions, and settings. import base64 import csv import pandas as pd def print_hi(name): # Use a breakpoint in the code line below to debug your script. print..

이제 Flask를 통해 어느정도 화면개발이 완료되어 로컬 개발 서버가 아닌 실제 서버로 소스를 이관하고 서비스를 해보려 했습니다. 현재 가용한 서버가 windows서버밖에 없어 iis를 통해 서비스를 해보려 합니다. iis는 아파치와 같이 웹서버 역할을 해주는 Mircosoft에서 개발한 cgi 서비스 입니다. 처음에는 만만해 보였으나 거의 2주를 넘게 삽질을 했기 때문에 중요한 핵심포인트 들을 포스팅합니다. 이대로 따라만 하시면 Flask, Django도 iis를 통해 웹서비스 하실 수 있습니다. 1) wfastcgi 설치와 복사 그리고 지원하는 python 버전 확인 ---> 중요 wfastcig는 pip install wfastcgi를 통해 가장 최신버전의 라이브러리를 설치합니다. 그런데 이것보다도..

Flask run으로 실행 후 서버로 사용을 해도 되지만, 정식 서비스의 경우 cgi를 통해서 서비스를 하는 것을 권장하고 있어 Windows server에서 제공하는 IIS와 Flask를 연동하려는 도중, 분명히 자체 개발 환경에서는 import 에러가 없었는데, iis에서 첫 화면을 호출 하면 'pybo' can not be imported error가 발생합니다. 제 개발 폴더의 구조는 아래와 같습니다. 첫번째 시도 - PYTHONPATH를 myproject38/pybo로 설정, WSGI_HANDLER를 __init__.create_app() 으로 설정 이럴 경우 pybo를 최상위 폴더로 인식하고 'pybo' can not be imported error 가 발생합니다. 두번째 시도 - PYTHON..

현업에서 마스터 데이터를 일괄로 업로드 하여 변경하기를 원할 때가 있습니다. 이럴 때 사전에 정해진 포맷 규칙을 잡고 CSV 또는 Excel 파일로 업로드를 한다면 현업의 입장에서 업무하기가 한결 편해집니다. 아래 포스팅은 Flask에서 CSV 파일을 클라이언트에서 선택하여, 이를 특정 폴더에 복사 후 이것을 pandas 라이브러리로 읽어 DBMS에 insert 하는 코드입니다. pandas의 성능이 몇 건 까지 처리를 해줄 지 아직 실험해 보지 않았으나, 몇 건 안되는 파일은 아주 처리가 잘 됩니다. @bp.route('/upload/', methods=('GET', 'POST')) def upload(): if request.method == 'POST': #파일을 특정경로에 저장시킨다. f = re..

먼저 sqlAlchemy (에스큐엘알케미?) 의 개념에 대해서 알아보겠습니다. sqlAlchemy는 ORM의 하나이다. ORM이란 Object-Relational-Mapping으로 ORM을 사용하면 프레임워크 내에서 SQL을 직접 사용하지 않고도 CRUD 형태로 공통 모듈로 DBMS에 접근할 수 있습니다. (개발의 효율성 향상) flask에서도 이 ORM을 지원을 하는데 이를 flask-sqlAlchemy라고 합니다. [레퍼런스] Flask-SQLAlchemy — Flask-SQLAlchemy Documentation (2.x) (palletsprojects.com) 그런데 문제는 ORM만으로 뭔가 모든 기능을 구현하기가 힘듭니다. 느낀 점으로는 테이블간의 복잡한 join 처리, 테이블간의 1:N 관계에..
- Total
- Today
- Yesterday
- s3
- 추천시스템
- pytorch
- 정보관리기술사합격
- 기술사학원
- 131회정보관리기술사
- 정보관리기술사
- 밀키트요리
- 정보관리기술사독학
- AWS
- gpt3.5
- FLASK
- 인조기프
- 머신러닝
- lambda
- 로블록스
- 밀키트
- r
- 자기계발
- 12207
- ISO 12207
- wfastcgi
- 추천도서
- IIS
- 콘도챗봇
- iso12207
- 정보관리
- 챗봇
- 기술사
- hackerrank
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | ||
6 | 7 | 8 | 9 | 10 | 11 | 12 |
13 | 14 | 15 | 16 | 17 | 18 | 19 |
20 | 21 | 22 | 23 | 24 | 25 | 26 |
27 | 28 | 29 | 30 | 31 |