샤딩
샤딩이란 무엇입니까?
샤딩은 블록체인을 확장하는 데 사용할 수 있는 데이터베이스를 분할하는 기술입니다. 이를 통해 블록체인은 초당 더 많은 트랜잭션을 처리할 수 있으며, 이를 더 높은 처리량이라고도 합니다. 샤딩은 블록체인 네트워크를 더 작은 파티션으로 분할합니다. 이러한 소위 샤드(shard)는 전체 블록체인의 데이터 중 일부만 처리하므로 다른 샤드와 독립되어 불필요한 컴퓨팅 작업을 덜어줍니다.
샤딩 덕분에 네트워크는 더 많은 트랜잭션을 계산할 수 있으므로 중앙 집중식 원장에서 알려진 트랜잭션 속도로 더 빠르게 확장될 수 있습니다. 반면, 비평가들은 샤드가 공격에 취약하고 네트워크 보안을 약화시킨다고 지적합니다.
샤딩은 어떻게 작동하나요?
블록체인 네트워크는 네트워크의 트랜잭션을 검증하는 노드로 구성됩니다. 노드는 서로 독립적이며 블록체인의 기록 데이터를 저장합니다. 모든 풀 노드는 블록체인의 전체 기록을 저장하므로 블록체인의 보안과 분산화는 향상되지만 거래 속도는 느려집니다.
샤딩은 노드의 작업 부하를 여러 샤드로 분할합니다. 본질적으로 모든 노드가 각 트랜잭션을 검증해야 하는 것은 아니며, 이는 불필요하게 노드에 부담을 주고 네트워크 속도를 저하시킵니다. 대신 작업이 여러 샤드에 걸쳐 분류됩니다. 블록체인 데이터베이스는 수평으로 분할되어 있습니다. 즉, 다양한 샤드가 특성에 따라 분할됩니다. 예를 들어, 샤드는 특정 유형의 거래를 저장하는 역할을 담당할 수 있고, 다른 샤드는 저장하는 암호화폐 자산의 유형에 따라 분할될 수 있습니다.
결과적으로 각 노드가 각 거래를 확인하지는 않습니다. 이는 블록체인의 작업량을 대폭 줄이고 속도를 높입니다.
샤딩은 얼마나 안전합니까?
샤딩은 블록체인의 분산화와 보안을 잠재적으로 저하시킨다는 비판을 받아왔습니다. 샤드가 손상되어 하나의 샤드가 다른 샤드를 대신하게 되어 정보나 데이터가 손실될 수 있습니다. 예를 들어, 해킹 공격이 샤드를 장악하고 잘못된 트랜잭션을 도입하여 데이터의 유효성에 대해 다른 샤드 사이에 혼란을 초래할 수 있습니다.
이더리움은 샤딩을 어떻게 사용합니까?
이더리움은 블록체인의 처리량을 높이기 위해 확장 접근 방식의 일부로 샤딩을 사용할 계획입니다. 네트워크는 앞으로 64개의 새로운 샤드 체인을 도입할 예정이며, 이는 뚜렷한 책임을 갖고 비콘 체인이라고 불리는 이더리움 메인넷의 작업 부하를 크게 줄일 것입니다. 이 프로세스는 지분 증명으로의 전환을 합의 메커니즘으로 보는 Ethereum 확장의 일부로 발생합니다. 이 스위치를 Merge라고 합니다. 샤딩은 확장 로드맵에서 Ethereum의 다음 단계 중 하나가 될 것입니다.