您可以通过FineBI连接云原生数据仓库 AnalyticDB MySQL 版, 以可视化的形式帮助您进行多样数据管理,例如过滤、分组汇总、新增列、字段设置、排序等,极大的提升了数据整合的便利性和效率。
前提条件
配置外接数据库MySQL
如果在此之前您已经安装并使用过FineBI,则可跳过如下步骤直接连接AnalyticDB for MySQL集群。详细步骤,请参见连接AnalyticDB。
打开FineBI。
单击服务器地址,按照系统提示进行账号设置。
单击下一步,选择数据库,单击外部数据库中的配置数据库。
在外接数据库配置页面,按照页面提示进行参数配置。
说明此处应填写MySQL数据库的连接信息,而不是AnalyticDB for MySQL数据库连接信息。
参数
说明
数据库类型
选择MySQL。
驱动
选择
com.mysql.jdbc.Driver
。数据库名称
设置被导入FineBI元数据的数据库名。也可以新建一个数据库,例如finedb,FineBI连接MySQL服务器后自动执行
create database finedb;
。主机
MySQL服务器地址,可以是本机或者远程服务器地址。
端口
MySQL的端口号,通常为3306。
用户名
在MySQL服务器中创建的用户名。
密码
用户名对应的密码。
数据库连接URL
系统自动生成连接URL。
完成上述参数配置后,单击启用新数据库,开始导入FineBI元数据。
FineBI元数据导入成功后,单击登录,登录至MySQL服务器。
连接AnalyticDB
打开FineBI,单击左侧导航栏中的 。
在数据库连接页面,填写AnalyticDB for MySQL数据库的连接信息。
参数
说明
数据连接名
为数据库连接取一个名字,便于后续管理。
驱动器
选择
com.mysql.jdbc.Driver
。数据库名称
AnalyticDB for MySQL中的数据库名称。
主机
AnalyticDB for MySQL集群的外网地址或者VPC地址。
您可以在集群信息的网络信息区域查看连接地址和端口信息,详情请参见连接地址。
端口
端口号,默认为3306。
用户名
AnalyticDB for MySQL集群中创建的账号:
高权限账号。
普通账号。
密码
用户名对应的密码。
完成上述参数配置后,单击测试连接进行连通性测试,系统提示测试成功后,单击页面右上角的保存即可。
添加表
单击左侧导航栏中的AnalyticDB for MySQL链接,选择表的种类,将数据集添加进数据决策系统,进行后续的数据分析和仪表板展示。 ,选择之前配置的
数据库表:即直接添加AnalyticDB for MySQL中的表。
SQL数据集:通过执行SQL生成需要分析的数据集。
自助数据集:可以在数据库表或SQL数据集的基础上进行添加自助数据集等数据加工操作。
选择基表字段后,进行过滤、分组汇总、新增列、合并等操作。
示例
通过研究用户消费数据,将不同商品之间进行关联,并挖掘二者之间联系的分析方法,称为购物篮分析。本示例将演示如何从建表、导数据开始,通过AnalyticDB for MySQL使用FineBI制作购物篮分析仪表盘。
下载集团商品销售总表示例数据。
在AnalyticDB for MySQL中建表。
选择数据分布均匀的一列做为分布键,数据类型为时间的一列做为分区键。更多详情,请参见表结构设计。
观察集团商品销售总表中的几列数据,按单据编号分布较随机,且购物篮分析中,会用到单据编号做JOIN,因此用单据编号做分区键;用日期做二级分区,由于不再导入数据,在这里选择lifecycle为100。
建表语句如下:
Create Table `demo_sales` ( `日期` date, `城市` varchar, `单据编号` varchar, `门店名称` varchar, `商品类别` varchar, `商品名称` varchar, `省份` varchar, `成本额` double, `毛利额` double, `数量` bigint, `销售额` double ) DISTRIBUTED BY HASH(`单据编号`) PARTITION BY VALUE(`日期`) LIFECYCLE 100 INDEX_ALL='Y' STORAGE_POLICY='COLD' COMMENT='集团商品销售总表'
建好表后,通过kettle把下载到本地的Excel导入AnalyticDB for MySQL。
kettle使用文档请参见通过Kettle导入至数仓版。
导入完成后,执行
select count(*) from demo_sales
,可以看到有40514条数据。
在FineBI中创建自助数据集。
在导航栏中选择
,先添加一个业务包命名为adb
。在业务包下新建自助数据集,并在选字段时选中
AnalyticDB连接_demo_sales
,即AnalyticDB for MySQL中demo_sales
这张表的全部字段。
参考FineBI中的文档添加数据,并最终生成仪表盘。更多详情,请参见购物篮分析。
常见问题
初始化时没有选择外接数据库,初始化后想配置外接数据库
处理方法:
进入数据决策系统,单击
,在常规页签,单击待配置。输入实际数据库相应的信息,配置外接数据库。
配置完成后,单击启用新数据库。
配置外接MySQL数据库,导入数据失败
处理方法:
检查版本号和编码方式。具体操作,请参见 配置外接数据库,目前FineBI支持MySQL 5.x版本。
检查外接MySQL数据库是否使用utf8(
– UTF-8 Unicode
)编码为字符集排列规则,或新建一个utf8编码的数据库create database finedb character set utf8
。
配置外接数据库为AnalyticDB,连接失败
处理方法:外界数据库需要配置本地MySQL,而不是AnalyticDB for MySQL。
数据准备标签下没有抽取数据和实时数据的选项
处理方法:FineBI官网提供的版本不包含直连引擎,需要联系FineBI技术支持获取对应版本。更多详情,请参见 处理方法。
数据库与BI数据不同步
处理方法:更多详情,请参见数据库与 BI 数据不同步。
更新数据后没有结果
处理方法:单行没有结果可能是该行的计算结果为null;若整列没有结果,如果是列上有函数,可能是该函数在AnalyticDB for MySQL中不兼容,请联系AnalyticDB for MySQL技术支持确认。
预览数据或保存数据失败
处理方法:
先检查是否因为列上带了函数,但列和函数类型不符且转换为函数支持的类型后可能带有非法值。例如,ADS(城市)会报错,因为ADS是求数值类型字段的绝对值,单输入列“城市”为中文字符串,转为数值产生非法值。
如果详细信息中包含一串数字,如下图所示,大概率是AnalyticDB for MySQL中的报错,可以提供这串数字,即processid给AnalyticDB for MySQL技术支持进行进一步排查。
若详细信息中仅包含一列错误代码则为FineBI的报错,处理方法请参见FineBI文档BI使用问题汇总。