[FineReport]安装与使用(连接Hive3.1.2)

一、安装(对应hive3.1.2)

注:服务器的和本地的要同时安装。本地是测试环境,服务器的是生产环境

1、服务器安装

1、下载

免费下载FineReport - FineReport报表官网

向下滑找到

2、解压

bash 复制代码
[root@ck1 /home/data_warehouse/software]# tar -zxvf tomcat-linux.tar.gz -C ../module/
[root@ck1 /home/data_warehouse/module]# chmod 777 tomcat-linux

3、在home/data_warehouse/module/tomcat/webapps/webroot/WEB-INF/lib下加入下载的包

[平台]Hadoop Hive数据连接- FineReport帮助文档 - 全面的报表使用教程和学习资料

解压,把里头的jar全放进去(这个适用Hive2版本的包,对于Hive3也是好用的)

4、配置文件

bash 复制代码
[root@ck1 /home/data_warehouse/module/tomcat/conf]# vim server.xml 

第40行,改一下端口

5、启动

bash 复制代码
[root@ck1 /home/data_warehouse/module/tomcat/bin]# ./startup.sh 

查看服务器日志

bash 复制代码
[root@ck1 /home/data_warehouse/module/tomcat/logs]# tail -200f catalina.out

注:停止:shutdown.sh

6、初始化

访问并设置密码 http://ck1:2333/webroot/decision

选择内置数据库即可

7、创建hive连接

测一下,通了就可以了 。记得保存

2、本地安装

1、安装

免费下载FineReport - FineReport报表官网

向下翻

2、Hive驱动,下载这个

[平台]Hadoop Hive数据连接- FineReport帮助文档 - 全面的报表使用教程和学习资料

放到这里就行了

3、连接hive

使用的是这个app

创建链接

二、使用(在服务器上查数据)

需求:我有一张表dws.dws_news_aggre这表有21列,我想这个21列全展示出来,并且仅展示10000条。并对其中的19列做一个查询框,方便查询。

1、在客户端处理

1、添加数据集

sql 复制代码
select * from dws.dws_news_aggre 
where 1 = 1
${IF(len(股票代码)=0,"","AND scode = '" + 股票代码 + "'")}
${IF(len(公司简称)=0,"","AND coname = '" + 公司简称 + "'")}
${IF(len(行业名称)=0,"","AND industry = '" + 行业名称 + "'")}
${IF(len(行业代码)=0,"","AND indcode = '" + 行业代码 + "'")}
${IF(len(新闻ID)=0,"","AND newsid = '" + 新闻ID + "'")}
${IF(len(报道时间)=0,"","AND reptime = '" + 报道时间 + "'")}
${IF(len(报道媒体)=0,"","AND repmedia = '" + 报道媒体 + "'")}
${IF(len(报道媒体所在地区mediarea)=0,"","AND mediarea = '" + 报道媒体所在地区 + "'")}
${IF(len(来源媒体)=0,"","AND sourcemed = '" + 来源媒体 + "'")}
${IF(len(新闻情感)=0,"","AND newsemot = '" + 新闻情感 + "'")}
${IF(len(是否原创)=0,"","AND orirep_dum = '" + 是否原创 + "'")}
${IF(len(采集网址)=0,"","AND url = '" + 采集网址 + "'")}
${IF(len(正文句子数)=0,"","AND senten_num = '" + 正文句子数 + "'")}
${IF(len(标题是否提及)=0,"","AND title_mentioned = '" + 标题是否提及 + "'")}
${IF(len(正文提及句子数)=0,"","AND codesent_num = '" + 正文提及句子数 + "'")}
${IF(len(正文提及次数)=0,"","AND codecontent_num = '" + 正文提及次数 + "'")}
${IF(len(company_num提及全部公司数)=0,"","AND company_num = '" + 提及全部公司数 + "'")}
${IF(len(提及全部公司句子数)=0,"","AND allcodesent_num = '" + 提及全部公司句子数 + "'")}
${IF(len(全部公司提及次数)=0,"","AND allcode_content_num = '" + 全部公司提及次数 + "'")}
${IF(len(来源)=0,"","AND 来源 = '" + 来源 + "'")}
limit 10000


说明:
${IF(len(股票代码)=0,"","AND scode = '" + 股票代码 + "'")}
股票代码为字段scode显示的中文名
这句其实是
if(len(scode)=0,"",scode) +"'"是字符串拼接一个单引号

字符串需要拼接单引号(我的这些字段全是字符串类型的),数值类型的则不需要

选择确定

2、把数据放到表格上展示

1)用鼠标选中第一列,按住shitf再选中最后一列

2)拖进来

选择从左到右

3、调整

1)原来是group by ,该成汇总(展示明细)

单击第一列

调整为汇总

2)添加边框

3)添加表头:在行首添加一行,填写表头名即可

4)设置固定行高,不然会很丑

5)设置一页显示所有列

如果这样不行的话,就

6)调整颜色

7)预览一下

4、导入筛选文本框

编辑

点击全部添加

编辑为文本框,选中扳手,再选择第一个空的

可以通过圈选和拖动调节位置!

2、在服务器展示

1、放客户端生成的文件

把客户端做好的以.cpt为后缀的文件传到服务器的:

/home/data_warehouse/module/tomcat_bak/webapps/webroot/WEB-INF/reportlets目录下

2、添加到服务器

可以了!

相关推荐
白鲸开源26 分钟前
DSIP-91提案解读:简化工作流调试和发布的方案,等你来探讨!
大数据
C++ 老炮儿的技术栈3 小时前
VSCode -配置为中文界面
大数据·c语言·c++·ide·vscode·算法·编辑器
白鲸开源3 小时前
SQL Server CDC 机制全解:如何用 SeaTunnel 构建高效实时数据同步方案
大数据
小巫程序Demo日记4 小时前
Spark简介脑图
大数据·笔记·spark
武子康4 小时前
大数据-14-Hive HQL 表连接查询 HDFS导入导出 逻辑运算 函数查询 全表查询
大数据·后端·apache hive
春马与夏4 小时前
Spark on yarn的作业提交流程
大数据·分布式·spark
XiaoQiong.Zhang4 小时前
Spark 性能调优七步法
大数据·分布式·spark
ApacheSeaTunnel4 小时前
实测提速 60%!Maven Daemon 全面加速 SeaTunnel 编译打包效率
大数据·开源·数据集成·seatunnel·技术分享·maven daemon
哲讯智能科技1 天前
苏州SAP代理商:哲讯科技助力企业数字化转型
大数据·运维·人工智能
Edingbrugh.南空1 天前
Apache Iceberg与Hive集成:分区表篇
大数据·hive·hadoop