Open harloxx opened 3 years ago
구글 클라우드와 연동을 하기 위해 우선 관련 패키지를 다운받아야 한다.
...
google==3.0.0
google-api-core==1.30.0
google-auth==1.32.1
google-cloud-core==1.7.1
google-cloud-storage==1.40.0
google-crc32c==1.1.2
google-resumable-media==1.3.1
googleapis-common-protos==1.53.0
...
관련 모듈을 import 하여 사용한다.
from google.cloud import storage
...
def upload_vid(destination_blob_name):
"""returns public url from the video loaded + removes local mixed vid"""
source_file_name = '올릴 파일명'
client = storage.Client()
bucket = client.bucket(bucket_name)
blob = bucket.blob('%s'%(destination_blob_name))
blob.upload_from_filename(path('%s'%(destination_blob_name)))
blob.make_public
del_vid(destination_blob_name, False)
print(blob.public_url)
return blob.public_url
...
동영상이나 이미지를 데이터베이스에 직접 저장하는 것은 효율적인 방법이 아니다. 파일을 데이터베이스에 이진 파일로 저장하면 데이터베이스 서버의 로드가 급격하게 증가하고 데이터가 증가하면 처리 속도도 느려지게 된다. 따라서 영상을 일차적으로 Google 클라우드 버킷(GCS)에 저장하고, 해당 파일 경로(url)를 DB에 저장하는 방식을 사용하였다.