Cloud

Redundancy 와 Replication 차이점

Reo Dongmin Lee 2019. 5. 1. 01:26

Redundancy나 Replication이나 한국어로 번역하면 복제, 복사의 의미로 사용된다.

하지만 Software Engineering 용어로써 이 두 단어는 비슷하면서도 다른 의미를 내포하고 있다는걸 오늘에서야 알았다.

일단 위키에서 이 두단어를 검색하면 다음과 같이 정의 되어있다.

 

Redundancy (engineering)

In engineering, redundancy is the duplication of critical components or functions of a system with the intention of increasing reliability of the system, usually in the form of a backup or fail-safe, or to improve actual system performance, such as in the case of GNSS receivers, or multi-threaded computer processing.

 

Replication (computing)

Replication in computing involves sharing information so as to ensure consistency between redundant resources, such as software or hardware components, to improve reliability, fault-tolerance, or accessibility.

 

보다시피 두 단어는 engineering 용어인지 computing 용어인지로 구별된다.

쉽게 말하면 Redundancy는 시스템 장애상황을 대비해서 중요한 시스템 구성요소를 복제하는것. 운영기 장애를 대비해서 운영기 노드 두대를 운영하는것은 Redundancy 라고 할 수 있다.

Replication은 복제된(Redundant) 리소스의 data가 같도록 데이터를 공유 하는것이다. 

Data replication 이라는 용어를 많이 사용하는데 서로 다른 storage device에 같은 data를 갖도록 하는것을 의미한다.

또한 replication 방식에 따라 active replication과 passive replication으로 구별된다.

Active replication은 여러 리소스에 각각 같은 request를 보내는것. 예를들어 각각의 서버에 클라이언트에서 같은 메세지를 송신 하는것.

Passive replication은 master-slave 구조로 한 서버에서 request를 받아 나머지 서버와 Synchronize 하는 것.

 

사실 한국어로 이야기 할때는 서버 복제나 데이터 복제나 그냥 복제라고 말해도 의미전달에 무리가 없다.

다만 영어로 사용할때는 두개를 구별 해야 한다는 점.

꼭 컴퓨팅 용어가 아니더라도 한국어는 하나인데 영어는 뤼앙스와 목적에 따라 여러 단어로 분리되는 경우가 많은 것 같다.

반대의 경우도 마찬가지고..

언어를 배우는 것 참 어려운 것 같다. 어색하지 않게 사용할 정도가 되려면.. 쩝.