분류 전체보기 130

Fluent Python Chapter 1. 파이썬 데이터 모델 (Feat. 일관성 있는 언어)

Introduction 파이썬을 사용한지 5년 정도가 되었다. 하지만, 파이썬을 잘 알고 사용하고 있냐고 물으면 여전히 자신있게 답하기가 어렵다. 요즘 이것 저것 하다보니 어느 하나 정확히 알고 있는게 없는 것 처럼 느껴져서 지치고 힘든 감정을 느끼는 것 같다. 예전에 2019년에 스터디했던 Fluent Python(전문가를 위한 파이썬) 책을 Chapter별로 정리해봐야겠다는 생각이 들어서 이 글을 적고 있다. 부디 Chapter 21까지 정리를 마치고, 위의 물음에 잘 답변할 수 있게 되길... Body Chapter1은 파이썬의 데이터 모델에 대해서 이야기한다. 여기서 말하는 데이터 모델은 객체의 모델이라고도 부르지만 파이썬 공식문서에 data model이라는 말을 사용하기 때문에 데이터 모델이라는..

Pandas Dataframe Type Casting 하기. (Feat. BigQuery)

Introduction 다른 데이터 Source에서 Pandas의 Dataframe으로 데이터를 Extract(추출)한 후에 Destination으로 데이터를 Load(적재)하는 경우에 데이터의 type을 casting해줘야 하는 경우가 많이 발생합니다. 타입에 관한 문제들을 겪다보면 단일 데이터베이스에서 ORM으로 DB에 CRUD를 하는 것이 얼마나 생산성이 높은지 느낄 수 있습니다. 특히, typing이 되어있는 데이터 소스가 아닌 경우(Web Page Crawling)하는 경우에 특히 이런 Needs들이 있습니다. 이런 경우에 Type casting이 필요한데 기본적인 Type casting과 나름의 시행착오를 겪은 부분들을 정리하려고 합니다. 특히, BigQuery에 Data를 load하는 경우에..

Django 오픈소스 contributing 하기!

