“정부혁신과 블록체인” 국회토론회 박창기 강연 장정숙의원 2016년 11월 30일, 외1편

생각했던 것보다 한국에서 훨씬 활발하게 블록체인이 토론되고있음을 발견했다.


“정부혁신과 블록체인” 국회토론회 박창기 강연 장정숙의원 2016년 11월 30일

박창기 강연 “블록체인과  4차산업혁명” LG인화원 160818

Amazon S3 보다 10배 싼 클라우드 스토리지?!

SiaCoin  의 가격이 하루사이에 80% 가 치솟지 않았다면, 친구가 근래에 자주 언급했음에도 불구하고 나는 SiaCoin 을 “그냥 또하나의 알트코인” (Just Another altcoin) 으로만 간주했을 것이다.

공홈: http://sia.tech/

에서도 알 수 있지만, 그들의 슬로건은 아래와 같다:

sia_slogan

홍보하는 몇가지 키 포인트:

Amazon S3 보다 10배 싸다고 한다.

Far more affordable

Sia’s decentralized cloud is on average 10x less expensive than current cloud storage providers. Storing 1TB on Sia costs about $2 per month, compared with $23 on Amazon S3. Calculate your savings below!

다른 클라우드 저장 솔루션과의 가격비교도 홍보하고 있더라.

sia_storage_price_chart

홍보영상도 있다. 잘 만든 것 같다. 한번 볼까나.

참고로 필자는 여기까지 읽고 바로 투자를 결정했다.

오늘 가격이 이정도로 치솟은 것도 많은 사람들이 필자처럼 “무릎 치기 결정”을 해서인게 아닌가 생각해본다. 그야말로 “눈먼 투자”다.

Continue reading

TED: Blockchain is eating Wall street 외 6편

전에 <블렉체인 관련 TED 강연 3선> 이란 포스팅을 한 적이 있다.

오늘은 그것의 2탄인 셈이다. 이번에는 총 7선이다.


TED Talk: Blockchain is eating Wall street

TED Talk: How the US government is using blockchain to fight fraud

TED Talk: The Blockchain Revolution

Continue reading

DB 정규화를 하지 않는 이유

DB 정규화를 하지 않는 이유는 한마디로 성능이다.

그렇다면 DB 정규화는 왜 성능을 해치는가?

1. DB 정규화는 테이블을 많이 나누게 하고, 테이블이 맣아지면 Join 이 많아진다. 그리고 Join 은 성능에 큰 악영향을 미친다.

1.1 Join 은 테이블 락 (Lock) 을 일으키고, 테이블 락은 병렬성의 큰 적이다.

아마 이 이유가 No-SQL 이 부상하게 된 가장 주된 원인이 아닐까 생각한다.

Python 의 GIL 이랑 같은 원리.

1.2 Join 은 여러 테이블을 가로지르는 다중 Disk-seeking 을 일으킨다. 한마디로 데이터 국지화의 적이다.

컴퓨터 하드웨어와 소프트웨어에서 많은 최적화장치들의 작동근거가 데이터 국지화이다. 이 가정이 깨질 경우 데이터 액세스가 굉장히 비싸진다.

DB 정규화는 공간을 가장 절약하는 방식이다 (i). 하지만 저장공간은 저렴하다 [1].

공간을 절약하는건 당연히 죄가 아니다. 심지어 공간을 절약해야 시간도 절약되는 경우가 많다. 그리고 이것 역시 “정규화가 성능에 좋다” 라고 주장하는 사람들의 한가지 근거이다.

하지만 알고리즘이란게 어느 선에 도달한 뒤에는 불가피하게 시간과 공간 사이의 트레이드오프에 직면하게 된다.

정규화는 공간 절약의 극한에 서있다.

이는 이론적으로도 당연하게 시간을 트레이딩 할 여지가 있음을 의미하지만, 많은 실천결과들이 역시 이 결론을 뒷받침해주고 있다.

