drill apache

Apache Drill有一个隐藏的瑰宝:易于使用的REST接口。 该API可用于查询,分析和配置Drill引擎。

在此博客文章中,我将解释如何使用Brilled Contrib使用Drill REST API创建ascii仪表板。

ASCII仪表盘如下所示:

先决条件

  • Node.js
  • Apache Drill 1.2
  • 对于此帖子,您将在此处使用SFO Passengers CSV文件。
    • 在本地下载此文件,将文件解压缩并将CSV放入一个文件夹中,该文件夹可使用Drill中的以下路径访问: dfs.data.`/airport/*.csv`

注意:我仍在使用Apache 1.2来允许在MapR集群的上下文中执行此示例。

查询和查看

在Drill 1.2中,不会自动分析CSV标头。 (这是1.3的新功能之一:在文档中查找extractHeader )。

为简单起见,请删除CSV的第一行。

基本查询如下所示:

现在,我们使用以下列创建一个视图:( 不要设置任何限制!

因此,您现在可以在查询中使用该视图:

使用REST API

现在您有了查询,您可以使用REST API通过HTTP将数据作为JSON文档检索。 打开一个终端并运行以下curl命令:

返回的JSON文档如下所示:

如您所见,它非常简单:

  • 列出列的第一个JSON属性
  • 行列表,作为数组中的JSON文档。

使用Node.js和Blessed Contrib创建图

让我们创建一个节点应用程序。

首先,您必须包括:

  • request :调用REST API
  • blessed :获得丰富的Terminal API
  • blessed-contrib :用于仪表板

然后创建一个screen和一个bar从甜菜的Contrib。

因此,您的Javascript文件的标题如下所示:

因此,在这里我们定义了一个bar char,它将填充列和行。 为此,我们需要一个查询,让我们使用每年的乘客数量,如下所示:

完整的Bar Chat应用程序如下所示:

  • 第15-17行包含Drill REST API使用的查询对象
  • 第26-38行包含来自HTTP调用的回调,结果值存储在数据对象中(第33-34行),然后在条形图中设置(第36行)

运行“仪表板”

该应用程序在您的终端中显示一个简单的条形图。 现在让我们创建一个更丰富的仪表板。

完整的仪表板

Bless-Contrib节点程序包允许开发人员创建丰富的仪表板,该仪表板可聚合多个图形并可以自动刷新,如本文顶部的截屏所示。

您可以在此Github存储库中找到一个简单的仪表板,将其克隆后,只需运行:(确保您的视图名为“ airport_data_view'

您甚至可以更改CSV文件,例如添加新的月份,右侧的折线图将自动刷新。

注意:此仪表板示例非常基础,只是一个简单的示例,说明了如何在node.js应用程序中使用Drill REST API

翻译自: https://www.javacodegeeks.com/2015/12/using-apache-drill-rest-api-build-ascii-dashboard-node.html

drill apache

drill apache_使用Apache Drill REST API通过Node构建ASCII仪表盘相关推荐

  1. 使用Apache Drill REST API通过Node构建ASCII仪表板

    Apache Drill有一个隐藏的瑰宝:易于使用的REST接口. 该API可用于查询,分析和配置Drill引擎. 在此博客文章中,我将说明如何使用Brilled Contrib使用Drill RES ...

  2. drill apache_使用Apache Drill深入研究当今的大数据

    drill apache 自2014年9月首次提供Beta版以来, Apache Drill一直在获得广泛的用户采用和社区动力.2015年5月发布了Drill的通用版本-Drill 1.0,此后大量客 ...

  3. drill apache_使用Apache Drill对混合模式数据进行SQL查询

    drill apache 您可能已经听过以下声明: Apache Drill可以即时进行模式发现. 这是什么意思,为什么对您来说很重要? SQL具有强大的业务分析功能,但是大数据设置中的挑战在于,SQ ...

  4. 实时查询引擎 - Apache Drill 介绍与应用

    1. Drill是什么   Apache drill是什么,脱去华丽的外衣,Apache Drill是一个能够对大数据进行实时的分布式查询引擎,目前它已经成为Apache的顶级项目.Drill是开源版 ...

  5. drill apache_如何使用Apache Drill分析高度动态的数据集

    drill apache 当今的数据是动态的,并由应用程序驱动. 由诸如Web /社交/移动/ IOT等行业趋势驱动的新业务应用时代的增长正在生成具有新数据类型和新数据模型的数据集. 这些应用程序是迭 ...

  6. drill apache_大数据SQL:Apache Drill查询执行功能概述–白板演练

    drill apache 在本周的白板演练中,MapR Technologies产品管理高级总监Neeraja Rentachintala概述了开源Apache Drill如何在大型数据集上实现交互式 ...

  7. 如何指南:Apache Drill入门

    Apache Drill是一种引擎,可以连接到许多不同的数据源,并为它们提供SQL接口. 它不仅是想跳入任何复杂事物的SQL接口,而且是一个功能强大的接口, 其中包括对许多内置函数和窗口函数的支持. ...

  8. Apache Drill:如何创建新功能?

    Apache Drill允许用户使用ANSI SQL探索任何类型的数据. 这很棒,但是Drill的作用远远不止于此,它允许您创建自定义函数来扩展查询引擎. 这些自定义功能具有任何Drill基本操作的所 ...

  9. Apache Drill学习

    简介 Apache Drill is a low latency distributed query engine for large-scale datasets, including struct ...

最新文章

  1. setPreferredSize和setSize的区别及用法
  2. javax.xml.transform.TransformerConfigurationException: Could not compile stylesheet
  3. JavaScript放头部不执行的情况(针对新手)
  4. python中对数组合并的方法
  5. 移植.NET Core计划,整合各平台变得更简单了!
  6. c语言排序方法有哪几种?
  7. 是Dubbo不香了吗?阿里为啥又搞一套Spring Cloud Alibaba?
  8. 网页中怎样制作虚线表格
  9. Spark 调优 ——cache(persist)与 checkpoint
  10. kafka 心跳参数
  11. github+hexo搭建博客(一)
  12. 基于Windows Azure 搭建基于SharePoint 2010 Intranet、Extranet、Internet (2): 创建并发布SharePoint Intranet站点...
  13. diff git 代码实现_Git比对文件之间的差异
  14. 方立勋_30天掌握JavaWeb_回顾复习
  15. 孤独的根号三 (Missing NUMBER)
  16. ecu的c语言编程,ecu中的程序是如何编写的
  17. 基于微信小程序音乐播放器的设计与实现毕业设计源码271156
  18. VM虚拟机安装无法打开注册表项及虚拟网卡消失导致网络出错等问题
  19. 图像处理学习笔记(一)
  20. 小型温控系统c语言程序,pid算法温度控制c语言程序 - 全文

热门文章

  1. 模版:线段树合并+线段树分裂
  2. 判断整除(opj)(动态规划)
  3. P7097-[yLOI2020]牵丝戏【dp】
  4. jzoj4248-n染色【数学,快速幂】
  5. 【数学】拉格朗日插值(luogu 4781/金牌导航 拉格朗日插值-1)
  6. HDU6223 - Infinite Fraction Path
  7. 动态规划训练13 [Catch That Cow poj3278]
  8. 阿里巴巴对Java编程【异常处理】的规约
  9. jvm系列(九):如何优化Java GC
  10. 虚拟机和linux的安装