이번시간에는 코딩 공부 또는 데이터 AI에 관련하여 학습하다보면 나오는 단어들에 대해 학습해 보려고 합니다. 해당 단어들의 간단한 개념을 잡아보기 위해 작성하는 것이므로 더욱 자세한 내용은 추후 다시 작성하도록 하겠습니다.
스키마는 데이터베이스에서 데이터 구조, 형식 및 관계를 정의하는 데 사용되는 구조화된 설계입니다. 데이터베이스의 테이블, 열, 제약 조건 등을 정의하고 데이터의 구조를 결정하는 데 도움을 줍니다. 다른 데이터베이스 시스템에서도 사용되지만, 여기서는 관계형 데이터베이스의 스키마를 중심으로 설명하겠습니다.
구조 정의
데이터베이스의 테이블, 열, 관계 및 제약 조건을 뜻 합니다. 스키마를 사용하여 테이블 간의 관계를 설정하고, 각 열의 데이터 유형과 제약 조건(NULL 값 허용 여부, 고유한 값 여부 등)을 정할 수 있습니다.
유효성 검사
정의된 스키마에 따라 데이터가 저장되고 업데이트될 때 데이터의 일관성과 무결성을 유지하기 위해 스키마 제약 조건이 적용됩니다.
일관성 유지
예시로 테이블 간의 관계를 정의하고, 데이터가 일관되고 정확한 방식으로 저장되도록 합니다.
데이터베이스 설계 문서화
스키마를 통해 데이터 구조와 관계를 명확하게 표현하고, 데이터베이스 사용자 및 관리자에게 데이터 구조에 대한 이해를 제공합니다.\
즉, 스키마란 데이터베이스의 구조와 제약조건에 관해 전반적인 명세를 기술한 것이며,자세히 보면 개체 특성을 나타내는 속성(Attribute), 속동들의 집합으로 이루어진 개체(Entity), 개체 사에 존재하는 관계(Relation), 이들을 유지할 제약조건들 입니다.
아키텍처는 시스템이나 소프트웨어의 구조와 구성 요소, 상호 작용 방식, 설계 원칙 등을 설계하고 정의하는 개념입니다. 아키텍처는 시스템 또는 소프트웨어의 기능, 성능, 확장성, 보안 등을 결정하는 중요한 역할을 합니다.
시스템 구조
시스템의 구성 요소, 계층, 모듈, 인터페이스 등을 설계하고 구성함으로써 전체 시스템의 구조를 결정합니다. 이는 시스템의 기능과 성능에 영향을 미칩니다.
상호 작용 방식
시스템 내부 및 외부의 데이터 흐름, 메시지 교환, 인터페이스 설계 등을 결정함으로써 시스템의 동작 방식을 정의합니다.
설계 원칙과 패턴
코드의 구조, 모듈화, 재사용성, 확장성, 유지 보수성 등을 개선하는 데 도움을 줍니다.
기능과 성능
시스템의 요구 사항과 목표를 고려하여 기능의 분배, 성능 최적화, 확장성, 가용성 등을 고려하여 아키텍처를 설계합니다.
표준화와 재사용
일관된 설계 원칙과 패턴을 적용하고 구성 요소를 재사용할 수 있도록 함으로써 개발 효율성과 유지 보수성을 향상시킵니다.
아키텍처는 소프트웨어 시스템, 정보 시스템, 컴퓨터 시스템 등 다양한 영역에서 사용되며, 소프트웨어 아키텍처, 기업 아키텍처, 네트워크 아키텍처 등 다양한 종류의 아키텍처가 있습니다. 아키텍처는 시스템의 안정성, 성능, 확장성, 보안 등을 결정하는 중요한 설계 요소로, 효율적이고 품질 높은 시스템을 개발을 돕습니다. 즉, "하나의, 서비스가 어떻게 구성되며 어떻게 동작이 된다”를 표현하는 것입니다.
두 단어 모두 컴퓨터 시스템에서 특정한 종류의 처리를 수행하는 프로세서 유닛이며, 병렬 처리에 최적화된 구조입니다.
NPU를 쉽게 설명하자면 1+1을 계산시 GPU는 1+1을 직접 풀어서 답을 내놓는 반면, NPU는 인간의 뇌의 처리 방법을 모방한 반도체로써 사람처럼 이미 학습한 내용이라면 계산하지 않고 2라는 답을 도출하게 됩니다.
GPU는 다양한 병렬 처리 작업과 그래픽 처리에 특화된 하드웨어 가속기이며, NPU는 주로 인공지능 분야의 딥러닝 작업을 최적화한 하드웨어 가속기입니다. 두 가속기 모두 인공지능 분야에 사용됩니다.
이번 시간에는 여러가지 공부를 하는 도중에 기본적으로 알만한 내용들을 정리해 보았습니다.
좋은 정보 얻어갑니다, 감사합니다.