类别

版本

读数据库(JDBC连接器)

剧情简介

该操作符从SQL数据库读取ExampleSet。

描述

Read Database操作符用于从指定的SQL数据库读取示例集。要正确使用该操作符,您至少需要对数据库、数据库连接和查询有基本的了解。通过查看参数和示例流程来理解这个运算符的流程。

执行此操作符时,查询所传递的表将被复制到计算机的内存中。这将使所有后续操作人员能够快速访问数据。即使像支持向量机这样具有大量随机访问的学习方案也会运行得很快。

javaResultSetMetaData接口没有提供有关标称属性可能值的信息。标称值映射到的内部索引将取决于它们在表中出现的顺序。只有当过程被分割为培训过程和测试过程时,这才可能导致问题。对于能够处理名义属性的学习方案来说,这不是问题。如果对标称数据使用支持向量机这样的学习方案,RapidMiner假定标称属性是数值的,并使用标称值的索引作为其数值。如果只有两个可能的值,支持向量机可能表现良好。如果在另一个进程中读取测试集,标称值可能被分配不同的指标,因此训练的支持向量机是无用的。属性来指定类,这对标签属性来说不是问题参数,因此所有拟用于标称数据的学习方案都是安全的。如果您首先使用追加操作符组合两个exampleset,然后再使用两个Filter Examples操作符拆分它,您可能会避免这个问题。

分化

执行SQL

Read Database操作符用于将数据从数据库加载到RapidMiner中。Execute SQL操作符不能用于从数据库加载数据。它可以用于执行SQL语句,如CREATE或ADD等数据库。

输入

  • 连接(连接)

    这个输入端口需要Connection对象(如果有的话)。有关更多信息,请参见参数连接条目。

输出

  • 输出(数据表)

    该端口将数据库查询的结果以表格形式与元数据一起交付。此输出类似于Retrieve操作符的输出。

  • 连接(连接)

    这个输出端口从输入端口传递Connection对象。如果输入端口没有连接,则端口不能输出任何信息。

参数

  • define_connection此参数指示应该如何指定数据库连接。它提供了四个选项:repository、预定义的、url和jndi。参数不可见连接输入端口已连接。选择范围:
  • connection_entry该参数仅在定义连接参数设置为存储库.此参数用于指定表示连接项的存储库位置。的方法提供连接连接输入端口。范围:字符串
  • 连接该参数仅在定义连接参数设置为预定义的.该参数用于使用预定义的连接连接到数据库。您可以有许多预定义的连接。您可以使用下拉框选择其中一个。您可以使用下拉框旁边的按钮添加新连接或修改以前的连接。也可以通过单击管理数据库连接…工具菜单在主窗口。出现一个新窗口。这个窗口要求提供一些细节信息。主机、端口、数据库系统、模式、用户名而且密码.的测试按钮将允许您检查是否可以建立连接。测试成功后保存连接。控件的下拉框中选择新连接连接参数。您需要对配置连接所需的数据库有基本的了解。范围:字符串
  • database_system该参数仅在定义连接参数设置为url.该参数用于选择使用的数据库系统。它可以有以下值之一:MySQL, PostgreSQL, Sybase, HSQLDB, ODBC Bridge(例如Access), Microsoft SQL Server (JTDS), Ingres, Oracle。选择范围:
  • database_url该参数仅在定义连接参数设置为url.该参数用于为数据库定义URL连接字符串。“jdbc: mysql: / / foo.bar: portnr /数据库”。范围:字符串
  • 用户名该参数仅在定义连接参数设置为url.该参数用于指定数据库的用户名。范围:字符串
  • 密码该参数仅在定义连接参数设置为url.该参数用于指定数据库的密码。范围:字符串
  • jndi_name该参数仅在定义连接参数设置为jndi.此参数用于为JNDI提供数据源的名称。范围:字符串
  • define_queryQuery是一条语句,用于从数据库中选择所需的数据。该参数指定数据库查询是应该直接定义、通过文件定义还是通过给定的表名隐式定义。SQL查询可以自动生成一个表名,通过一个参数传递给RapidMiner,如果是长SQL语句,则可以在一个单独的文件中传递。控件可以选择所需的行为定义查询参数。请注意,列名通常区分大小写,可能需要引用。选择范围:
  • 查询该参数仅在定义查询参数设置为查询.此参数用于定义从指定数据库选择所需数据的SQL查询。范围:字符串
  • query_file该参数仅在定义查询参数设置为查询文件.此参数用于选择一个文件,该文件包含从指定数据库选择所需数据的SQL查询。长查询通常存储在文件中。将查询存储在文件中还可以增强可重用性。范围:文件名
  • table_name该参数仅在定义查询参数设置为表名.此参数用于从指定的数据库中选择所需的表。范围:字符串
  • prepare_statement如果选中,语句就准备好了,'?可以使用参数参数。范围:布尔
  • 参数要插入'?语句准备时占位符。范围:枚举

教程的过程

从mySQL数据库读取ExampleSet

“读取数据库”操作符用于读取mySQL数据库。定义连接参数被设置为预定义的。使用下拉框旁边的按钮配置了定义连接参数。连接的名称设置为'mySQLconn'。在连接参数向导中设置了以下值。数据库系统设置为“mySQL”。主机设置为“localhost”。端口设置为'3306'。数据库方案设置为“golf”;这是数据库的名称。 The User was set to 'root'. No password was provided. You will need a password if your database is password protected. Set all the values and test the connection. Make sure that the connection works.

定义查询参数设置为“表名”。表名参数设置为'golf_table',这是'golf'数据库中所需表的名称。运行该流程,您将在结果工作区中看到整个“golf_table”。如果想从数据库中读取整个表,则将define query参数设置为'table name'。还可以使用查询读取数据库的选定部分。设置define query参数为'query',并在query参数中指定一个查询。本例中已经定义了一个示例查询。该查询只读取'golf_table'中'Outlook'属性值为'sunny'的示例。