使用Apache NiFi的SoChain BitCoin,DogeCoin和LiteCoin数据REST API

本文介绍了如何利用Apache NiFi高效地处理SoChain提供的BitCoin、DogeCoin和LiteCoin的REST API数据。通过展示NiFi在获取、解析和操作JSON数据方面的优势,演示了一个在企业环境中集成加密货币数据的流程。下一步,作者计划探索将Hyperledger和Ethereum与Apache NiFi等企业技术结合的可能性。
摘要由CSDN通过智能技术生成

介绍

SoChain提供了一组快速公开,免费提供的API(不要滥用它们)来访问各种网络上的信息。

如果您需要这项工作,请捐赠

您将在这个简单的流程中看到的一件事是NiFi擅长于摄取REST并使用JSON。正如您所看到的,NiFi非常适合拆分,切碎,过滤,操作和从中提取。使用生成的可用对象,我们可以构建一个模式,我们也可以进行记录处理。 

我刚刚 在新泽西州伍德布里奇举办了一次Future of Data Princeton  Meetup,其中有一些由ChainNinja赞助的精彩演讲者。虽然这完全是关于Blockchain for Enterprise并且没有涉及加密货币,但它让我们想要研究一些加密货币数据。正如您所看到的,在Apache NiFi中操纵复杂的JSON数据,过滤,修改,路由和使用其值编写脚本是微不足道的。

在我的下一篇文章中,我正在调查Hyperledger和Ethereum,以便与Apache NiFi,Impala,Hive,Kudu,HBase,Spark,Kafka和其他企业技术集成企业解决方案。

脚步

我们从URL中读取。

我将原始文件发送到不可变的HDFS存储。

在另一个分支中,我将使用EvaluateJSONPath提取一个属性来用于获取详细记录。

$.data.blocks 

我使用该属性构建更深入的REST调用以获取最新块的详细信息。

https://chain.so/api/v2/block/BTC/${block_no} 

这是  invokeHTTP一个可编写脚本的HTTP(S)调用。这通常会派上用场。

接下来  EvaluateJSONPath,  我将提取JSON文件的所有高级属性。我希望这些记录作为主要字段。这些都是重复的。

之后,我将其下面的两个数据分组分成两个独立的分支。我会将这些内容分解为单个记录以进行解析。我也可以应用一个模式并处理这些记录组。

这是一个读取REST API并为每个调用创建唯一名称的示例。另外,请注意,处理HTTPS和HTTP都很容易。

我们可以编写的唯一文件名示例:

$ {文件名:追加( 'BTC'。):追加($ {NOW():格式( 'YYYYMMDDHHMMSS'):追加($ {} MD5):追加()} 'JSON。')}

REST URL示例:https :   //chain.so/api/v2/get_info/LTC

Apache NiFi源的价值示例。 (这些是为一个流文件获取的属性)。

属性 值
访问- 控制- 允许- 标题
Origin,Accept,Content - Type,X - Requested - With,X - CSRF - Token
访问- 控制- 允许- 方法
GET,POST
访问- 控制- 允许- 原点
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值