Django에 기여하는 방법은 여러가지 있습니다. 기여하는 방법 Writing code Writing documentation Localization Donation Bug report 이번 포스팅에서는 writing code로 기여하는 방법에 대해서 적어보려고 합니다. Django에서도 first patch를 하는 사람들을 위해서 문서(https://docs.djangoproject.com/en/dev/intro/contributing/)를 만들어 두었지만, 제 나름대로 했던 방법을 정리해서 공유 하려고 합니다. 1.해결 할 티켓 찾기 or 만들기 장고에서는 ticket 시스템을 통해서 버그나 기능 개선들을 tracking합니다. 그래서 혹시 bug를 발견하셨으면 bug를 reporting하는 것도 c..

[영화 리뷰] 함께 걷는 영화 577

하정우가 백상예술대상에서 남자최우수연기상을 받으면 국토대장정을 떠나겠다고 말했다가 바로 남자최우수연기상을 받으면서 시작된 프로젝트이자 영화이다. 제목이 577인 이유는 서울에서 해남까지 577km이기 때문이다. 577km를 걸으면서 배우들이 느끼는 감정 그리고 성장 또 여러 프로그램(인터뷰 등)을 통해 지루하지 않게 구성되어 있다. 내가 가장 좋아하는 영화 중 하나이다. 에너지를 얻고 싶을 때 마다 보는데 어제 다시 한 번 시청한 기념으로 글을 써본다. 개인적으로 이 영화를 좋아하는 이유를 정리하면 다음과 같은 이유이다. 1.개인의 성장 영화에는 무명 배우들이 많이 나오는데 577km를 함께 걸으면서 '할 수 있다'라는 자신감을 얻는다. 반대로 '공효진' 이라는 유명 배우 또한 그 동안 사람들과의 관계에..

일상/영화 2021.02.07

같은 Django model class에서 다른 schema가?(feat. Django는 이중인격?)

(Update) Django에 해당 bug를 repoorting하고, PR을 올려서 merge되었습니다! https://github.com/django/django/pull/13982 Fixed #32425 -- Fixed adding nullable field with default on MySQL. by baidoosik · Pull Request #13982 · django/django ticket link: https://code.djangoproject.com/ticket/32425#ticket Hi, team. I wanna fix some picky issue. I suggest below code for solving this problem. (same code creates differe..

슬기로운 신세(신촌 세브란스) 생활(feat.코로나)

지난해 10월 어머니와 함께 건강검진을 했는데 어머니께서 갑상선암(갑상선 암에 관한 내용을 정리한 글)을 진단받으셨습니다. (회사 복지로 부모님을 위한 건강검진비를 40만원 지원해 주고 있습니다. 빨리 암을 진단할 수 있도록 좋은 복지제도를 만들어준 Sendbird 감사합니다!) 11월부터 조직검사 및 수술을 잡기 위해서 삼성 서울 병원과 신촌 연세 세브란스 병원을 알아봤고, 상대적으로 빨리 수술 날짜를 받을 수 있었던 신촌 연세 세브란스 병원으로 결정해서 휴가를 쓰고 1월 6일에 입원해서 4박 5일 동안 신촌 세브란스 병원에서 생활했습니다. 엄청난 몰려오는 request들에도 불구하고 항상 따뜻하고 친절하게 간호해주신 12층 간호사 선생님들 그리고 수술도 잘 해주시고 회진 할 때 마다 친절하게 설명해주..

일상 2021.01.09

일반인들을 위한 갑상선암 정리(진단, 수술, 수술 후 관리)

최근 건강검진에서 어머니께서 갑상선 암 진단을 받으셔서 어머니 간호를 위해 공부한 내용을 정리해 보려고 합니다. 저와 비슷한 상황에 있는 분들이 빠른 시간 안에 갑상선 암에 대해서 이해하고, 간호 하시는데 도움이 되기를 바라겠습니다. 모든 내용은 의학적인 내용을 다루기 보다는 이해하기 쉽도록 정리한 점 참고 부탁드립니다. (전문가가 아니기 때문에 대략적인 내용을 이해하시는데 사용하시고, 정확한 부분은 의사선생님께 들으시는게 좋습니다.) 갑상선이란? 쉽게 설명하면 갑상선 호르몬을 만드는 부분. 갑상선 호르몬이 무슨 역할을 하는지가 중요합니다. 갑상선은 내분비기관으로 우리 몸에서 갑상선호르몬을 생산, 저장 하였다가 필요할 때 마다 혈액으로 내보내는 일을 합니다. 갑상선호르몬은 신생아나 어린이의 성장과 발육을..

일상 2021.01.09

Mac OS Vagrant 설치

Vagrant Vagrant는 여러 프로바이더(Virtual Box, VMware, AWS등)을 이용해 로컬에서 테스트 환경을 쉽게 구성할 수 있도록 도와주는 workflow이다. Vagrant하나로 여러 프로바이더의 환경을 관리 할 수 있다. HashiCorp에 의해서 만들어진 도구이다. 장점은 개발 환경 설정 시간이 적게 들고, 한 번 구축하면 아주 편리하다. 자세한 내용은 아래 참조. www.vagrantup.com/ Vagrant by HashiCorp Vagrant enables users to create and configure lightweight, reproducible, and portable development environments. www.vagrantup.com Mac에 bre..

Computer Storage 종류

요즘 고성능 데이터베이스(Snowflake, BigQuery)들 그리고 RDB(Aurora)들을 보면 컴퓨팅과 스토리지를 분리한 아키텍쳐들이 많이 보인다. 이는 데이터는 공유하면서 컴퓨터 리소스만 따로 늘릴 수 있기 때문에 자원을 효율적으로 쓸 수 있는 아키텍쳐이다. 그리고 Storage간에 sync가 필요하지 않기 때문에 이를 위해 필요한 비용을 아낄 수 있다라는 아주 큰 장정을 가지고 있다. 작은 클러스터에서는 상관없겠지만 클러스터가 10개 이상 이라고 생각하면...... 어마어마한 비용이다. 스토리지를 분리하기 위해서는 NAS, SAN을 사용해야 될 것인데, 성능 문제로 SAN을 사용할 것 이다. 종류 내장 디스크 (Internal Disk) DAS (Direct Attached Storage) N..

MySQL InnoDB History란?

Introduction (시작 전에 이 글은 MySQL 5.6 기준의 글입니다.) 왜 Innodb History에 대해서 알아야 할까요? 1. InnoDB의 MVCC의 동작 원리에 대해 이해하려면 History에 대한 이해가 필요합니다. 2. History List Length가 길어지면 많은 문제들이 발생합니다. (CPU Peak, DML delay) 3. 왜 DBA들이 hung transaction이나 long query를 모니터링하고, Kill 하는지 알 수 있습니다. (커뮤니케이션) MVCC (Multi Version Concurrency Control) 본격적으로 InnoDB History를 살펴보기 앞서 MVCC에 대해서 먼저 간략하게 설명하고 넘어가겠습니다. MVCC를 먼저 설명하는 이유는 ..

반응형