안녕하세요 여러분 :)
새해 첫 working day가 밝았습니다!
송아지할때 송아 김송아입니다.
작년 이맘때쯤, RedHat에서 간단한 설문조사를 진행했었죠.
각 기업에서 중요시 하는 기술 분야가 무엇인지, 약 1700명의 기업 리더들에게 설문을 했던 내용입니다.
위 그래프의 출처는 아래 링크 입니다.
이런 설문에서 언제나 빠짐없이 등장하는 보안 이라는 키워드는,
늘 무결성이란 단어와 함께 다니고 있습니다.
그럼, 여러분들에게 한가지만 여쭐게요!
데이터 무결성을
간단하게 설명해주세요.
막상 이렇게 들으면, 저도 '어.... 😇' 하게 되더라구요.
매번 1등으로 등장하는 키워드인데, 이렇게 보낼 수는 없겠더라구요.
데이터 무결성이란,
수명 주기 동안 데이터의 정확성과 일관성 그리고 완전성을 유지하고 보증하는 것을 가리킵니다.
💡 수명 주기란?
데이터의 생성부터 처리(연산), 저장, 사용, 폐기까지 데이터의 Life Cycle을 의미합니다.
그럼, 정확성과 일관성의 기준은 무엇일까요?
꼬리에 꼬리를 무는 질문이네요. (꼬꼬무)
이 질문에 대한 여러분들의 대답은 무엇인가요?
정확성와 일관성의 기준은, 일종의 규칙과 제한에 의해 정해집니다.
우리는 이런 제약 조건을 "무결성 제약조건"이라고 부릅니다.
아마 백엔드 개발자이신 분들은 머릿속에 스쳐가시죠?
데이터 베이스에 정확한 데이터가 저장되도록(= 데이터의 정확성을 보장) 하기 위해 만들어두는 데이터베이스 제약 조건이 떠오르실 텐데요!
맞습니다.
일반적으로 데이터베이스 시스템의 주요 특징으로 뽑히고 있는 요소입니다.
즉, 데이터베이스에 데이터가 삽입/수정 등 갱신이 이루어지기 전에
무결성을 유지하기 위해 (=규정에 맞는지) 확인하는 조건 들이죠.
대표적으로 데이터베이스 무결성 제약조건의 종류은 대표적으로 다음과 같이 꼽을 수 있습니다.
✔️ 널 무결성 : 데이터는 Null이 될 수 없다.
✔️ 도메인 무결성 : 속성이 정의된 도메인에 속하는 값을 넣어야 한다. (ex. 성별 란에 '외계인' 은 넣을 수 없음)
✔️ 고유 무결성 : 데이터는 유니크해야 한다.
✔️ 참조 무결성 : 존재하는 외래키만 참조할 수 있다.
사실 이런 조건들 또는 개념들은 교과서적으로 제시되는 조건들이기도 하지만
여러분들이 관리하고자 하는 (만들고자 하는) 시스템이 어떤 데이터를 처리하는 지에 따라서 여러분들만의 제약 조건을 만들 수 있지 않을까 합니다.
결국엔 여러분들이 직접 그 규칙과 규정을 만들어가시는 거죠. 😉
프로그래밍 세상에서 만나는 모든 것들은 그대로 받아들이는 것이 아니라, 다시 한번 나만의 것으로 생각해보는 것이 중요하죠?
늘 자기화하여 습득하는
더욱 의미있는 한해가 되셨으면 좋겠습니다.
좋은 일 가득한 2024년 되시길 진심으로 바라겠습니다. 😊
감사합니다.
김송아 드림
'Web' 카테고리의 다른 글
[언그래머] 코딩테스트 챌린지_15_연탄의 크기 (by 소프티어) (1) | 2024.07.09 |
---|---|
Spring boot MSA 설계 (6) 서비스..레지스트리... 누구세요.. (1) | 2024.07.05 |
[언그래머] 쉰다섯번째 아티클_우리는 진짜 애자일을 하고 있는 걸까? (26) | 2023.12.29 |
[언그래머] 쉰네번째 아티클_CI/CD 2탄_CD 개념이 하나가 아니라고..? (15) | 2023.12.26 |
[언그래머] 쉰세번째 아티클_CI/CD란 1탄 (29) | 2023.12.22 |