1. 멀티 스레드는 무엇인가요?
일반적으로 하나의 프로세스는 하나의 스레드를 가지고 작업을 수행하게 되지만, 멀티 스레드란 하나의 프로세스 내에서 둘 이상의 스레드가 동시에 작업을 수행하는 것을 의미합니다. 또한, 멀티 프로세스는 여러 개의 CPU를 사용하여 여러 프로세스를 동시에 수행하는 것을 의미합니다. 멀티 스레드는 각 스레드가 자신이 속한 프로세스의 메모리를 공유하므로, 시스템 자원의 낭비가 적습니다.
또한, 하나의 스레드가 작업을 할 때 다른 스레드가 별도의 작업을 할 수 있어 사용자와의 응답성도 좋아집니다.
2. 관계형 DB와 비관계형 DB의 차이점은 무엇인가요?
관계형 데이터베이스와 비관계형 데이터베이스는 애플리케이션을 위한 두 가지 데이터 저장 방법입니다. 관계형 데이터베이스(또는 SQL 데이터베이스)는 데이터를 행과 열이 있는 테이블 형식으로 저장합니다. 열에는 데이터 속성이 포함되고 행에는 데이터 값이 있습니다. 관계형 데이터베이스의 테이블을 연결하여 다양한 데이터 포인트 간의 상호 연결에 대한 심층적인 인사이트를 얻을 수 있습니다. 반면 비관계형 데이터베이스(또는 NoSQL 데이터베이스)는 데이터에 액세스하고 관리하기 위해 다양한 데이터 모델을 사용합니다. 이러한 데이터베이스는 큰 데이터 볼륨, 짧은 지연 시간과 유연한 데이터 모델이 필요한 애플리케이션에 특히 최적화되었으며, 이는 다른 데이터베이스의 데이터 일관성 제한 일부를 완화함으로써 이루어집니다.