본문 바로가기

전체 글160

데이터 엔지니어링 21일차 TIL 학습 내용 관계형 데이터베이스 구조화된 데이터를 저장하고 질의할 수 있도록 해주는 스토리지 - 엑셀 스프레드시트 형태의 테이블로 데이터를 정의하고 저장 - 컬럼(열)과 레코드(행)이 존재 대표적인 관계형 데이터베이스 프로덕션 데이터베이스 : MySQL, PostgreSQL, Oracle 등 - OLTP(OnLine Transaction Processing) - 빠른 속도에 집중, 서비스에 필요한 정보 저장 데이터 웨어하우스 : Redshift, Snowflake, BigQuery, Hive 등 - OLAP(Online Analytical Processing) - 처리 데이터 크기에 집중, 데이터 분석 혹은 모델 빌딩 등을 위한 데이터를 저장 - 보통 프로덕션 데이터베이스를 복사해서 데이터 웨어하우스에 저.. 2024. 4. 22.
데이터 엔지니어링 15일차 TIL 학습 내용 RelatedField polls_api/serializers.py questions = serializers.PrimaryKeyRelatedField(many=True, queryset=Question.objects.all()) 유저 질문이 프라이머리키(id)로 나옴 questions = serializers.StringRelatedField(many=True, read_only=True) 유저 질문이 string method로 나옴 questions = serializers.SlugRelatedField(many=True, read_only=True, slug_field='pub_date') 필드중 아무거나 정해서 그 내용을 표시(이번엔 pubdate로 지정) questions = seri.. 2024. 4. 12.
데이터 엔지니어링 14일차 TIL 학습내용 Git 분산환경을 지원하는 소스 버전 컨트롤 시스템 -CVS, SVN은 항상 서버에 연결되어 있다는 전제하에서 사용 가능 -CVS,SVN에 비해 현저하게 빠르지만 사용법은 훨씬 더 복잡하다. 장점 - 다수의 개발자가 공동개발 가능 - 코드리뷰 가능 - 코드 백업 - 과거의 코드로 롤백 가능 - 텍스트파일이라면 모두 사용가능 Mainline(Master) -source of truth가 되는 특별한 branch Branch -특정한 기능을 구현하기 위해 만들어진 mainline의 복사본. 구현과 테스트가 이루어진 후에 mian branch와 머지된다. Repo(Repository) - 깃으로 관리되는 소프트웨어 프로젝트를 지칭한다 Clone - 다른 계정에 존재하는 repo로부터 새로운 local.. 2024. 4. 11.
데이터 엔지니어링 13일차 TIL 학습내용 Serialize 모델 인스턴스나 queryset과 같은 데이터를 JSON 형식의 파일로 변환하는 작업 Deserialize JSON형식의 데이터를 정의된 포맷에 맞추어 다시 모델 인스턴스로 변환하는 작업 from rest_framework import serializers from polls.models import Question class QuestionSerializer(serializers.Serializer) : id = serializers.IntegerField(read_only=True) question_text = serializers.CharField(max_length=200) pub_date = serializers.DateTimeField(read_only=True) d.. 2024. 4. 10.
데이터 엔지니어링 12일차 TIL 학습내용 뷰(Views)와 템플릿(Templates) render함수 Django의 내장 함수 중 하나로, HTTP 요청을 받아 해당 요청에 대해 원하는 템플릿 파일을 렌더링하여 응답하는 기능을 가지고 있다. render() 함수는 보통 Django의 뷰(View)에서 사용되며, 첫 번째 인자로 요청(Request) 객체, 두 번째 인자로 템플릿 파일의 경로, 그리고 세 번째 인자로 Context 변수를 입력 받는다. polls/view.py from .models import * from django.shortcuts import render def index(request) : latest_question_list = Question.objects.order_by('-pub_date')[:5] con.. 2024. 4. 9.
데이터 엔지니어링 11일차 TIL 학습내용 cmd에서 실행 pyhon 가상 환경 생성 py -m venv project-name 가성환경 활성화 django-project\Scripts\activate.bat Django 프로젝트 생성 django-admin startproject mysite 생성한 프로젝트를 서버에서 실행 python manage.py runserver 프로젝트란? 하나의 웹사이트라고 생각하면 된다. 하나의 프로젝트는 여러개의 앱으로 구성된다. app생성 python manage.py startapp polls 관계형 데이터베이스(RDB) 데이터를 행과 열로 이루어진 테이블의 형태로 구성하고, 테이블 간의 관계를 정의하는 데이터베이스이다. 테이블(Table) 데이터베이스에서 행과 열로 구성되어 있는 데이터의 집합을 의.. 2024. 4. 8.