[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、添加到服务器

可以了!

相关推荐
阿里云大数据AI技术20 小时前
StarRocks x Fluss x Paimon湖流一体方案:构建秒级响应、湖流一体的实时数据引擎
大数据·人工智能
Databend21 小时前
Agent 轨迹分析与归因的数据工程实践
大数据·数据库·agent
喵个咪1 天前
Go Wind UBA 拆解系列 - 架构总览:三服务、数据流与契约优先
大数据·后端·go
喵个咪1 天前
Go Wind UBA 拆解系列 - 多租户与安全:两套隔离机制的边界
大数据·后端·go
喵个咪1 天前
Go Wind UBA 拆解系列 - OLAP 与 SQL 硬核:25 个分析模型怎么落地
大数据·后端·go
喵个咪1 天前
Go Wind UBA 拆解系列 - SDK 与采集层:从浏览器到 Kafka
大数据·后端·go
QCC产品中心1 天前
MiniMax Agent 接入实测:企业查询、股权穿透与 UBO 识别(附 Prompt 模板)
大数据·mcp·金融/非金融
SelectDB2 天前
Apache Doris Python UDF:让 SQL 直接调用 Python 生态,支撑 Agent 时代复杂业务逻辑
大数据·数据库·python
ApacheSeaTunnel2 天前
当多表数据涌入,Apache SeaTunnel 如何巧妙化解主键冲突?
大数据·开源·数据集成·seatunnel·技术分享·数据同步
大大大大晴天5 天前
Hudi Metadata Table 与 Hive Sync (HMS)怎么选?
大数据