답변:
물건이 RAM에 저장되고, 결국 RAM에서 빠져 나감에 따라 일부 손상이 자연스럽게 발생합니다 (이론은 다양하지만 현재 가장 무게가 큰 것은 컴퓨터 자체의 EMI입니다). ECC는이 손상을 감지하고 수정할 수있는 RAM 및 마더 보드의 기능입니다.
손상은 일반적으로 매우 작습니다 (ECC는 일반적으로 64 비트 "워드"당 1-2 비트를 감지하고 수정할 수 있으며 일반적인 오류 속도를 넘어 설 수 있습니다). RAM의 밀도에 따라 주파수가 증가합니다. 평범한 워크 스테이션 / PC는이를 인식하지 못합니다. 중요한 서비스를 제공하는 수요가 많은 환경에서 고밀도 RAM 24/7을 실행하는 서버에서는 물건이 부서지지 않도록 가능한 모든 단계를 수행하십시오.
또한 ECC RAM은 마더 보드에서 지원해야하며 평균 워크 스테이션 / PC는이를 지원하지 않습니다.
ECC RAM은 비 ECC보다 비싸고 클록 속도에 훨씬 민감하며 적은 (1-2 %) 성능 저하를 일으킬 수 있습니다. 도움이된다면, 작동하는 비유는 RAM과 RAID 컨트롤러입니다. PC에서 칩셋에 내장 된 하드웨어 지원 소프트웨어 RAID는 단일 디스크 오류에 대한 강력한 보호입니다. 서버에서는 충분하지 않습니다. 정전, 디스크 고장 등으로 인해 데이터가 손실되지 않도록 온보드 RAM이 장착 된 배터리로 백업되는 고급 하드웨어 RAID가 필요합니다.
따라서 워크 스테이션에 ECC RAM이 필요하지 않습니다. 이익은 단순히 가격을 정당화하지 않을 것입니다.
이 기사 가 필요 하다면 ECC RAM을 사용해야합니다.
"서버를 실행하지 않아서 필요하지 않습니다"라는 문제가 아닙니다. 데이터의 가치에 따라 다릅니다. 간혹 충돌이 발생하는 것이 아닙니다. 문제는 손상을 입을 수 있고 진행 상황을 알 수있는 방법이 없다는 것입니다.
메모리 크기가 증가함에 따라 ECC RAM이 더욱 흥미로워집니다. RAM이 8GB 인 머신에서 단일 비트 오류가 발생할 확률은 단순히 비트 수가 많기 때문에 640K PC / XT 시절보다 훨씬 높습니다. 해당 RAM이 디스크 버퍼에있을 수있는 데이터베이스 서버에서 비트 오류로 인해 디스크 스토리지도 손상 될 수 있습니다. 일반적으로 서버에서 ECC 메모리를 사용할 것으로 예상됩니다.
일부 워크 스테이션 (특히 Xeon 또는 Opteron CPU가있는 워크 스테이션)은 등록 된 메모리를 사용합니다. 데스크탑 PC에서는 과잉으로 볼 수 있습니다.
ECC RAM은 일반적으로 일종의 해밍 코드 또는 모듈 식 이중화를 사용하여 메모리 기반 오류를 방지하고 수정하도록 설계되었습니다. 중요한 데이터가 포함되어 있거나 고 가용성이 필요한 서버에서 매우 유용하지만 비용이 많이 듭니다.
중요한 서버에 대한 추가 비용을 지불 할 가치가 있지만 데스크탑 컴퓨터에 대해 실제로 지불하고 싶습니까? 가끔 메모리 오류가 발생하더라도 문제가됩니까? SQL 데이터베이스가 트랜잭션 중에 일부 데이터를 삭제하더라도 중요하지만 워드 문서가 약간의 메모리 블립에 의해 영향을 받는지 걱정합니까?
당신이 원하는 경우 신뢰할 수있는 다음 워크 스테이션을 당신은 그것을위한 ECC의 RAM을 원한다. 자주 충돌하지 않고 작업이 완료되며 RAM에 캐시 된 문서는 임의로 손상되지 않습니다.
위에서 언급 한 것보다 ECC의 추가 이점은 불량 RAM을 감지 할 수 있다는 것입니다. 긴 memtest86 세션을 실행하면 일반적으로 문제가 발생하지만 RAM에 매우 특정한 문제가 발생하여 드물고 특정 사용 사례에만 표시 될 수 있습니다. 이는 완벽한 ECC RAM이 매월 한 번 보호하기 위해 설계된 손상보다 훨씬 더 자주 발생할 수 있습니다. 따라서 모니터링 소프트웨어를 설치하면 RAM이 양호하거나 불량 칩을 교체 할 수 있습니다. 여전히 한계는 있지만 ECC 메모리는 일반 RAM보다 훨씬 비싸지 않으므로 그만한 가치가 있습니다.
나는 질문의 제목에 근거하여 약간의 혼란이있을 수 있다고 생각합니다.
평균적인 데스크탑 PC를 의미한다면, 이는 일반적으로 ECC를 지원하지 않는 플랫폼을 기반으로합니다.
워크 스테이션 급 컴퓨터 를 의미한다면 , 상관없이 ECC 메모리가 제공 될 가능성이 높습니다.
전반적으로 워크 스테이션 클래스는 기본적으로 서버 하드웨어를 기반으로하지만 적절한 그래픽을 사용하고 다른 폼 팩터로 패키지됩니다.
예상되는 워크로드는 데스크톱 PC보다 더 많은 부담을지고 있습니다. 따라서 ECC가 서버에 적합하다는 것을 인정한다면 ECC도 워크 스테이션에 적합하지 않다고 생각합니다.
데스크탑 PC의 경우 ECC가 합리적 일지 여부에 대한 논쟁이 있습니다. 모든 것이 ECC를 가져야한다고 주장 할 수 있지만, 현재 업계가 ECC를 고급 하드웨어를 차별화하는 기능으로 결정한 것은 실용적이지 않다.
Zan Lynx 기사에 따르면 야생의 DRAM 오류 : 대규모 현장 연구 에서 수정 불가능한 오류는 일반적이지만 시스템에서 임의의 수정 가능한 오류는 거의 나타나지 않습니다. 발병률은 아마도 1 년 안에 몇 번 일지 모르지만 사용법에 따라 다릅니다.
따라서 서버 환경에서 수정 가능한 오류는 그다지 중요하지 않지만 서버 시스템을 거의 부팅하지 않으므로 RAM 오류로 인한 수정할 수없는 오류가 데이터를 손상시키는 동안 잠시 동안 감지되지 않을 수 있습니다. 이것이 서버에 ECC가 필요한 주된 이유라고 생각합니다. 워크 스테이션이 부팅되어 RAM을 자주 확인하므로 재부팅 할 때마다 하드웨어 오류를 감지 할 수 있습니다. 그 빈도가 귀하의 비즈니스에 충분하다면 워크 스테이션에 ECC RAM이 필요하지 않을 것입니다.
메모리 오류에 대해 이야기하고 있다면 서버의 중요한 문서를 버전 화하는 것이 좋습니다. 따라서 워크 스테이션이 무언가를 읽고 수정하면 서버에서 원본 내용을 덮어 쓰지 않아야합니다. 정기적 인 백업도 동일하게 수행 할 수 있습니다.
이 질문의 또 다른 측면은 보안입니다. 워크 스테이션이 안전하지 않은 네트워크에 연결된 경우 행 해머 공격에 취약하여 DRAM 관련 현상을 악용 할 수 있습니다 . 따라서 보안 측면에서 ECC RAM을 사용하는 것이 좋습니다.