본문 바로가기

전체 글74

마음의 안전거리 - (일) 자동차 사고의 원인 중에 흔하게 듣는 말이 있습니다. " 안전거리 미확보" 앞차와의 안전거리를 충분히 확보하지 않으면 돌발상황에 대처하기 어렵기 때문에 사고가 나곤 합니다. 그런데 그 안전거리가 우리의 마음에도 필요하다는게 제 생각입니다. 이번주 저의 회사 생활은 매우 좋은일도, 매우 힘든 일도 있는 굴곡이 큰 한 주 였습니다. 이럴때 저는 평정심을 잃고 심하게 자책하거나 우울해 하곤 하는데요, 그래도 이번에는 예전보다 수월하게 견뎠다고 생각합니다. 마음의 안전거리 덕분에요. 제가 생각하는 마음의 안전거리란 일의 결과를, 곧 자신의 가치로 환산하는 습관을 멈추는 것입니다. 일의 결과에 대해서 (나와의) 안전거리를 두어야 합니다. 저는 일이 멋지게 마무리 되었을 때에도 너무 흥분한 상태로 다니다가 다른 실.. 2013. 9. 15.
FK를 어느쪽에 둘지 결정하기 모델링을 하다보면 어느쪽 테이블에 FK를 둘 지 하는 것이 고민이 될 때가 있습니다. 오늘은 그런 상황에 대해서 살펴보도록 할께요. 먼저 가장 단순하게, 다음과 같은 상황이라면 어떨까요? 1:M 관계 그림과 같이 1:M 관계라면 당연히 M쪽에서 FK를 가지게 됩니다. 아니 가져야 합니다. 1 쪽에서 M 개의 데이터를 수용할 수는 없으니까요. 팀장 쪽에서 팀원 이라는 속성을 팀원1~팀원100 정도로 가지고 있지 않는 한, 팀원의 정보를 가지는 것은 불가능합니다. 한 팀장 밑에 팀원은 여러명 일 테니까요. 데이터는 이렇게 들어가게 되겠지요. ( 아래그림처럼, 테이블에 들어갈 데이터를 예를들어 써보시면 확실하게 이해가 갑니다. 저도 평소에 뭔가 헷갈린다 싶을 때는 꼭 데이터를 예를 들어 적어보는데요, 생각이 .. 2013. 8. 29.
메타 모델 이란? 흠... 글을 쓰기 전에 조금 주저했더랬습니다. '내가 메타 모델이라는걸 다룰 수 있는 수준인가?' 하구요. 여러분들은 "메타"라는 단어를 들으면 어떤 느낌이 드시나요? 저는 뭔가 고대 이집트 상형문자 분위기가 떠오르면서 알수없는 ^^; 그런 막연하고 어려운 느낌이 들었답니다. 그래서 쓸까말까 망설였지요. 제 블로그 제목은 보시다시피 "아는만큼" 입니다. 아는만큼 보이고 들리고 읽히더라!는 무릎을 치는 경험 때문인데요. 메타라는게 어려운 개념이기는 하지만 제가 아는만큼이라도 읽고 이해하신다면 내 주변을 스쳐가는 메타의 개념들을 언젠가는 모두 꿰뚫게 되는 첫걸음이 되지 않을까 생각하고 감히 적어봅니다. 위키피디아에서는 메타를 이렇게 정의하고 있네요. 메타(영어: meta-, 그리스어: μετά→ 뒤, 넘어.. 2013. 8. 23.
공통코드 테이블 (Code Table) 설계하기 아무리 소규모의 시스템이라도, 데이터 모델에 코드 테이블은 존재합니다. 오늘은 이 코드들이 모여서 어떻게 공통코드 테이블로 만들어 지게되며, 이 공통코드 테이블은 어떤 특징을 가지는지 차분히 살펴보도록 하겠습니다. 지금까지 자주 살펴본 초간단 쇼핑몰 시스템에도 여기저기 코드가 필요합니다. 모델에 나타나는 코드 성격의 컬럼 고객 테이블의 고객등급은 대표적인 코드 대상입니다. 코드는 'VIP 등급' 대신에 'V'라는 한 글자를 쓰는것처럼, 매번 한글 또는 영문으로 쓰면 자리를 많이 차지하고 그 코드에 해당하는 데이터를 조회하는 SQL을 작성할때도 귀찮아지기 때문에 만들기 시작하는데요. 만들고 나면 코드로 정하지 않은 값들은 아예 들어가지 않도록 막아줄 수 있다는 꽤 괜찮은 장점이 추가 됩니다. 위 모델에 나.. 2013. 8. 15.