데이터베이스 통합을 위한 MultiChain 피드 PlatoBlockchain 데이터 인텔리전스. 수직 검색. 일체 포함.

데이터베이스 통합을위한 멀티 체인 피드

블록 체인에서 더 넓은 세상으로 데이터 가져 오기

2015 년에 처음으로 출시 된 MultiChain의 첫 공개로, 우리는 놀라운 방향에서 블록 체인 애플리케이션에 대한 관심을 보았습니다. 우리는 원래 디지털 자산의 발행, 전송 및 보관을 가능하게하기 위해 MultiChain을 설계했지만 점점 더 많은 사용자가 데이터 지향 응용 프로그램에이를 사용하는 데 관심이있었습니다.

이러한 사용 사례에서 블록 체인의 목적은 본질적으로 재정적 일 필요는없는 범용 정보의 저장 및 검색을 가능하게하는 것입니다. 일반 데이터베이스가 아닌 블록 체인을 사용하려는 동기는 데이터베이스를 호스팅하고 유지하기 위해 신뢰할 수있는 중개자에 의존하지 않는 것입니다. 상업적, 규제 적 또는 정치적 이유로 데이터베이스 사용자는이를 중앙 집중식 책임이 아닌 분산 된 형태로 원합니다.

스트림의 진화

이 피드백에 대한 응답으로 2016 년 소개 멀티 체인 스트림 (MultiChain streams) : 블록 체인에서 일반 데이터의 저장, 인덱싱 및 검색을위한 간단한 추상화를 제공합니다. 체인은 임의의 수의 스트림을 포함 할 수 있으며, 각 스트림은 특정 주소에 의해 쓰기가 제한 될 수 있습니다. 각 스트림 항목은 게시자의 주소와 향후 검색을위한 선택적 키로 태그가 지정됩니다. 각 노드는 각 스트림을 구독할지 여부를 독립적으로 결정하여 키, 게시자, 시간, 블록 또는 위치별로 빠른 검색을 위해 해당 항목을 실시간으로 인덱싱 할 수 있습니다. 스트림은 MultiChain 사용자에게 즉각적인 타격을 주었고 다른 엔터프라이즈 블록 체인 플랫폼과는 크게 차별화되었습니다.

2017 년에 개울은 extended 기본 JSON 및 유니 코드 텍스트, 항목 당 여러 키 및 트랜잭션 당 여러 항목을 지원합니다. 이 마지막 변경으로 고급 하드웨어에 초당 10,000 개가 넘는 개별 데이터 항목을 게시 할 수 있습니다. 그런 다음 2018 년에 대한 완벽한 지원을 추가했습니다 오프 체인 데이터일부 데이터의 해시 만 온 체인으로 게시되고 데이터 자체는 원하는 노드에 오프 체인으로 전달됩니다. 그리고 그해 말에 우리는 MultiChain 2.0 Community를 스마트 필터, 맞춤 자바 스크립트 코드에서 스트림 항목의 임의 유효성 검사를 수행 할 수 있습니다.

2019 년에는 대규모 고객을위한 상용 버전의 MultiChain 2.0 Enterprise에 초점을 맞췄습니다. 첫번째 엔터프라이즈 데모 스트림에서 오프 체인 데이터를 활용하여 읽기 권한, 암호화 된 데이터 전달, 개별 항목의 선택적인 검색 및 제거가 가능합니다. 항상 그렇듯이 기본 복잡성은 권한 및 스트림 항목과 관련된 간단한 API 세트 뒤에 숨겨져 있습니다. 스트림을 통해 개발자의 목표는 지속적으로 개발자가 애플리케이션 데이터에 집중하고 블록 체인이 뒤에서 실행되는 것에 대해 걱정하지 않도록하는 것이 었습니다.

데이터베이스 딜레마

멀티 체인 스트림이 계속 발전함에 따라 우리는 끊임없는 딜레마에 직면했습니다. 스트림의 데이터를 읽고 분석하기 위해 MultiChain은 본격적인 데이터베이스가되는 길을 따라야합니까? JSON 필드 인덱싱, 최적화 된 쿼리 및 고급보고 기능을 제공해야합니까? 그렇다면 관계형 (MySQL 또는 SQL Server 등), NoSQL (MongoDB 또는 Cassandra), 검색 (Elastic 또는 Solr), 시계열 (InfluxDB) 또는 인 메모리 (SAP HANA)와 같은 데이터베이스 패러다임을 사용해야합니까? 결국, 이러한 각 접근 방식에 적합한 블록 체인 사용 사례가 있습니다.

