目录
Windows (embedded MariaDB option) 7
创建数据源(Create a new Data Source) 9
创建数据集(Create a new Data set) 12
SQL查询数据集(SQL Query Data Set) 12
创建仪表盘(Create a New Dashboard) 16
添加交叉表小部件(Cross Table Widget) 24
添加活动选择显示小部件(Active Selections widget) 31
数据安全和访问管理(Data security and access management) 48
用户档案和角色(User profile and roles) 48
简介
KNOWAGE是最全面的开源分析和商业智能套件,它满足传统需求以及创新和具有挑战性的信息领域。它基于开源模式,将来自社区的创新与企业级解决方案的经验和实践完美结合。
KNOWAGE允许您将传统数据和大数据源组合成有价值和有意义的信息。一整套功能,如数据探索、数据准备、自助数据、即席报告、混搭、数据/文本挖掘嵌入和高级数据可视化,特别关注大数据/云数据源和增强分析。
KNOWAGE 源自 SpagoBI,是使用 Java 语言写的开放源码的商业智能分析工具,是一套适合现代商业分析的开源工具套装。Knowage 提供了高级的自助服务功能,为最终用户提供了自主权,可以构建自己的分析、探索和组织自己的数据空间。
BI-MODAL方法与高度定制:
KNOWAGE符合现代BI的标准,始终在一个安全且管理良好的环境中为最终用户提供高度定制功能和高度自主权,完全支持快速开发满足企业要求(如数据一致性和可靠性)的BI-MODAL方法。
得益于开源模型和开放标准的采用,KNOWAGE可以按原样使用,也可以轻松地包含在第三方应用程序中,从而通过嵌入式分析赋予其新的价值。
PS:KNOWAGE Community Edition为社区版。
安装
可从官网提供的几种方式进行安装:
KNOWAGE download - analytics and business intelligence suite : KNOWAGE
或者直接通过以下网址下载安装包:
Knowage CE安装所需环境
-操作系统:
Knowage CE安装程序可在Windows、Linux和macOS操作系统上运行。
-内存要求:
Knowage CE需要3GB的可用RAM。此配置足以用于大多数评估目的。
-磁盘使用情况:
Knowage CE要求文件系统上有2GB的可用空间。
可选嵌入式MariaDB服务器10.2,此时需要4GB的文件系统可用空间。
-Java环境:
安装Knowage的环境必须包括JDK 1.8安装。
请确保JDK组件已成功安装,并且环境变量JAVA_HOME已正确配置。
配置它的步骤取决于操作系统。
Knowage与Open JDK 1.8兼容。
-数据库:
Knowage CE安装程序需要以下外部数据库之一:
MySQL Server 5.7
MariaDB Server 10.2
PS:必须提供具有足够权限创建架构的用户。
如果您使用的是MySQL Server 5.7,我们建议在my.ini文件中设置以下配置:
innodb_buffer_pool_size=2G(调整此处的值,占总RAM的50%-70%)
innodb_log_file_size=500M
Knowage CE安装程序还包含可使用以下内嵌数据库的选项:
MariaDB Server 10.2(请注意,嵌入式数据库选项不适用于macOS)
-应用程序服务器:
Knowage CE安装程序提供了开箱即用的Apache Tomcat 7。
-支持的浏览器:谷歌浏览器、Firefox、Microsoft Edge
在Windows中安装
安装包下载地址:Index of /knowage
这里以8.1.9版本为例:
下载完毕后双击运行exe安装程序,基本上除了安装路径的选择和是否需要使用内嵌的MariaDB外,一直下一步即可。
在Linux中安装
安装包下载地址:Index of /knowage
这里以8.1.19为例:
下载后上传至服务器,解压:
unzip Knowage-8_1_19-CE-Installer-Unix-20240202.zip
Knowage CE安装程序可以在GUI或控制台模式下运行。
只有当桌面环境可用时,GUI模式才可用。
-在GUI模式下运行安装程序,在shell中键入命令:
./Knowage-8_1_19-CE-Installer-Unix-20240202.sh
控制台模式下,并允许使用shell完成安装。
-在控制台模式下运行安装程序,在shell中键入命令:
./Knowage-8_1_19-CE-Installer-Unix-20240202.sh -c
然后基本按操作提示一步步填写安装配置内容即可。
注意:下面这步在安装时需要等待较长时间:
服务的启动与停止
Windows
- Start Knowage CE using <installation
- Stop Knowage CE using <installation
Windows (embedded MariaDB option)
- Start Knowage CE using <installation
- Stop Knowage CE using <installation
Linux/macOS
- Start Knowage CE using <installation
比如我安装根路径为/home/knowageCE,则启动命令为:
/home/knowageCE/Knowage-Server-CE/bin/startup.sh
- Stop Knowage CE using <installation
比如我安装根路径为/home/knowageCE,则停止命令为:
/home/knowageCE/Knowage-Server-CE/bin/shutdown.sh
注意:
如果要启动默认安装好的solr搜索引擎服务,则进入安装根目录中的solr-7.7.0/bin目录,然后执行相应的启动/停止命令即可。
访问Knowage
访问地址:http://localhost:8080/knowage
默认管理员:demo_admin
密码:demo_admin
默认普通用户:demo_user
密码:demo_user
使用
创建数据源(Create a new Data Source)
为了连接到您的数据,您必须定义一个新的数据源连接。
Knowage管理两种类型的数据源连接:
- JNDI: 作为JNDI资源检索的连接,这些连接由Knowage工作的应用程序服务器管理。这允许应用程序服务器优化数据访问(例如,通过定义连接池),因此是推荐的方式。
PS: 如何在Tomcat上创建连接JNDI?
在TOMCAT_HOME/conf/server.xml上创建连接池,在context.xml上添加ResourceLink.
- JDBC: 直接JDBC连接,由Knowage直接管理;
要添加新连接,首先将相关JDBC驱动程序添加到文件夹TOMCAT_HOME/lib中,然后重新启动Knowage,然后,以管理员身份登录,并从管理员菜单中的“Data provider”面板中选择“Data source”。
点击左侧面板右上角的“添加”按钮:
支持的用于访问数据库的方言有:
创建数据集(Create a new Data set)
数据集允许您从多个来源读取数据,并表示分析文档使用的数据部分。
SQL查询数据集(SQL Query Data Set)
选择查询选项需要BI开发人员编写SQL语句来检索数据。
请记住,SQL方言取决于所选择的数据源。SQL文本必须写入“查询文本”区域。
还可以在运行时动态更改查询的原始文本。这可以通过定义一个脚本(Groovy或JavaScript)并将其与查询关联来实现。单击Edit Script(编辑脚本)部分打开脚本编辑器并编写脚本。
基本查询与脚本的执行上下文(变量查询)及其参数(变量参数)和执行数据集的用户的所有配置文件属性(变量属性)绑定在一起。
保存后,可查看元数据信息:
-脚本使用示例:
在下面的脚本中,我们使用JavaScript根据用户在运行时选择的参数year的值动态修改原始查询的FROM子句。
您可以注意到,Knowage提供的变量查询包含SQL查询的文本。
if(isValid('year')) {
if( parameters.get('year') == 1997 ) {
query = query.replace('FROM sales_fact_1998', 'FROM sales_fact_1997');
} else {
query = query; // do nothing
}
}
文件数据集(File Data Set)
文件类型的数据集,如下图所示,从XLS或CSV文件中读取数据。
要定义文件数据集,请选择文件类型,然后通过浏览个人文件夹上传文件,并设置正确的解析选项。
上传文件后,可以检查并定义每列的元数据(度量值或属性)。
平面数据集(Flat Data Set)
平面数据集允许从数据源检索整个表。
换言之,它通过自动检索表中的所有行来替换像select * from sales这样的伪查询。
要创建平面数据集,只需输入表和数据源名称,如下所示。
预览页面:
REST数据集(REST Data Set)
REST数据集使Knowage能够从外部REST服务检索数据。
数据集的开发人员可以自由定义请求的主体、方法、头和参数;然后他必须指定如何使用JSON路径表达式从服务响应中读取数据(目前没有其他读取数据的方法,因此REST服务被认为以JSON格式返回数据)。
SolR数据集(SolR Data Set)
Solr类型的数据集,可以从流行的搜索引擎Solr中读取数据。
要定义Solr数据集,请选择Solr类型并填写所需设置。
SparkQL 数据集(SparkQL Data Set)
Python数据集(Python Data Set)
Python/R数据集允许用户通过编写直接检索数据的Python或R脚本来创建数据集。
数据集的开发人员可以自由编写代码,该代码必须生成一个数据帧变量作为输出(对于Python脚本,我们称之为pandas数据帧)。
此变量将包含Knowage稍后将转换为自己格式的数据。
创建仪表盘(Create a New Dashboard)
Knowage允许最终用户通过直观的交互式界面自行构建交互式驾驶舱,只需点击几下和简单的拖放即可。
这允许您用多个小部件组成分析文档,并定义它们之间的关联,这样点击一个小部件的数据就会在其他小部件中自动更新。
它允许数据混合使用,以集成企业数据和外部来源的数据。
驾驶舱文件可以由技术用户和最终用户创建和执行,并且是Knowage特别报告系统的一部分。
一个关键方面是,不同的小部件可以依赖于不同的数据集,从而依赖于不同数据源。
定义两个或多个数据集之间的关联所需的唯一要求是在每个数据集中都存在包含相同数据的一列或多列。
-仪表盘中可添加如下小部件:
下面是针对仪表盘中的常用小部件进行说明:
仪表盘添加(Cockpit)
可从以下位置进行仪表盘添加:
或者
让我们看看如何构建一个驾驶舱,以及如何在服务器中显示界面。
打开后,驾驶舱界面是一个空页面,其中包含下表中所述的不同选项的工具栏。
添加表格小部件(Table Widget)
-列分组显示:
“管理列分组”将打开一个菜单,添加或删除列组并设置其样式。
列分组是用于多个列的容器,这些列之间将显示一个公共表头。
可添加多个分组:
分组效果如下:
添加交叉表小部件(Cross Table Widget)
注意:在交叉表用到的Dataset数据集中,需要将需要作为列和行显示的字段类型设置为ATTRIBUTE,而将需要度量的字段类型设置为MEASURE。
下面开始在仪表盘中创建交叉表小部件:
添加图表小部件(Chart Widget)
Knowage提供了一个图表引擎来创建多种类型的图表,包括:
- Bar
- Line
- Pie
- Sunburst
- Wordcloud
- Treemap
- Parallel
- Radar
- Scatter
- Heatmap
- Chord
- Gauge
-示例:
注意:和交叉表小部件一样,在图表用到的Dataset数据集中,需要将需要作为列和行显示的字段类型设置为ATTRIBUTE,而将需要度量的字段类型设置为MEASURE。
添加选择器小部件(Selector Widget)
Selector Widget是一种直接在驾驶舱内包含数据集过滤器的方式,该过滤器可以像组合框、单选按钮或复选框一样显示。
选择要筛选的条件值,然后点击执行过滤按钮:
过滤效果如下:
注意:
1.选择器过滤条件仅对使用同一个数据集的图表或表格等组件数据进行过滤。
2.要通过选择器过滤数据的图表或表格等组件,需要设置“允许通过其他组件更新”才行:
添加活动选择显示小部件(Active Selections widget)
活动选择小部件将显示用户选择的元素信息。
效果如下:
默认组件内容为空:
当出发任意条件选择过滤后,会显示已有的过滤条件:
添加文本小部件(Text widget)
您可以将文本添加到仪表盘中。
显示效果:
添加图片小组件(Image widget)
您可以将图片添加到仪表盘中。
显示效果:
构建元模型(Build a Metamodel)
Knowage允许通过使用称为Meta-web的web界面来开发和管理元数据。我们知道,处理元数据意味着管理描述关系模型结构的数据,即处理表、表列、键等之间的关系。
Meta Web允许用户通过使用图形界面访问这些信息,并在抽象模型上轻松组合、重新定义和查询这些信息,从而保证源模型的安全性。
此外,我们强调,用户可以在不使用数据查询语言的情况下对数据执行查询。
元模型创建
使用Meta Web应用程序,可以逆向数据库的内容并处理这些信息,从而创建一个符合用户需求的新模型。在本节中,我们将看到创建元模型并使用QBE进行查询所需的步骤。
要创建元模型,请进入业务模型目录(Business Model)并单击“+”图标添加新模型。
PS:您可以使用上图中的浏览按钮上传通过外部(特定)工具开发的模型。
点击右上角的保存按钮后,就可以使用Meta Web引擎通过Knowage界面进行构建了。
现在点击开关Enable Meta Web,它将显示一个按钮Meta Web,点击它,就可以设计模型了:
对于每个表,您可以决定是否要将其包含在元模型中。
更详细地说,元模型分为两个模型:
物理模型:它表示在创建元模型时数据库的“快照”。物理模型包含表和信息的列表,如从数据库检索的列和外键。物理模型无法修改,但可以更新以反映创建后对数据库所做的更改。
业务模型:它基于物理模型,但允许用户重新组合他的一些信息。例如,可以创建仅包含物理表的某些列的业务类,并在物理数据库中未定义的业务类之间创建新的关系。
点击右上角CONTINUE按钮继续下步操作:
Meta Web编辑器分为两个主要选项卡,与相关模型相对应的“业务模型”和“物理模型”。单击其中一个选项卡将更改显示特定模型元素的视图。
创建新关系
在业务模型中,还可以定义不是从物理外键继承的业务类之间的新关系。
业务关系分为两种类型:
入站(Inbound):以所选业务类为目标的关系(它们正在进入);
出站(Outbound):以选定的业务类作为源的关系(从它们开始)。
下图显示了出站关系,在这里,您需要:
-输入业务关系名称,
-选择关系的基数(建议为1到N),
-选择源和目标业务类,
-然后可以将一个业务属性从源业务类拖放到目标业务类中的另一个业务属性。这将在两个属性之间创建一个链接。
点击CREATE创建关系后,在Xm业务类的入站(Inbound)里也能看到刚才的关系:
生成数据集市
编辑完元模型后,单击右上角元Web工具栏上的“保存”。现在您有了一个可以编译并用于生成数据集市的元模型。
现在,如果你回到商业模型目录,你会看到在“Meta-Web”按钮附近有一个“生成”按钮。单击它,将打开一个对话框:
如果您只需按“保存”,数据集市的生成就开始了,否则单击开关“显示高级选项”(见下图),用户可以修改模型名称,更改用于查询元模型的数据库的模式或目录。
当用户希望在源模式上构建模型并在不同的模式上生成数据集市时,此选项非常有用。此外,用户可以选中Generate for registry(为注册表生成)框。
在这种情况下,生成的数据集市将被用作注册表(但不会被用作QBE)。
Include源代码生成一个“file.jar”,其中包含编译后的代码(.class)和源文件(.java),这对取消标记过程很有用。
生成数据集市后,可以在Workspace界面中查询访问它的元模型。
建立QBE查询(Build a QBE)
本节针对QBE(Query By Example),这是一种自由查询工具,使用户可以通过图形界面轻松、自由地访问信息。
自由查询表明了分析师和运营用户的工作方式,他们通常寻求不限于预先安排的结果列表的业务分析。这种方法需要中等程度的复杂性,因为需要足够的数据管理知识和结构化的工作组织。
QBE是一个允许您通过完全图形化的方式开发免费查询的工具。此外,您还可以执行查询、检查结果、导出结果并保存查询以供进一步使用。
这将分为两个主要部分:
第一部分,专门用于在Knowage Server环境中构建查询,假设要分析的业务模型的可用性。
第二部分,我们将通过Knowage Meta中的QBE设计器为用户提供建立适当商业模式的主要步骤。
要打开QbE编辑器,请访问用户工作区中的“模型”部分。然后,只需单击模型图标即可进入QbE图形界面:
点击运行结果如下:
点击智能视图开关(Smart View)显示如下:
设置过滤条件(Filter)
可以给指定属性设置过滤条件,条件最终会添加到执行SQL的where语句中。
这里添加过滤条件为:合同额大于等于60的记录。
执行结果如下:
执行SQL如下:
QBE查询保存与查看
如果直接从模型“我的数据”>“模型”启动QbE编辑器,您也可以通过单击页面右上角的“保存”图标将查询保存为新的数据集;
保存后可以从“我的数据”>“数据集”访问该数据集。
请注意,此操作保存查询的定义,而不是查询结果的快照。
这意味着,每次重新执行保存的数据集时,都会对数据库执行查询以恢复更新的数据。
将查询保存为数据集时,会打开一个弹出窗口,要求您填写一些信息,分为三个选项卡:
-详细信息(Detail):在此选项卡中,您可以设置数据集的基本信息,如标签、名称、描述、类别和范围。
-元数据(Metadata) :包含与查询中涉及的字段相关联的元数据。
-持久化(Persistence) :你可以持久化你的数据集,也就是说,把它写在默认的数据库上。在数据集计算需要相当长的时间的情况下,使数据集持久化可能很有用。不是每次执行使用数据集的文档时都重新计算数据集,而是计算一次数据集,然后从表中检索数据集以提高性能。您还可以决定计划持久性操作:这意味着存储的数据将根据计划选项中定义的频率进行更新。
保存后可在我的数据中查看刚才保存的查询数据集,并可再次编辑或查看结果:
数据安全和访问管理(Data security and access management)
行为模型(Behavioural Model)
根据最终用户的角色和简介,与文档和数据可见性相关的一个重要主题是行为模型。
行为模型基于四个主要概念:
用户档案(user profile),定义用户角色和属性;
存储库权限(repository rights),在文档可访问性方面定义用户权限;
分析驱动程序(analytical drivers),定义文档的哪些数据可以显示给用户;
演示环境设置(presentation environment settings),定义用户如何访问和运行自己的文档。
主要回答以下问题:
谁(WHO)要使用商业智能解决方案(用户档案);
什么(WHAT)是在文档和数据方面,用户可见的内容(存储库权限和分析驱动程序);
用户如何(HOW)使用文档(分析驱动程序和演示环境设置)。
用户档案和角色(User profile and roles)
Knowage用户定义包括:身份,角色,档案。
用户身份:由一组用于识别该用户的数据组成,即用户名和密码,以及人类可读的全名。
用户档案:由一组称为属性的属性组成,这些属性描述了有关用户的一般信息,例如年龄和性别,但也包括特定领域的属性,例如他所属的组织单位。某些属性,如姓名和电子邮件,默认情况下在知识中定义。其他的可以由模型管理员添加。
用户角色:表示一组用户的分类。这些角色可能对应于公司中的特定职位,例如“总经理”或“销售总监”,或与BI项目相关的职位,例如,“数据管理员”和“BI开发人员”。不同的用户可能具有相同的角色,以及同一用户可能具有多个角色。
Knowage允许您根据项目需求创建多个角色,但是,所有角色都必须属于特定的角色类型。
角色类型是Knowage使用的更高级别的分类,用于映射套件的不同功能的角色。
每个角色类型都有一个关联的默认用户。
可以创建用户并将其关联到一个角色类型。
下表中总结了预先定义的角色类型。前四个角色是技术角色,而最后一个角色,即用户,是实际的最终用户。
Knowage角色类型:
当用户登录Knowage时,他的档案会自动加载。点击页面左下角的信息按钮可以看到全名。
一旦用户登录,就会加载他的角色。如果用户与多个角色关联,则会要求他选择一个。
或者从“知识管理员”菜单中,他可以选择一个默认角色,该角色在注销之前一直有效。
身份验证可以由Knowage内部处理,也可以委托给外部单一登录(SSO)系统。
身份验证管理
选择在内部处理身份验证还是将其委托给外部SSO系统,通常取决于是否存在已就位的身份验证系统。如果是这种情况,Knowage可以与现有的身份验证基础设施无缝集成。
定义行为模型时应遵循的步骤
1.创建档案属性;
2.创建角色;
3.创建用户并将档案属性值和角色关联。
Knowage支持通过档案配置管理菜单(Profile Management Menu)部分管理用户配置文件和角色。(此菜单仅对知识管理员和模型管理员可见,因为用户和角色管理是一项关键操作,需要适当的责任级别)
配置文件管理菜单部分包含三个子菜单项:
档案属性:定义新的配置文件属性并管理现有的配置文件。
角色:创建新角色并管理每个角色的权限。
用户:创建用户、管理其身份、为其档案属性分配值并将其与角色关联。
档案属性管理
角色管理
行为模型的建立应考虑到每个组织的特殊性和BI项目的需求。因此,最好为BI项目定义特定的角色,避免仅使用Knowage技术角色。
角色授权:
“业务模型”、“数据集”和“KPI类别”选项卡旨在为每个角色分配特定类别,使每个用户只能看到属于与其角色关联的类别的业务模型、数据集或KPI。
用户管理
“用户管理”部分包括一个允许管理员创建和删除用户的左侧面板,以及一个允许管理用户详细信息、角色和属性的右侧面板。