É possível configurar uma atualização de banco de dados baseado em tempo usando o XML para uma configuração do eXtreme Scale local ou distribuída. Também é possível definir uma configuração local programaticamente.
O seguinte exemplo mostra um arquivo objectgrid.xml que contém uma configuração timeBasedDBUpdate:
Atualizador baseado em tempo do JPA - exemplo de XML
<?xml version="1.0" encoding="UTF-8"?>
<objectGridConfig xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://ibm.com/ws/objectgrid/config ../objectGrid.xsd"
xmlns="http://ibm.com/ws/objectgrid/config">
<objectGrids>
<objectGrid name="changeOG"
entityMetadataXMLFile="userEMD.xml">
<backingMap name="user" >
<timeBasedDBUpdate timestampField="rowChgTs"
persistenceUnitName="userderby"
entityClass="com.test.UserClass"
mode="INVALIDATE_ONLY"
/>
</backingMap>
</objectGrid>
</objectGrids>
<backingMapPluginCollections>
</objectGridConfig>
Neste exemplo, o mapa "user" é configurado com a atualização do banco de dados baseada em tempo. O modo de atualização de banco de dados é INVALIDATE_ONLY e o campo do registro de data e hora é rowChgTs.
Quando um ObjectGrid "changeOG" distribuído é iniciado no servidor de contêiner, um encadeamento de atualização de banco de dados baseado em tempo é iniciado automaticamente na partição 0.
Se você criar um ObjectGrid local, também é possível criar um objeto TimeBasedDBUpdateConfig e configurá-lo na instância BackingMap:
public void setTimeBasedDBUpdateConfig(TimeBasedDBUpdateConfig dbUpdateConfig);
Para obter mais informações sobre como configurar um
objeto na instância BackingMap, consulte Interface BackingMapPor outro lado, não é possível anotar o campo do registro de data e hora na classe de entidade usando a anotação com.ibm.websphere.objectgrid.jpa.dbupdate.annotation.Timestamp. Ao configurar o valor na classe, não é necessário configurar o timestampField na configuração XML.