우리가 고려한 한 가지 옵션은 현재 임베디드 LevelDB와 이진 파일의 조합 대신 외부 데이터베이스를 MultiChain의 기본 데이터 저장소로 사용하는 것입니다. 이 전략은 체인 코어 (단종), 포스트 체인 (아직 공개되지 않음) 사용 가능 옵션으로 Hyperledger Fabric에서. 그러나 궁극적으로 우리는 외부 프로세스에 의존 할 수있는 위험 때문에이 접근법을 반대하기로 결정했습니다. 데이터베이스 연결이 끊어 졌거나 누군가 데이터 저장소에서 복잡한 쿼리를 실행하고 있기 때문에 블록 체인 노드가 정지되는 것을 원하지 않습니다.

고려해야 할 또 다른 요소는 기술 및 통합 불가지론입니다. 여러 조직에 걸친 블록 체인 네트워크에서 각 참가자는 데이터베이스 기술과 관련하여 고유 한 환경 설정을 갖습니다. 그들은 이미 그들의 요구에 맞는 플랫폼에 구축 된 응용 프로그램, 도구 및 워크 플로를 가지고있을 것입니다. 따라서 특정 데이터베이스를 선택하거나 몇 가지 옵션을 제공 할 때도 일부 사용자는 불행하게됩니다. 각 블록 체인 참가자가 다양한 Linux 버전에서 노드를 실행할 수있는 것처럼 선택한 데이터베이스와 통합 할 수 있어야합니다.

멀티 체인 피드 소개

오늘 우리는 데이터베이스 통합 접근법 인 멀티 체인 피드를 발표하게되어 기쁩니다. 피드는 외부 프로세스에서 읽기위한 하나 이상의 블록 체인 스트림과 관련된 이벤트의 실시간 디스크 상 이진 로그입니다. 우리는 또한 오픈 소스를 제공하고 있습니다 멀티 체인 피드 어댑터 피드를 읽고 해당 컨텐츠를 Postgres, MySQL 또는 MongoDB 데이터베이스 (또는 한 번에 여러 개)에 자동으로 복제 할 수 있습니다. 어댑터는 Python으로 작성되었으며 자유 라이센스가 있으므로 추가 데이터베이스를 지원하거나 데이터 필터링 및 변환을 추가하도록 쉽게 수정할 수 있습니다. (우리는 또한 피드 파일 형식 다른 언어로 파서를 작성하려는 사람들을 위해)

멀티 체인 피드 다이어그램

이벤트를 피드에 복제하기 위해 노드가 스트림을 구독하지 않아도됩니다. 이를 통해 MultiChain의 내장 스트림 인덱싱을 완전히 우회하여 시간과 디스크 공간을 절약 할 수 있습니다. 피드는 또한 오프 체인 데이터의 검색 및 제거를 반영하며 체인에 새 블록이 도착했음을보고 할 수 있습니다. 디스크 공간을 절약하기 위해 피드에 기록되는 이벤트와 각 이벤트에 기록되는 필드를 정확하게 제어 할 수 있습니다. 또한 피드 파일은 매일 교체되며 처리 후 파일을 제거하는 간단한 제거 명령이 있습니다.

멀티 체인 피드가 프로세스간에 또는 네트워크를 통해 스트리밍되지 않고 디스크에 기록되는 이유는 무엇입니까? 데이터베이스 다운 타임, 시스템 충돌, 전원 손실 등에 탄력적 인 매우 안정적인 복제 로그 역할을하기를 원하기 때문입니다. 디스크 파일을 사용하여 내구성을 보장하고 대상 데이터베이스를 비동기 적으로 업데이트 할 수 있습니다. 어떤 이유로이 데이터베이스가 오버로드되거나 연결이 끊어지면 MultiChain이 중단없이 계속 작동 할 수 있으며 일단 정상 상태로 돌아 오면 데이터베이스가 따라 잡습니다.

피드 시작하기

피드는 MultiChain Enterprise의 최신 데모 / 베타에 통합되어 있습니다. 다운로드 할 수 있습니다 지금. 에 대한 설명서를 읽고 시작하십시오. 멀티 체인 피드 어댑터, 또는 피드 관련 API. 우리는 당신의 의견을 들으십시오 이 기능과 향후 확장 방법에 대해

피드가 릴리스되면 MultiChain Enterprise 버전 2.0이 완성되었습니다. 다운로드 및 설치 Community 에디션과 Enterprise 에디션을 완전히 비교하려면 앞으로 몇 달 동안 테스트 및 최적화를 완료하고 1 분기 말에 생산 준비가 완료 될 것으로 예상합니다. 한편, MultiChain Enterprise 라이센싱 또는 가격에 대한 정보는 언제든지 문의하십시오. 연락.

의견을 적어주세요 링크드 인에.

출처 : https://www.multichain.com/blog/2020/02/multichain-feeds-for-database-integration/

타임 스탬프 :

더보기 멀티 체인