[박진성의 블록체인 바로알기] 13. 블록체인 마이그레이션이란?
[IT동아]
[편집자주] 본 연재는 블록체인과 암호화폐/코인, NFT 등으로 대변되는 가상자산 시장과 기반 기술에 관한 올바른 정보 전달과 긍정적인 인식 정착을 목적으로, 누구라도 쉽게 이해하도록 눈높이를 낮춰 진행됩니다. 암호화폐 등에 과도한 투자나 몰입은 금융시장과 가정경제에 부정적 영향을 미칠 수 있습니다. 본문 내 의견과 내용은 본지의 편집방향과 다를 수 있습니다.
도대체 블록체인이란 무엇일까? - https://it.donga.com/102521/
블록체인의 데이터 '검증'이 중요한 이유 - https://it.donga.com/102569/
NFT가 중요한 미래 트렌드인 이유 - https://it.donga.com/102605/
NFT의 실재 - PFP, P2E, P2M -https://it.donga.com/102633/
NFT 입문 전 꼭 알아야 할 것 - https://it.donga.com/102659/
디파이(DeFI)는 무엇인가 - https://it.donga.com/102693/
'웹 3.0'은 또 무엇인가 -https://it.donga.com/102723/
프로그램 코드로 운영되는 탈중앙화 조직, DAO - https://it.donga.com/102763/
'이더리움 2.0'의 첫걸음, '더 머지(The Merge)' - https://it.donga.com/102805/
유틸리티 토큰과 STO 토큰 - https://it.donga.com/102892/
근미래의 인터넷 생태계, 웹 3.0과 메타버스 - https://it.donga.com/102941/
NFT 구매 전 알아야 할 필수 지식 - https://it.donga.com/102979/
블록체인 관련 글을 보면, 종종 '마이그레이션'이라는 용어가 나온다. 단순히 보면 마이그레이션(Migration)은 'A에서 B로 무언가가 이동'하는 것이다. 일반적으로 'NFT나 토큰들이 마이그레이션된다'라고 말한다. NFT 프로젝트인 '메타콩즈' 역시 클레이튼 체인에서 이더리움 체인으로 마이그레이션됐다.
사실 마이그레이션은 우리 주변에서도 흔히 사용되고 있다. 고개를 갸웃거리겠지만, 애플 제품 사용자라면 다들 한번씩은 써 보았을 것이다. 아이폰 사용자가 새 아이폰을 구매한 뒤 자신의 애플 아이디를 새 아이폰에 입력하면, 이전 아이폰의 배경화면이나 사용하는 앱, 송수신한 문자메시지 등이 새 아이폰으로 전부 이동된다. 이것 역시 마이그레이션이다. 하지만 블록체인에서 마이그레이션은 단순한 이동 이상의 의미가 있다. 왜 블록체인 마이그레이션을 하는 것이고, 어떤 방식으로 진행되는지 알아보자.
앞서 언급한 대로, 마이그레이션은 '이주', '이송/이동'의 뜻이며, iOS나 안드로이드 운영체계에서 좀더 나은 운영체계나 다른 새로운 운영체계로 옮겨가는 과정을 말하기도 한다. 그렇다면 왜 옮겨가는 것일까?
여러 이유가 있지만, 주로 현재 사용하는 블록체인보다 나은 환경의 블록체인 네트워크로 이동하고 있다. 여기서 나은 환경이라 하면, 데이터 저장 공간이 많거나 데이터 전송 속도가 빠른 환경이 되겠다. 해당 프로젝트의 성격을 고려해서 블록체인을 선택하는데, 블록체인 시장이 지속 개선되고 있기에 이후로도 블록체인 마이그레이션은 빈번히 일어나게 될 것이다.
일반적으로, 블록체인 쪽의 마이그레이션은 체인을 옮긴다는 의미가 제일 크다. NFT의 경우에도 토큰의 성격을 가지고 있기 때문이다. NFT를 예로 들면, 클레이튼, 이더리움, 솔라나 같은 여러 체인이 존재하고, 그 체인의 코인을 구입해 NFT를 구매하는 것이다.
만약 사용자가 많이 없는 체인이라면 그만큼 코인 순환도 자주 이뤄지지 않을 거라 NFT 구입에 어려움을 겪을 수 있다. 이 때문에 사용자들의 확장성을 높이기 위해 전 세계에 걸쳐 많이 사용되는 블록체인으로 옮기려는 것이다. 실제로 국내에서 클레이튼 체인을 사용하던 몇몇 프로젝트가 신규 이용자 확보차, 전 세계에서 많이 사용되는 이더리움 체인으로 마이그레이션하기도 했다.
앞서 말했듯, 마이그레이션은 A에서 B로 옮겨가는 것이다. 이 마이그레이션은 크게 세 가지로 나눌 수 있다. 첫번째는 '스토리지 마이그레이션'이다. 기존 블록체인에서 최신 블록체인으로 데이터를 이동하면, 다른 시스템이 데이터에 접근하는 프로세스를 좀더 빠르게 처리할 수 있다.
두번째는 '클라우드 마이그레이션'이다. 필요에 맞게 구축한 시스템(하드웨어, 소프트웨어, 애플리케이션 등)을 데이터센터에서 클라우드로 옮기거나, 하나의 클라우드에서 다른 클라우드로 데이터를 옮기는 프로세스를 말한다. 애플리케이션과 기타 비즈니스 요소를 이동하는 프로세스도 포함된다. 이를 테면, 네이버 클라우드에 저장된 데이터를 구글 클라우드로 옮기는 것과 같다.
마지막은 '애플리케이션 마이그레이션'으로, 애플리케이션 프로그램을 기존 환경에서 다른 환경으로 이동하는 프로세스다. 예로 들자면, 아이폰 사용자가 새 아이폰을 구매한 뒤 애플 아이디를 연동해, 기존 아이폰의 설정이나 데이터를 그대로 옮기는 것이다.
그렇다면 마이그레이션은 어떻게 하는 것일까? 마이그레이션은 1. 시스템 분석 2. 영향도 분석 3. 일정 계획 수립 4. 마이그레이션 5. 최적화 등 다섯 단계로 구분된다.
첫 단계인 시스템 분석에서는 요구사항과 그에 대한 환경을 분석한다. 또한 데이터 크기와 타입 등 이동할 대상의 정보에 대해서도 분석한다. 영향도 분석 단계에서는 위험 영향과 테이블(데이터베이스에 기록된 데이터 집합체) 사용과 관계 행렬에 의한 애플리케이션과 데이터베이스의 연관성을 분석한다. 이후 세번째 단계인 일정 계획을 수립하고 다음 단계인 마이그레이션을 진행한다. 마이그레이션을 진행할 때는 마이그레이션 센터를 활용한다. 이 네 단계를 모두 완료한 뒤, 마지막으로 시스템을 최적화하면 마이그레이션이 완료된다.
사용자 입장에서는 마이그레이션 다섯 단계가 그리 어렵지 않을 것 같지만, 기업에 있어 마이그레이션을 준비하는데 많은 것을 주의해야 한다. 데이터베이스 관리 시스템은 어떤 것을 사용할지, 운영 서비스 환경은 어떤 상황인지, 그리고 프로젝트 오픈 시 발생할 수 있는 사용자 과부하 문제 등을 충실히 테스트, 확인해야 한다. 마이그레이션 경험이 있는 데이터베이스 엔지니어와 개발전환 인력 역시 확보해야 하는데, 사실상 이게 가장 중요하다고 볼 수 있다.
마이그레이션 진행 전 주의사항을 인지하고 개발 인력과 여러 환경을 갖춘 뒤라도, 마이그레이션 후 커뮤니케이션 문제나 마이그레이션 도구, 데이터베이스와 시스템 간 문제 등이 발생할 수 있다. 이에 대비하기 위해 성급하게 마이그레이션을 진행할 게 아니라, 시간이 촉박하더라도 세세하게 알아보고 어떤 장비/시스템/기계를 사용할 것인지, 얼마나 많은 인원과 어떤 계획이 필요한지를 파악하는 것이 가장 중요하다고 강조한다.
글 / 클레버파트너스 박진성 대표
블록체인/암호화폐 컨설팅 전략 자문기관인 클레버파트너스를 운영 중이며, GreenStone Korea의 대표이다. 크립토 펀드 운영 및 프로젝트 컨설팅을 총괄하고 있다. 블록체인 시장 초기 ICO 전문 분석가로 활동, 거래소 엔터프라이징부터 50여개 이상의 프로젝트 컨설팅 및 엑셀러레이팅을 진행한 경력을 보유하고 있다.
정리 / IT동아 이문규 (munch@itdonga.com)