전체 글150 [DB] 제 3 정규화 vs BCNF 제3 정규화 : 제2 정규화를 진행한 테이블에 대해 이행적 종속을 없애도록 테이블을 분해하는 것 즉, 기본키 이외의 다른 컬럼이 기본키 외 다른 컬럼을 결정할 수 없도록 하는 것 BCNF 정규화 : 제3 정규화(일반 칼럼이 다른 일반 칼럼에 영향을 주면 안된다)를 진행한 테이블에 대해 모든 결정자가 후보키가 되도록(일반 칼럼이 기본키에 영향을 주면 안된다) 테이블을 분해하는 것 → 일반 칼럼이 어떠한 칼럼에도 영향을 주면 안된다(일반 칼럼이 결정자가 되면 안된다) 2023. 5. 29. Mips register 종류 항상 까먹고, 검색하게 돼서 단권화를 시켜보자. 어떤 종류가 있는지는 까먹으면 한 번씩 보면 좋을 것 같다. 설명은 영어로 잘 써져 있으니.. 2023. 4. 24. 블록체인을 진정으로 이해하려면.. 블록체인을 진정으로 이해하려면 블록체인 이전의 기술들에 대한 깊은 이해가 필요하다. 블록체인은 결코 보편적인 데이터베이스와 크게 다르지 않다고 생각합니다. 기존 데이터베이스를 분산해서 저장하자는 아이디어에서 출발한 것이 바로 블록체인이기 때문입니다. 거기에 타원곡선 암호학, 데이터 불변성 등의 개념이 덧대지면 비로소 블록체인이 됩니다. 이처럼 블록체인은 사실 기존 기술들을 기반으로 한 기술이기 때문에 기존의 서버나 데이터베이스와 차별화된 기술이 절대 아닙니다. 예를 들어, 블록체인도 일반적인 데이터베이스처럼 쿼리를 하거나 수정할 수 있으며, 트랜잭션의 개념도 기존의 데이터베이스처럼 atomic단위로 commit과 Rollback으로 나눠지는 등 동일한 부분이 굉장히 많습니다. 저는 처음에 cs공부를 블록.. 2023. 4. 9. 플로이드(Floyd) 알고리즘 0. Intro 자료구조 수업 때 그래프 부분에서 다익스트라 알고리즘에 대해 배운 적이 있습니다. 다익스트라 알고리즘 경우에는 한 시작점에서 다른 정점까지의 최단 거리를 구하는 알고리즘이었습니다. 이번에는 그래프에서 모든 정점 쌍 사이의 최단 경로를 찾는 플로이드 알고리즘에 대해 소개해보겠습니다. 개인적으로 다익스트라 알고리즘보다 훨씬 이해하기는 쉬운 알고리즘 같습니다. 단, 플로이드 알고리즘은 음수 가중치가 없는 무조건 양수의 그래프에서만 유효한다는 것을 주의해야 합니다. 1. 플로이드(Floyd) 알고리즘 플로이드 알고리즘은 동적 계획법(Dynamic Programming) 기법을 사용합니다. 이를 위해서는, 그래프의 인접 행렬(adjacency matrix)을 이용하여 모든 정점 쌍 사이의 최단 경.. 2023. 4. 7. 이전 1 2 3 4 5 6 7 8 ··· 38 다음