在既有系统中打通Apache Ignite、MySQL和Node.js


在既有系统中打通Apache Ignite、MySQL和Node.js

文章插图
 
本文由公众号EAWorld翻译发表,转载需注明出处 。
作者:Akmal B. Chaudhri
译者:李玉珏
原题:Using 'No Rip and Replace' with Apache® Ignite™, MySQL and Node.js
原文:http://t.cn/Efatkx6
介绍在本文中,可以看一下Ignite在处理其它数据源(比如关系数据库)的已有数据时,一个很有用的场景 。
通常在行业领域,很多系统还有着巨大的商业价值,它们必须得到维护甚至加强,未被开发的领域已经很少见了 。而Ignite可以用于组织中的遗留系统或传统系统,以增加它们的价值并提供新的可能性,例如具有水平可扩展性的集群计算、显著的内存级性能优势以及使用机器和深度学习的新应用等等 。
具体可以看一个示例,其中在关系数据库中已经有了一些数据,然后了解Ignite如何将该数据缓存到内存中,对该内存数据执行SQL操作并将更改回写关系数据库,这里将使用一些Node.js代码来访问Ignite并执行一些SQL查询 。
已有的数据库系统本文中使用了MySQL,并且其中已经准备好了一个名为world的数据库,里面已经加载了部分数据 。
这个world数据库的结构为有三张关系表,具体如下:
  • country:代表世界上的国家(239行数据);
  • city:代表国家的部分城市信息(4079行数据);
  • countrylanguage:各个国家说的语言(984行数据) 。
接下来,确认MySQL是否已经成功启动,并接受外部连接 。
Web控制台和Web代理为了访问MySQL数据库的模式信息,需要使用Ignite的Web控制台,在本文中为了方便,使用的是GridGain托管的服务,不过Web控制台的源代码是可以下载的,可以在本地构建然后在公司的防火墙后面运行,具体细节可以参见相关的文档 。
还需要一个Web代理,它可以从Web控制台中下载,如下图所示:
在既有系统中打通Apache Ignite、MySQL和Node.js

文章插图
 
Web代理的zip包下载完成之后,可以解压该文件,目录结构大致如下图所示:
在既有系统中打通Apache Ignite、MySQL和Node.js

文章插图
 
注意这里有个名为jdbc-drivers的目录,因为本例需要访问MySQL,所以需要下载MySQL的驱动,然后将jar文件放在该文件夹中,如下图所示:
在既有系统中打通Apache Ignite、MySQL和Node.js

文章插图
 
下面从终端窗口中启动Web代理,如下:
./ignite-web-agent.sh 输出大致如下图所示:
在既有系统中打通Apache Ignite、MySQL和Node.js

文章插图
 
从MySQL中导入模式下面就可以导入模式信息了,在Web控制台的Configuration页面中,右上角有一个Import from Database按钮,如下图所示:
在既有系统中打通Apache Ignite、MySQL和Node.js

文章插图
 
点击该按钮之后,输出大致如下图所示:
在既有系统中打通Apache Ignite、MySQL和Node.js

文章插图
 
在这个界面中,需要输入MySQL服务器的JDBC URL、User和Password,大致如下图所示:
在既有系统中打通Apache Ignite、MySQL和Node.js

文章插图
 
填完之后点击Next,这时就会看到各个数据库模式,然后把除了world模式之外的都取消掉,如下图所示:
在既有系统中打通Apache Ignite、MySQL和Node.js

文章插图
 
选好之后,点击Next,就会看到3张表,如下图所示:
在既有系统中打通Apache Ignite、MySQL和Node.js

文章插图
 
对于本文来说,这页面中的默认值就可以了,然后点击Next,这会跳到如下图所示的页面:
在既有系统中打通Apache Ignite、MySQL和Node.js

文章插图
 
对于本文来说,这个页面的默认值就可以,然后点击Save:
接下来在Configuration页面,可以看到列出了一个新的名为ImportedCluster配置项,如下图所示:
在既有系统中打通Apache Ignite、MySQL和Node.js

文章插图
 
为了满足业务需求,这个配置是可以修改的 。
修改配置如果点击上图中的ImportedCluster,就会跳转到下面的页面:
在既有系统中打通Apache Ignite、MySQL和Node.js

文章插图
 
这个界面中有两个选项卡:Basic和Advanced 。
在Basic选项卡中,集群的配置名(第一步),如果往下滚动,Ignite存储的名字(第二步),还有其它的若干个参数,都可以修改,在本例中,会维持这个页面中的默认值 。


推荐阅读