샤딩이 뭔가요?

2019. 01. 15. 13:27

이더리움 관련 기사를 읽다가 '샤딩'이라는 단어를 봤는데 다른 설명글을 읽어도 명확히 정리되지 않았습니다.

복잡한 기술운 전부 설명하는 수준까지는 아니어도 대략적으로 뭘 위한 기술인지 간단히만 이야기해주시면 감사하겠습니다.

공유하고 돈벌기 ♥︎

총 4개의 답변이 있습니다.

질문자 채택 답변
Analyst

'샤딩'이라는 용어는 기존에 데이터베이스에서 사용하는 단어입니다.

하나의 데이터베이스를 여러개로 쪼개어 사용하는걸 '샤딩'이라고 하죠..

그런데 블록체인에 와서는 조금 개념이 조금 달라지고 확장됩니다.

현재 이더리움으로 설명드리면

이더리움이 포크(확장,업그레이드)할 수 있는 이유는 이 '샤딩'때문입니다.

기존에 이더리움 메인넷에서 할 수 있는 합의증명방식을

샤딩을 통해서 확장해서 합의증명을 할 수 있게 되는거죠

이말은 기존에 POW(Proof of Work,작업증명방식)에서 POS(Proof of Stake, 지분증명방식)으로 합의증명방식을 바꿀 수 있게 됩니다.

이 합의 증명방식을 바꿀 수 있는 근거가 위의 샤딩입니다.

그래서 아마 이더리움 관련기사에서 샤딩을 많이 보셨을것 같네요~

2019. 01. 16. 08:28
20

샤딩이란?

샤딩은 데이터 베이스에서 가져온 용어입니다. 데이터베이스에서 샤딩이 의미하는지 확인할 필요가 있습니다.

웹사이트에 빅데이터가 있다고 한다면 아주 큰 빅데이터는 데이터 검색 속도도 느려질뿐더러 확장성도 저하됩니다. 그래서 데이터를 수평 파티션을 수행하여 더 작은 테이블로 변환하여 서로 다른 데이터 베이스에 저장합니다.

블록체인에 샤딩이 활성화 된다면?

* 모든 State(상태)는 Shards(파편화)로 나뉘어집니다.

* 각 unique account(고유 계정)은 하나의 샤드에 존재합니다.

* 각 계정은 동일한 샤드의 다른 계정과 거래 할수 있습니다.

2019. 01. 15. 14:33
32
BS/개발팀

샤딩이란 전체 네트워크를 파편(=Shard)으로 분할해 여러 개의 네트워크가 알고리즘을 나눠서 푸는 방식을 뜻합니다..

먼저 샤딩을 사용한 솔라나(Solana)는 샤딩은 네트워크가 과부하 되는 문제가 있으며 노드가 많아지면 개별 노드에 대한 해킹 가능성이 증가하기 때문에 보안에 관해서 샤딩은 끊임없이 지적받아왔습니다. 하지만 그 뒤에 나온 질리카는 이부분을 보완하고 보안성을 가졌다고합니다.

이부분에 대해서 질리카는 PBFT(Practical Byzantine Fault Tolerance)기술을 사용하고있는데요 그는 아래와 같다고합니다.

1. 트랜잭션이 생성되고 트랜잭션을 검증할 샤드에 전송된다
2. 트랜잭션이 샤딩을 통해 마이크로블록, Microblock 형태로 분할되며 각 마이크로블록은 여러 노드로 전송된다
3. 각 샤드는 받은 마이크로블록을 검증해 검증이 완료된 블록을 DS 위원회, DS Committee로 최종 검증을 위해 보낸다.
4. DS 위원회는 마이크로블록을 종합해 하나의 블록으로 합쳐지며 마지막으로 블록의 최종 검증을 한다


2019. 01. 15. 23:30
20

약간 다르지만 간단하게 설명을 드리자면,

예를들어 한반에 100명이고 한조에 10명 이라고 가정하고 어떤일을 처리함에 있어서 100명에게 각각 물어보고 하는 경우보다 각 조마다 의견을 물어 일을 처리하는 것이 훨씬 빠를것입니다.

여기서 조단위로 묶는 것을 Shard라고 합니다.

블록체인에서 네트워크에 참여하는 노드가 많아지면 합의가 어려워집니다. 따라서 네트워크를 작은 그룹으로 나눠 병렬로 트랜잭션을 처리하는 것을 샤딩이라고 합니다.

2019. 01. 15. 23:39
18