客户端模式下的 Ignite 和 RDMS 集成

Ignite and RDMS integration in client mode

我正在使用 https://apacheignite-mix.readme.io/v1.7/docs/automatic-persistence 将数据从数据库加载到 Ignite 缓存中。

我运行我的代码使用 Ignite 客户端模式,并希望将数据加载到 Ignite 集群中。

看起来我必须将我的用户代码 jar 和相关的 jar 放入 $IGNITE_HOME/libs 才能使我的代码工作?

我会问:

  1. 我将这些 jar 文件放入 $IGNITE_HOME/libs 让我的代码工作是否正确?
  2. 如果我必须将我的 jars 放入 $IGNITE_HOME/libs,看起来如果我在将一些表加载到缓存中后需要加载更多表,我是否必须关闭集群并重新启动服务器以加载这些新的 类?如果是这样,那么缓存中的数据会丢失,因为它们驻留在内存中,必须重新加载?

加载数据有两种方法,通过IgniteDataStreamer和通过CacheStore实现。有关详细信息,请参阅此页面:https://apacheignite.readme.io/docs/data-loading

IgniteDataStreamer 的情况下,您将从客户端的数据库加载数据并将其流式传输到集群中。在这种情况下,您不需要将任何 类 添加到服务器类路径。

CacheStore 的情况下,您将从服务器端的数据库加载数据。在这种情况下,您需要显式部署(添加到 libs 文件夹)CacheStore 的实现及其依赖的任何内容。如果您正在使用 Automatic Persistence,实施已经存在,也无需部署。

您永远不需要在服务器类路径上有模型 类,并且您可以动态更改架构而无需重新启动集群。有关详细信息,请参阅此页面:https://apacheignite.readme.io/docs/binary-marshaller