기본 콘텐츠로 건너뛰기

블록체인 거래소 모니터링시스템 구축이야기(4/?) - 데이터모델링

 

코인 거래소 모니터링시스템 구축이야기(4/?)

MongoDB 데이터 모델링

1. 상장코인 데이터베이스

  • 각 거래소에서 검색하기 위한 상장코인 코드를 조회하는 DB
  • 각 거래소마다 제공하는 데이터가 다르기 때문에 공통된 포멧을 가져가기 위한 모델링

업비트 상장 코드 조회 https://api.upbit.com/v1/market/all?isDetails=false

비트파이넥스 코드 조회 : https://api-pub.bitfinex.com/v2/conf/pub:map:currency:label


상장코인 모델링
상장 코인 모델링 ( version 0.1 )

2. 환율 데이터베이스

  • 원화와 달러간 환율을 저장
  • 해외 마켓의 경우 달러로 표현되어 있기 떄문에 원화로 변경되어 보여줄 필요성이 있음

환율정보 공공 API :https://www.koreaexim.go.kr/site/program/openapi/openApiView?menuid=001003002002001&apino=2&viewtype=C


3. 각 거래소 거래 데이터베이스

  • 빗썸, 업비트, Bitfinex 의 거래소 현재가를 1분 단위로 저장
  • 각 거래소마다 데이터 포멧이 다르기 때문에 collection 단위로 저장

업비트 현재가 API : https://api.upbit.com/v1/ticker?markets=KRW-BTC




댓글

이 블로그의 인기 게시물

Message Queue 란 무엇인가

Message Queue 란 무엇인가?? 메시지 지향 미들웨어(Meesage Oriented Middleware: MOM)은 비동기 메시지를 사용하는 다른 응용 프로그램 사이에서 데이터 송수신을 의미 MOM을 구현한 시스템을 메시지 큐(MessageQueue: MQ)라 함 Producer(sender) 가 메시지를 큐에 전송하면 Consumer(receiver) 가 처리하는 방식으로, producer 와 consumer 에 message 프로세스가 추가되는 것이 특징 메시지 큐의 장점 비동기(Asynchronous): Queue에 넣기 때문에 나중에 처리할 수 있습니다. 비동조(Decoupling): 애츨리케이션과 분리할 수 있습니다. 탄력성(Resilience): 일부가 실패 시 전체에 영향을 받지 않습니다. 과잉(Redundancy): 실패할 경우 재실행 가능합니다. 보증(Guarantees): 작업이 처리된걸 확인할 수 있습니다. 확장성(Scalable): 다수의 프로세스들이 큐에 메시지를 보낼 수 있습니다. 메시지 큐 종류 Apache ActiveMQ, Apache Kafka, Apache Qpid, Apache RocketMQ, Beanstalkd, Enduro/X, HTTPSQS, JBoss Messaging, JORAM, RabbitMQ, Sun Open Message Queue, and Tarantool 등 Apache ActiveMQ Java Message Service (JMS)를 사용하는 오픈소스 MQ Java, C, C ++, C #, Ruby, Perl, Python, PHP 등 다양한 크로스 언어 클라이언트 및 프로토콜 지원 Spring 지원으로 Spring xml config 메커니즘 이용 가능 JDBC 지원으로 DB 높은 퍼포먼스 가능 높은 퍼포먼스를 위해 클러스터링 구성 가능 Restful API 제공 단 모니터링 도구제공하지 않음 ...