PHOTOLAND

한국어

Knowledge

오늘:
705
어제:
1,070
전체:
741,388

카카오뱅크 인기가 식을 줄 모릅니다. 출범 일주일만에 150만 계좌를 모으면서 대한민국 금융산업에 엄청난 파장을 일으키고 있죠. 은행산업이라는 저수지에 등장한 메기라고 비유를 합니다.

카카오뱅크는 금융산업뿐 아니라 IT업계에도 많은 시사점을 주고 있습니다. 국내 은행 중 처음으로 오픈소스 소프트웨어를 중심으로 IT인프라를 구성한 사례로 꼽힙니다. 은행은 가장 보수적으로 IT를 받아들이는 산업군입니다. 은행 IT시스템은 안정성과 데이터 정합성 등이 최우선 가치입니다.

이 때문에 은행은 현존하는 시스템 중 가장 비싸고 튼튼한 장비와 소프트웨어를 사용하는 것이 일반적입니다.

그런데 카카오뱅크는 오픈소스 소프트웨어를 선택했습니다. 오픈소스는 유연하고 확장성이 높아서 거의 모든 산업군에서 즐겨 사용되는데, 국내 은행만큼은 보수적 태도를 취해왔습니다.
 

대부분의 국내 은행은 IBM이나 HP가 공급하는 고가의 서버에 유닉스 운영체제 위에서 거래처리를 합니다. 심지어 카카오뱅크에 앞서 선보인 인터넷전문은행 케이뱅크도 유닉스 운영체제를 선택했습니다.

반면 카카오뱅크는 다소 위험을 감수하고 리눅스 운영체제를 선택했습니다. 리눅스는 이미 세계적으로 금융권에서 활용사례가 많았는데, 유독 국내 은행이 이를 받아들이지 않았습니다. 리눅스 기반의 시스템은 비용이 적게 들고 유연성과 확장성이 높다는 장점이 있습니다.

더욱 흥미로운 부분은 데이터베이스관리시스템(DBMS, 이하 DB)입니다. 카카오뱅크는 DB에도 오픈소스를 많이 이용했습니다.

DB는 모든 IT시스템 중에 가장 중요한 시스템이라고 볼 수 있습니다. 은행의 DB는 한 치의 오차도 있으면 안 되기 때문입니다. 고객의 계좌에 얼마가 있는지, 얼마나 입금됐고 얼마가 출금됐는지 완벽한 데이터 정합성이 필요합니다. 만약 A가 B에게 100만원을 송금했는데 B의 계좌 DB에 이것이 반영되지 않는다면 큰일나겠죠?
 

대부분의 은행은 오라클 DB를 사용합니다. 안정성과 성능이 검증된 DB죠. 은행 DB 시장은 오라클의 독무대입니다. IBM조차 오라클에 밀렸습니다.

구매자 입장에서는 좋은 일이 아닙니다. 선택지가 오라클밖에 없기 때문에 구매교섭력이 약합니다. 오라클은 제품을 판매하고 22%의 유지보수료를 따로 받는데, 은행들은 울며겨자먹기로 이를 받아들일 수밖에 없습니다.

카카오뱅크도 계정계 시스템에는 오라클DB를 썼습니다. 계정계 시스템은 여-수신을 비롯한 은행의 핵심 트랜잭션을 처리하는 시스템입니다.

그러나 카카오뱅크는 오라클DB 사용을 최소화했습니다. 채널계 시스템에는 MySQL이라는 오픈소스 DB를 사용했습니다. 채널계 시스템은 외부 연계 시스템으로, 지로 건강보험공단 세무 등 외부의 시스템과 은행 시스템을 연동하는 시스템입니다. ATM 등도 채널계 시스템으로 연동됩니다.
 

채널계는 계정계 시스템과 동등한 수준의 안정성을 요구하는 분야로 24시간 무정지 운영이 가능해야 합니다. 채널계 시스템 역시 미션 크리티컬(Mission Critical)하다고 볼 수 있습니다. 이런 채널계에 오픈소스 DB를 사용했다는 것은 리눅스 운영체제를 선택한 것 이상의 모험이라고 볼 수 있습니다.

시스템 구축과정에서 우여곡절도 적지 않았던 것으로 추측됩니다.

