@IgniteSpiMultipleInstancesSupport(value=true) public class S3CheckpointSpi extends IgniteSpiAdapter implements CheckpointSpi
For information about Amazon S3 visit aws.amazon.com.
setAwsCredentials(AWSCredentials)
setBucketNameSuffix(String))setClientConfiguration(ClientConfiguration))setBucketEndpoint(String))setSSEAlgorithm(String))S3CheckpointSpi can be configured as follows:
IgniteConfiguration cfg = new IgniteConfiguration();
S3CheckpointSpi spi = new S3CheckpointSpi();
AWSCredentials cred = new BasicAWSCredentials(YOUR_ACCESS_KEY_ID, YOUR_SECRET_ACCESS_KEY);
spi.setAwsCredentials(cred);
spi.setBucketNameSuffix("checkpoints");
// Override default checkpoint SPI.
cfg.setCheckpointSpi(cpSpi);
// Start grid.
G.start(cfg);
S3CheckpointSpi can be configured from Spring XML configuration file:
<bean id="grid.custom.cfg" class="org.apache.ignite.configuration.IgniteConfiguration" singleton="true">
...
<property name="checkpointSpi">
<bean class="org.apache.ignite.spi.checkpoint.s3.S3CheckpointSpi">
<property name="awsCredentials">
<bean class="com.amazonaws.auth.BasicAWSCredentials">
<constructor-arg value="YOUR_ACCESS_KEY_ID" />
<constructor-arg value="YOUR_SECRET_ACCESS_KEY" />
</bean>
</property>
</bean>
</property>
...
</bean>
Note that storing data in AWS S3 service will result in charges to your AWS account.
Choose another implementation of CheckpointSpi for local or
home network tests.
For information about Spring framework visit www.springframework.org
CheckpointSpi| Modifier and Type | Field and Description |
|---|---|
static String |
BUCKET_NAME_PREFIX
Prefix to use in bucket name generation.
|
static String |
DFLT_BUCKET_NAME_SUFFIX
Suffix to use in bucket name generation.
|
igniteInstanceName| Constructor and Description |
|---|
S3CheckpointSpi() |
| Modifier and Type | Method and Description |
|---|---|
String |
getAccessKey()
Gets S3 access key.
|
@Nullable String |
getBucketEndpoint()
Gets S3 bucket endpoint to use.
|
String |
getBucketName()
Gets S3 bucket name to use.
|
String |
getProxyHost()
Gets HTTP proxy host.
|
String |
getProxyPassword()
Gets HTTP proxy password.
|
int |
getProxyPort()
Gets HTTP proxy port.
|
String |
getProxyUsername()
Gets HTTP proxy user name.
|
String |
getSecretAccessKey()
Gets S3 secret key.
|
@Nullable String |
getSSEAlgorithm()
Gets S3 server-side encryption algorithm.
|
byte[] |
loadCheckpoint(String key) |
boolean |
removeCheckpoint(String key) |
boolean |
saveCheckpoint(String key,
byte[] state,
long timeout,
boolean overwrite) |
S3CheckpointSpi |
setAwsCredentials(com.amazonaws.auth.AWSCredentials cred)
Sets AWS credentials.
|
S3CheckpointSpi |
setBucketEndpoint(String bucketEndpoint)
Sets bucket endpoint.
|
S3CheckpointSpi |
setBucketNameSuffix(String bucketNameSuffix)
Sets bucket name suffix.
|
void |
setCheckpointListener(CheckpointListener lsnr) |
S3CheckpointSpi |
setClientConfiguration(com.amazonaws.ClientConfiguration cfg)
Sets Amazon client configuration.
|
S3CheckpointSpi |
setName(String name) |
S3CheckpointSpi |
setSSEAlgorithm(String sseAlg)
Sets server-side encryption algorithm for Amazon S3-managed encryption keys.
|
void |
spiStart(String igniteInstanceName) |
void |
spiStop() |
String |
toString() |
addTimeoutObject, assertParameter, checkConfigurationConsistency0, clientFailureDetectionTimeout, configInfo, createSpiAttributeName, failureDetectionTimeout, failureDetectionTimeoutEnabled, failureDetectionTimeoutEnabled, getConsistentAttributeNames, getExceptionRegistry, getLocalNode, getName, getNodeAttributes, getSpiContext, ignite, initFailureDetectionTimeout, injectables, injectResources, isNodeStopping, onBeforeStart, onClientDisconnected, onClientReconnected, onContextDestroyed, onContextDestroyed0, onContextInitialized, onContextInitialized0, registerMBean, removeTimeoutObject, started, startInfo, startStopwatch, stopInfo, unregisterMBeanclone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitgetName, getNodeAttributes, onClientDisconnected, onClientReconnected, onContextDestroyed, onContextInitializedpublic static final String BUCKET_NAME_PREFIX
public static final String DFLT_BUCKET_NAME_SUFFIX
public String getBucketName()
@Nullable public @Nullable String getBucketEndpoint()
@Nullable public @Nullable String getSSEAlgorithm()
public String getAccessKey()
public String getSecretAccessKey()
public String getProxyHost()
public int getProxyPort()
public String getProxyUsername()
public String getProxyPassword()
@IgniteSpiConfiguration(optional=true) public S3CheckpointSpi setBucketNameSuffix(String bucketNameSuffix)
bucketNameSuffix - Bucket name suffix.this for chaining.@IgniteSpiConfiguration(optional=true) public S3CheckpointSpi setBucketEndpoint(String bucketEndpoint)
bucketEndpoint - Bucket endpoint, for example, s3.us-east-2.amazonaws.com.this for chaining.@IgniteSpiConfiguration(optional=true) public S3CheckpointSpi setSSEAlgorithm(String sseAlg)
sseAlg - Server-side encryption algorithm, for example, AES256 or SSES3.this for chaining.@IgniteSpiConfiguration(optional=true) public S3CheckpointSpi setClientConfiguration(com.amazonaws.ClientConfiguration cfg)
For details refer to Amazon S3 API reference.
cfg - Amazon client configuration.this for chaining.@IgniteSpiConfiguration(optional=false) public S3CheckpointSpi setAwsCredentials(com.amazonaws.auth.AWSCredentials cred)
For details refer to Amazon S3 API reference.
cred - AWS credentials.this for chaining.public void spiStart(String igniteInstanceName) throws IgniteSpiException
spiStart in interface IgniteSpiIgniteSpiExceptionpublic void spiStop()
throws IgniteSpiException
spiStop in interface IgniteSpiIgniteSpiExceptionpublic byte[] loadCheckpoint(String key) throws IgniteSpiException
loadCheckpoint in interface CheckpointSpiIgniteSpiExceptionpublic boolean saveCheckpoint(String key, byte[] state, long timeout, boolean overwrite) throws IgniteSpiException
saveCheckpoint in interface CheckpointSpiIgniteSpiExceptionpublic boolean removeCheckpoint(String key)
removeCheckpoint in interface CheckpointSpipublic void setCheckpointListener(CheckpointListener lsnr)
setCheckpointListener in interface CheckpointSpipublic S3CheckpointSpi setName(String name)
setName in class IgniteSpiAdapter
Follow @ApacheIgnite
Ignite Database and Caching Platform : ver. 8.9.23-p1 Release Date : November 19 2025