블록체인을 현대 데이터베이스처럼 작동시키기
전통적인 데이터베이스들은 수십 년 전에 샤딩을 통해 확장성 문제를 해결했습니다 - 여러 서버에 데이터를 분할하는 것입니다. Quai는 이 검증된 접근법을 블록체인에 가져오지만, 중요한 혁신과 함께: 모든 샤드에서 완전한 보안을 유지합니다.샤딩이란 무엇인가?
데이터베이스 샤딩 (전통적): 하나의 건물에는 너무 커진 도서관을 상상해보세요:- 해결책: 여러 건물(샤드)에 책을 분할
- 혜택: 더 많은 사서가 동시에 방문자를 도울 수 있음
- 도전: 어느 건물에 어떤 책이 있는지 아는 시스템이 필요
- 전통적 접근: 데이터와 보안을 모두 분할 (위험함)
- Quai의 접근: 데이터만 분할하고 보안은 통합 유지 (안전함)
Quai가 샤딩을 구현하는 방법
주요 혜택:-
병렬 처리
- 각 샤드가 독립적으로 트랜잭션을 처리
- 하나의 계산대 대신 여러 계산대를 갖는 것과 같음
- 결과: 50,000+ TPS 용량
-
낮은 노드 요구사항
- 노드들이 특정 샤드만 추적하도록 선택할 수 있음
- 참여를 위한 하드웨어 요구사항 감소
- 더 접근 가능 = 더 탈중앙화
-
지리적 최적화
- 샤드들이 자연스럽게 지역별로 조직화
- 각 샤드 내에서 지연시간 최소화
- 전 세계에서 더 나은 성능
스마트 주소 시스템
문제: 어느 샤드가 어떤 트랜잭션을 처리하는지 어떻게 알 수 있을까요? Quai의 해결책: 주소에 내장된 라우팅 정보 - 블록체인을 위한 우편번호와 같습니다. 작동 방식: 모든 Quai 주소는 우편번호처럼 작동하는 9비트 접두사를 갖습니다:- 첫 4비트: 리전 식별자 (국가와 같음)
- 다음 4비트: 리전 내 존 (도시와 같음)
- 마지막 비트: 통화 유형 (Quai 또는 Qi)
형식
아래 표는 샤드 식별자의 각 비트에 대한 형식을 명시합니다.비트 0-3 | 비트 4-7 | 비트 8 |
---|---|---|
리전 번호 | 존 번호 | 원장 식별자 |
간단한 예시
예시 주소 (단축) | 위치 | 통화 |
---|---|---|
0x000… | 리전 0, 존 0 | Quai |
0x2A4… | 리전 2, 존 10 | Quai |
0x008… | 리전 0, 존 0 | Qi |
- 즉시 라우팅: 노드들이 트랜잭션을 어디로 보낼지 즉시 알 수 있음
- 조회 불필요: 주소 자체가 모든 라우팅 정보를 포함
- 효율적 처리: 크로스샤드 혼란 제거
보안 돌파구
전통적 샤딩의 치명적 결함:- 10개 샤드 = 각각이 보안의 1/10를 받음
- 공격자들이 가장 약한 샤드에 집중할 수 있음
- 하나의 강한 자물쇠 대신 10개의 약한 자물쇠를 갖는 것과 같음
- 모든 샤드가 100% 네트워크 보안을 유지
- 하나의 샤드를 공격하려면 전체 네트워크를 공격해야 함
- 모든 문을 보호하는 동일한 뚫을 수 없는 자물쇠를 갖는 것과 같음
- 계층적 구조가 모든 샤드를 조직화
- 해시 링크된 참조가 모든 체인을 연결
- 원자적 연산이 모든 샤드가 함께 진행되도록 보장
- 결과: 무제한 샤드, 타협되지 않은 보안