예를 들어 카카오뱅크가 처음 선택한 오픈소스 DB는 ‘마리아DB’입니다. 마리아DB는 오라클이 MySQL을 인수하자(구체적으로는 썬마이크로시스템즈를 인수) 이에 반발해 MySQL 창시자들이 새롭게 만든 오픈소스 기반의 관계형DB입니다. MySQL과 같은 소스코드에서 시작됐기 때문에 사실상 같은 소프트웨어라고 볼 수도 있습니다.

그런데 마리아DB로는 해결되지 않는 문제가 있었습니다. 고가용성이었습니다. 일반적으로 중요한  DB 서버는 이중화합니다. 하나가 셧다운돼도 다른 서버가 이어받아서 트랜재션을 처리하기 위해섭니다. 이를 위해서는 두 서버가 같은 데이터를 가지고 있어야 하고,  A서버에 데이터가 변경되면 B 서버에도 이것이 즉시 반영돼야 합니다.

오라클은 이를 가능케하는 RAC (Real Application Cluster)라는 기능이 있고, 이것이 오라클이 시장을 평정한 배경이었습니다.

그런데 마리아DB로 이런 구성이 어렵다고 카카오뱅크 측은 결론을 내렸습니다. 대신 카카오뱅크는 대안으로 MySQL과 페르코나를 선택했습니다. 페르코나는 MySQL을 전문적으로 기술지원하는 회사입니다. 결과적으로 카카오뱅크는 MySQL의 반동기화 복제(Semi-sync replication)와 MHA(Master High Availability)로 오라클 DB RAC와 유사한 역할을 하도록 구성했고, 현재 별 무리없이 작동하고 있습니다.
 

마지막으로 카카오뱅크의 또 하나의 특징은 코어뱅킹 시스템이 자바로 개발됐다는 점입니다. 대부분의 국내 코어뱅킹 시스템은 코볼이나 C언어로 개발돼 있습니다.

그러나 카카오뱅크는 좀더 유연한 자바를 선택했습니다. 카카오뱅크가 직접 개발한 것은 아니고 전북은행의 코어뱅킹 시스템을 이식했습니다. 전북은행은 국내 최초로 자바 기반 코어뱅킹 시스템을 구축한 회사입니다. 개발은 LG CNS가 담당했습니다.
 
http://dongascience.donga.com/news/view/19271
조회 수 :
33530
등록일 :
2017.08.11
17:57:22 (*.131.135.244)
엮인글 :
http://www.potoland.net/xe/358007/a1d/trackback
게시글 주소 :
http://www.potoland.net/xe/358007
문서 첨부 제한 : 0Byte/ 2.00MB
파일 제한 크기 : 2.00MB (허용 확장자 : *.*)
옵션 :
:
:
:
:
List of Articles
번호 제목 글쓴이 날짜 조회 수sort
46 윈도우7 부팅시 사용자 계정 로그온 뜨는거 없애기 셀라비 2014-01-17 19799
45 에이다 러브레이스 Ada Lovelace LeeKyoo 2013-12-23 21483
44 2014년 주목받을 ICT 10대 기술 LeeKyoo 2013-12-13 21868
43 시작-실행 [5] 셀라비 2013-12-19 22971
42 ‘비트윈’ 셀라비 2013-12-20 23254
41 LTE-A 이규 2013-11-29 23593
40 ‘선탑재’ 앱 셀라비 2014-01-24 23743
39 01x 역사 속으로 이규 2013-12-03 24801
38 웹체크 툴바 다운로드 홍석균 2012-11-07 25468
37 방송산업발전종합계획 LeeKyoo 2013-12-11 25711
36 LINE 이규 2013-12-01 25999
35 1TB SSD 셀라비 2013-12-11 26072
34 비트코인 이규 2013-12-01 26229
33 폴더 암호 만들기 [4] 이규 2013-10-20 26272
32 삼성전자AS 이규 2013-11-30 26448
31 Internet Explorer 11 [8] 이규 2013-11-24 26831
30 스마트폰으로 cctv 만들기 [1] file leekyoo 2016-04-20 26981
29 프로터 립 판매자 카페입니다. 셀라비 2013-04-28 27225
28 지난 26일 자정 MS '윈도8' 전세계 동시 출시…UI 전면 개편 셀라비 2012-10-28 27656
27 초당 1Gbps급 속도 이규 2013-12-04 27746