前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >MarsTalk | 使用Zeppelin和TiSpark进行数据分析

MarsTalk | 使用Zeppelin和TiSpark进行数据分析

作者头像
HelloMin
发布2022-08-11 14:31:26
4200
发布2022-08-11 14:31:26
举报
文章被收录于专栏:Pair Programming

前言:

本文相当硬核,主要是Mars工作中需要用到的一些东东,反正我没看懂,需要的同学,对pingCAP及其产品有兴趣的同学,拿走不谢;看不懂的同学,没事周六的文章总归是说人话的...

本文主要介绍一下如何使用TiSpark和Zeppelin进行数据可视化分析。

首先介绍几个概念:

TiDB:一款定位于在线事务处理/在线分析处理的融合型数据库产品,实现了一键水平伸缩,强一致性的多副本数据安全,分布式事务,实时 OLAP 等重要特性。同时兼容 MySQL 协议和生态,迁移便捷,运维成本极低。

TiSpark: Spark上访问TiDB的插件,可以进行复杂的OLAP查询,TiSpark支持将Spark算子下推到TiKV,极大加速了计算速度。

Apache Zeppelin: 一个让交互式数据分析变得可行的基于网页的notebook,Zeppelin提供了数据可视化的框架。

Step0: 部署TiSpark和Zeppelin

本地测试可以使用Docker一键部署,详见TiSpark with Zeppelin Docker Compose。

代码语言:javascript
复制

git clone https://github.com/marsishandsome/tispark-with-zeppelin-docker-compose
cd tispark-with-zeppelin-docker-compose
./build.sh
./start.sh

Step1: 导入tpch测试数据

打开zeppelin web界面http://127.0.0.1,新建一个Notebook,并运行下面的命令将tpch测试数据导入到TiDB (%sh 表示执行引擎是/bin/sh)

代码语言:javascript
复制

%sh
bash /opt/tispark-tests/loaddata.sh


Step2: 获取TiSpark版本


运行下面的语句获取TiSpark版本 (%spark表示执行引擎是spark)

代码语言:javascript
复制
%spark
sc.getConf.get("spark.sql.extensions")
spark.sql("select ti_version()").show(false)

Step3: Select数据

运行下面的语句进行简单的select语句

代码语言:javascript
复制

%spark
spark.sql("use tpch_test")
spark.sql("select count(*) from lineitem").show

Step4: 运行tpch01 sql并作图

运行下面的语句进行tpch01 query执行 (%sql表示执行引擎是spark sql)

代码语言:javascript
复制

%sql
select
    l_returnflag,
    l_linestatus,
    sum(l_quantity) as sum_qty,
    sum(l_extendedprice) as sum_base_price,
    sum(l_extendedprice * (1 - l_discount)) as sum_disc_price,
    sum(l_extendedprice * (1 - l_discount) * (1 + l_tax)) as sum_charge,
    avg(l_quantity) as avg_qty,
    avg(l_extendedprice) as avg_price,
    avg(l_discount) as avg_disc,
    count(*) as count_order
from
    lineitem
where
    l_shipdate <= date'1998-12-01' - interval '90' day
group by
    l_returnflag,
    l_linestatus
order by
    l_returnflag,
    l_linestatus

可以基于返回的数据,在zeppelin界面上进行进一步作图

Min:结束!就这么结束了,连个招呼都不打的!

这就是和钢铁直男一起做公众号的结果!

Schönes Wochenende!

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-04-24,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Pair Programming 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • Step0: 部署TiSpark和Zeppelin
  • Step1: 导入tpch测试数据
  • Step4: 运行tpch01 sql并作图
相关产品与服务
容器镜像服务
容器镜像服务(Tencent Container Registry,TCR)为您提供安全独享、高性能的容器镜像托管分发服务。您可同时在全球多个地域创建独享实例,以实现容器镜像的就近拉取,降低拉取时间,节约带宽成本。TCR 提供细颗粒度的权限管理及访问控制,保障您的数据安全。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档