또한 위의 1.2 와 결합시켜서 살펴보면 알게 되는데, 데이터 양을 줄인다고 무조건 시간이 절약되는게 아니라, 다수의 경우 데이터 국지화가 성능에 훨씬 큰 영향을 미친다. 이것은 실천적으로도 많이들 이중화 (Redundency) 로 정규화를 타파해 성능향상을 이룩하고 있는 산업현황과도 매칭된다.

또한 이 점은 저장 매개체의 랜덤 액세스와 순서적 액세스 사이의 수량급을 초월하는 성능 gap 의 배경속에서 더욱 확대된다. 이것은 물리적인 HDD 에서 유독 두드러지지만 SSD 에서도 상황은 비슷하다.

정규화는 쓰기에 최적화되어 있다. 하지만 읽기가 훨씬 중요하다.

Continue reading

슈퍼마리오 멀티플레이어 개발 후기

coolspeed

왓 스튜디오 팀 합류 과제로 게임제작 미션을 받았다.

나는 과제로 “슈퍼마리오 멀티플레이어 게임”을 만들었다:

EnemyCD.gif

과제 결과물을 왓 스튜디오의 허락을 받고 소스코드를 Github 에 공개하였다:

https://github.com/coolspeed/MarioMultiplayer

관심 있으신 분들은 별표 하나씩 찍어 즐찾해주시길 부탁립니다.

게임 룰: 위의 GIF 움짤  그대로. 먼저 상대방을 밟는 쪽이 이긴다.

 

과제가 1차, 2차로 나뉘는데 1차에서는 싱글 플레이어 슈퍼마리오를 만들었고 2차에서는 그것을 멀티플레이어 게임으로 발전시켰다.

최종 클라 Java (Processing) 1500 줄, 서버 C# 22줄로 짜여졌다.

클라

Processing 으로 만들었다. 왜?

  1. Processing 이 좋아서. (유쾌한 시각적 프로그래밍)
  2. Unity 쓸줄 몰라서.
  3. 다른 엔진도 쓸줄 몰라서.
  4. 엔진부분이 더 재밌어서.
  5. 웹에다 배포하고 싶어서. (P5.js 를 통하여. 하지만 망했다. 그냥 일반 Processing 애플리케이션처럼 exe 파일로 빌드했다.)

서버

단순한 릴레이 서버.

big_mirror.png

넷코드

ZeroMQ 를 네트워크 라이브러리로 사용했다.

Continue reading

블록체인 관련 TED 강연 3선

블록체인이 무엇일까요? 아직 알지 못한다면 아는 것이 좋을 것이고, 안다고 해도 실제 운영 방식에 대한 자세한 설명이 도움이 될 것입니다. 돈 탭스콧이 인터넷의 두 번째 세대를 표방하며 돈과 경제, 정부와 사회를 변화시킬 잠재력을 가진 신뢰 구축 기술의 비밀을 밝힙니다.


모든 걸 바꾸게 될 분산적인 경제 제도인 블록 체인과 인사하세요. 이 복잡하고 혼란스러운 과학 기술을을 명료하게 설명하는 베티나 워버그는 인간의 역사만큼 오래된 상업과 재정 활동을 보다 흥미로운 것으로 변하게 할 블록체인(교환 가치를 위한 분산적이고 투명성이 보장되고 자동화된 제도)이 거래를 용이하게 하는 은행과 정부 같은 중앙집권적 기관에 대한 우리의 필요를 어떻게 사라지게 하는 지에 관해 설명합니다.


우리가 물건을 매매하는 방식이 바뀌고, 은행과 환전소가 없어도 되는 세상이 온다면 어떨까요? 비트코인이나 이더리움과 같은 암호화 전자 화폐가 보편화되면 미래에 이런 급격한 변화가 일어날 수 있습니다. 아직 그런 세상이 도래하진 않았지만, 이 재기 넘치는 강연을 통해 디지털 화폐 연구자 네하 나룰라는 화폐의 집단 허구에 관해 설명하면서, 지금과는 사뭇 다른 미래를 제시합니다.