답변:
이 모든 것이 훌륭한 정보이기 때문에 어디서부터 시작 해야할지 모르겠습니다. SSD에 대한 정보부터 시작하여 모든 다른 캐싱 방법에 대한 설명을 시작하겠습니다. 나는 당신이 있기를 바랍니다
장점 단점
하이브리드 시스템을 사용하는 것이 가장 좋습니다 (용량, 안정성, 속도 등).
2013 년 4 월 28 일에 출시 된 Linux 3.9 커널에는 SSD 캐싱이 도입되었습니다. 커널의 장치 맵퍼에는 SSD 또는 기타 저장 장치를 하드 드라이브의 캐시로 사용할 수있는 dm-cache라는 캐시 대상이 포함되었습니다. 빠른 SSD가 먼저 데이터를 캐시 한 다음 느린 하드 드라이브로 전송할 수 있으므로 데이터 쓰기 및 읽기 속도가 본질적으로 향상됩니다.
출처 : Iwn
Flashcache는 2010 년 4 월 Facebook (Mohan Srinivasan, Paul Saab 및 Vadim Tkachenko)이 처음 작성하고 릴리스 한 모듈입니다. 다른 드라이브에서 드라이브의 Write Through 캐싱을 허용하는 커널 모듈입니다. 성능상의 이유로 작은 솔리드 스테이트 드라이브에서 회전 드라이브를 캐싱하는 데 가장 자주 사용됩니다. 이는 SSD의 속도와 최근 캐시 된 파일의 표준 회전 드라이브 크기를 제공합니다. FlashCache는 Linux 용 범용 쓰기 저장 블록 캐시입니다.
출처 : ArchLinux
Bcache는 Linux 커널 블록 레이어 캐시입니다. 플래시 기반 SSD (Solid State Drive)와 같은 하나 이상의 고속 디스크 드라이브가 하나 이상의 느린 하드 디스크 드라이브에 대한 캐시 역할을 할 수 있습니다.
하드 드라이브는 저렴하고 크고 SSD는 빠르지 만 작고 비쌉니다. 두 가지 장점을 투명하게 얻을 수 있다면 좋지 않을까요? Bcache를 사용하면 케이크를 먹고 먹을 수도 있습니다.
Linux 커널 용 Bcache 패치를 사용하면 SSD를 사용하여 다른 블록 장치를 캐시 할 수 있습니다. ZFS의 L2Arc와 유사하지만 Bcache는 쓰기 저장 캐싱 (캐싱을 통한 쓰기 외에도)을 수행하며 파일 시스템에 무관합니다. 최소한의 노력으로 스위치를 켤 수 있으며 설정에 대한 구성 없이도 잘 작동하도록 설계되었습니다. 기본적으로 순차적 IO를 캐시하지 않고 SSD가 탁월한 임의의 읽기 및 쓰기 만합니다. 데스크탑, 서버, 고급 스토리지 어레이 및 심지어 내장형에도 적합합니다.
설계 목표는 SSD 및 캐시 된 장치 (캐시 적중 vs. 미스 및 쓰기 대 쓰기 / 쓰기에 따라 다름)만큼 오류 한계 내에서 빠른 속도를 유지하는 것입니다. 아직 순차 읽기를위한 것은 아닙니다. 그러나 테스트 결과는 강조 적으로 가능하며 경우에 따라 무작위 쓰기보다 더 나은 경우도 있습니다.
출처 : Bcache
Bcache는 큰 단점이 있으며 캐시를 구현하기 위해 시스템에서 메모리를 제거합니다.
EnhanceIO는 애플리케이션 계층 아래에서 실행되는 솔루션으로, 주요 IT 인프라 변경없이 애플리케이션이 SSD의 성능 이점을 활용할 수 있도록합니다. SSD 캐시는 모든 SSD 시스템 비용의 일부만으로 HDD에서 SSD로 전환 할 때 얻을 수있는 이점을 대부분 얻을 수 있습니다. 캐시 된 시스템은 일반적으로 유사한 성능의 HDD 기반 시스템보다 적은 전력으로 작동하며 냉각 요구 사항을 줄임으로써 부수적 인 이점을 만듭니다.
SSD 캐시는 기존 시스템의 도매 업그레이드 / 교체가 아닌 점진적인 투자를 통해 성능을 향상시켜 기존 시스템의 수명을 연장 할 수 있습니다.
캐싱은 추가 스토리지 관리 오버 헤드없이 새로운 디스크 선반을 확보 및 설치하고, 새로운 LUN을 구성하고, 새로운 LUN으로 데이터를 마이그레이션 할 수 있으므로 데이터에 더 빠르게 액세스 할 수 있습니다. 캐싱은 거의 투명하며 다운 타임이 거의 필요하지 않습니다. EnhanceIO는 Flashcache를 기반으로합니다.
출처 : Stec-Inc
bcache는 특별히 준비된 (포맷 된) 데이터 파티션이 필요하기 때문에 가장 가치가 없습니다. 따라서 캐싱을 활성화 / 비활성화하기 위해 200 % 용량이 필요하고 데이터를 오래 이동하여 캐시를 기존 파티션에 연결하는 것이 어렵습니다 (가능한 경우).
EnhanceIO의 장점은 중간 장치가 전혀 필요하지 않으며 장치가 이미 장착되어 있어도 즉시 모든 블록 장치에 연결할 수 있다는 것입니다. 또 다른 멋진 점은 EnhanceIO 캐시를 파티션뿐만 아니라 파티션 된 블록 장치에 연결하여 모든 파티션을 한 번에 캐시 할 수 있다는 것입니다. 플래시 캐시 enchanceio 모듈과 마찬가지로 DKMS로 빌드되고 이전 커널과 함께 사용할 수 있습니다.
출처 : 데비안
DM 캐시 장점
DM 캐시는 단순화 된 아키텍처를 사용하므로 적응 및 사용자 정의가 용이합니다. 사용자는 처리해야 할 데이터의 양이나 데이터 값에 따라 블록 크기와 캐시 용량을 조정할 수 있습니다. 특정 응용 프로그램에서 대량의 데이터를 순서대로 저장해야하는 경우 사용자는 해당 용도로 캐시를 구성 할 수 있습니다. 사용자가 캐시와 동시에 데이터베이스에 정보를 기록하려는 경우 캐시 작업을 방해하지 않습니다.
DM 캐시 단점
DM 캐시 사용의 한 가지 단점은 Linux 운영 체제에 메타 데이터 저장 공간이 제한되어 있다는 것입니다. 캐시가 크고 작은 블록이 많으면 저장된 정보에 대한 많은 메타 데이터가 추가됩니다. 이 문제를 해결하려면 사용자는 블록 크기를 늘려야합니다. 또 다른 가능한 문제점은 서버 충돌 후 캐시 메타 데이터가 더 이상 캐시 컨텐츠와 일치하지 않을 수 있지만 올바른 구성을 결국 복원 할 수 있다는 것입니다.
출처 : 프레이저 셔먼의 보완
따라서 위의 정보에서 EnhanceIO가 갈 길은 분명하지만 Flashcache를 기반으로하기 때문에 플래시 캐시를 사용합니다. 그러나 나는 최종 결정을 내리기 전에 두 가지 모두를 시도 할 것입니다.
zram-config
스왑 사용에 우선 순위가 있습니다. 그리고 게임을 SDD에 저장하고 테스트하십시오. 일부 게임은 훨씬 빠르게 작동하지 않고 다른 게임은 훌륭하게 작동합니다! 쓰기 제한으로 인해 SDD를 캐시로 사용하지 않는 것이 더 좋지만 SDD가 더 저렴 해 지므로 더 이상 걱정하지 않아도됩니다.)