Teiid 基于数据联邦的集成方案(2)

连接器框架(Connector Framework):包括转换器和资源适配器。转换器提供了查询引擎和物理数据源之间的抽象层,它可以把 Teiid 发出的查询命令转换成数据源特定的命令,并通过资源适配器执行这些命令。

Teiid 控制台:提供 Web 界面让用户来监控 Teiid 的运行。

Admin Shell:用 Groovy 编写的 Shell 界面,支持用命令行或脚本来实现自动化管理和任务测试。

各组件的关系如下:

Teiid 基于数据联邦的集成方案

图1-3 Teiid 的组件

此外在 Teiid 发布包中还包括一些工具,主要有:

设计器:Teiid 设计器是基于 Eclipse 的 GUI 工具,用来定义虚拟数据库, 包含视图、存储过程,甚至动态的XML文档。

连接器开发工具 -用来开发用户自定义的转换器和资源适配器。

在 Teiid 有两种方法来创建 VDB 。你可以创建动态 VDB,这种 VDB 由简单的 XML 文件定义,该 XML 文件定义了它想要集成的数据源,并通过 JDBC 提供了访问。用户编写针对该 VDB 的查询,可以使用所有定义的数据源,就象是用单一的数据源一样。但是动态 VDB 不提供视图抽象层。

你也可以使用 Teiid 设计器来创建 VDB。它不但可以用来定义数据源模型,并由此导入元数据和统计资料(statistics),还允许在这些数据源之上定义关联和 XML 视图。这可以让用户对底层的物理数据结构进行抽象,暴露出所需的信息结构给应用程序使用。

VDB 必须总是处于一种完整状态(complete state),这意味着所有的信息都包含在 VDB ,不能有外部的依赖。当定义好 VDB 之后,它必须被部署到 Teiid runtime 中,如果部署过程中没有错误,而且底层的数据源被正确配置,VDB 就可以被客户应用访问了。一旦 VDB 被部署,就可以通过 JDBC-SQL,SOAP (Web Services), SOAP-SQL, 或者 XQuery 进行访问。

Teiid 基于数据联邦的集成方案

图1-4 将 VDB 部署到 runtime中

至此,我们介绍了 Teiid 的一些重要概念,接下来我们将学习如何创建和发布一个虚拟数据库。so let’s begin!

下载和安装 Teiid为了运行 Teiid ,你需要先在系统里安装下面组件:

一切就绪之后,就可以下载安装 Teiid 运行时了,目前最新版本是 8.2.0 (teiid-8.2.0.Final-jboss-dist.zip),你只需要将所有的内容解压到 JBoss AS 的安装目录中去即可。 由于 Teiid 和 JBoss AS 的目录结构完全一样,因此 Teiid 会被归并到相应的目录中。建议下载 Admin Console 和 Admin Shell 这两个管理工具包,安装方式和 runtime 类似。

用下面的命令来启动 JBoss AS 的 Standalone 模式:

<jboss-install>/bin/standalone.sh -c=standalone-teiid.xml

要进入Admin Console 必须添加管理用户,运行 add-user.bat 并输入:

What type of user do you wish to add?
a) Management User (mgmt-users.properties)
b) Application User (application-users.properties)
(a):

Enter the details of the new user to add.
Realm (ManagementRealm) :
Username : raylinn
Password :
Re-enter Password :
About to add user ‘raylinn’ for realm ‘ManagementRealm’
Is this correct yes/no? yes
Added user ‘raylinn’ to file ‘C:\jboss\standalone\configuration\mgmt-users.properties’
Added user ‘raylinn’ to file ‘C:\jboss\domain\configuration\mgmt-users.properties’
Press any key to continue . . .

现在你可以在浏览器中输入 :8080/ 进入到 JBoss 欢迎界面,点击界面上的 “Administration Console” 链接就看到管理界面,如图1-5所示:

Teiid 基于数据联邦的集成方案

图1-5 Admin Console 界面。

建立虚拟数据库在 Teiid 中,你可以用设计器或者通过称为动态 VDB 的 XML 文件来创建虚拟数据库。我们首先了解如何使用动态 VDB 的方式,稍后我们会学习使用设计器。注意:如果你的应用需要在数据源之上使用视图层,你必须使用设计器。

我们用投资组合来作为示例,演示 Teiid 如何集成多个数据源,并使用单个查询从多个数据源中返回结果。使用数据联邦技术很容易就能集成新的数据源,而不需要暴露任何访问信息。

在这个例子中,我们会用到两个数据源: 存储在 H2 数据库的帐户信息(关系型),以及在保存在 CSV 文件中的股票价格(非关系型)。我们会创建一个动态 VDB,名为 DynamicPortfolio,在该 XML 文件中为每个数据源定一个模型:即 Account 和 MarketData。当你将这个 VDB 将部署到 Teiid 运行时,应用程序就能够使用 JDBC 来访问它。

Teiid 基于数据联邦的集成方案

图1-6 示例:通过动态 VDB 访问数据源

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/16049.html