java - 如何通过第一个节点初始化和填充 Apache Ignite 数据库?

标签 java database performance ignite failover

我想使用 Apache Ignite 作为故障转移只读存储,这样,如果主存储 (Oracle) 出现故障,我的应用程序将能够访问最敏感的数据。

所以我需要

  • 启动节点
  • 创建架构(执行 DDL 查询)
  • 将数据从 Oracle 加载到 Ignite

好像和database caching不太一样而且我不需要使用缓存。然而,this page说我需要实现一个存储来从第三方加载大量数据。

所以,我的问题是:

  1. 如何有效地将数据从 Oracle 传输到 Ignite? Data Streamers
  2. 谁应该发起此传输?第一个启动的节点?怎么做? (教程解释了如何通过客户端实现这一目标,我应该遵循这个建议吗?)

最佳答案

实际上,我认为,使用不带读/写功能的缓存存储是一个合适的选择。您可以配置CacheJdbcPojoStore例如,调用 IgniteCache#loadCache(...)一旦集群启动,就在您的缓存上。有关此主题的更多信息:https://apacheignite.readme.io/docs/3rd-party-store

如果您不想使用缓存存储,则 IgniteDataStreamer可能是一个不错的选择。这是将大量数据上传到集群的最快方法。数据加载通常从 client node 执行。 ,当所有服务器节点都启动并运行时。

关于java - 如何通过第一个节点初始化和填充 Apache Ignite 数据库?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48992028/

相关文章:

java - 带有数组名称的 playframework 表单输入

database - 从 Visual Basic 2010 到 MS ACCESS 2007 上的 INSERT INTO 命令出现语法错误

java - 数据从DB服务器推送到Web服务器

performance - 快速排序:枢轴元素的选择、输入和最坏情况下的性能有何关系?

java - 绘制和表示带有阵列墙的迷宫

java - 在 strings.xml 中使用长值时,Lint 给出 "Wrong format type"

java - 这两种初始化String的方式有什么区别

php - 在这种(稍微)复杂的 MySQL 数据库情况下,如何删除重复行?

performance - 我可以使用 Big-O 表示法来比较同一算法的优化和未优化实现的性能吗?

c++ - 在 GLSL 中重新使用内置 OpenGL 变量定义自己的制服。为什么?