给你个例子 SQL> create table test (id number(7));
表已创建。
SQL> insert into test values (3);
已创建 1 行。
SQL> savepoint a;
保存点已创建。
SQL> insert into test values (4);
已创建 1 行。
SQL> select * from test;
ID ---------- 3 4
SQL> rollback to a;
回退已完成。
SQL> select * from test;
ID ---------- 3
SQL> rollback;
回退已完成。
SQL> select * from test;
未选定行
事务中的Savepoints
你可以在事务上下文中声明称为savepoint的中间标记。Savepoint将一个长事务分隔为较小的部分。
使用savepoint,你可以在长事务中任何点任意标记你的操作。然后你可以选择回滚在事务中当前点之前、声明的savepoint之后执行的操作。比如,你可以在一长段复杂的更新中使用savepoint,如果犯了个错,你不需要重新提交所有语句。
Savepoints在应用程序中同样有用。如果一个过程包含几个函数,那可以在每个函数前创建一个savepoint。如果一个函数失败,返回数据到函数开始前的状态并在修改参数或执行一个恢复操作后重新运行函数就非常容易。
在回滚到一个savepoint后,Oracle释放由被回滚的语句持有的锁。其他等待之前被锁资源的事务可以进行了。其他要更新之前被锁行的事务也可以执行。
当一个事务回滚到一个savepoint,发生下列事件:
1. Oracle仅回滚savepoint之后的语句。
2. Oracle保留这一savepoint,但所有建立于此后的savepoints丢失。
3. Oracle释放在该savepoint后获得的所有表、行锁,但保留之前获得的所有锁。
事务保持活动并可继续。
无论何时一个会话在等待事务,到savepoint的回滚不会释放行锁。为了确保事务如果无法获得锁也不会悬挂(hang),在执行UPDATE或DELETE前使用FOR UPDATE ... NOWAIT。(这里指回滚的savepoint之前获得的锁。该savepoint后获得的行锁会被释放,之后执行的语句也会被彻底回滚。)
|
相关推荐
4、支持任何Sqlite的SQL命令并遍历结果集、可以使用准备好的查询、可以使用参数化查询、可以使用事务(包括保存点[savepoints])、可以定义自己的UDF(用户定义的SQL函数)、可以定义自己的排序规则;
- **Savepoints**: Savepoints是事务处理中的一个概念,允许用户在执行一系列数据操作语言(DML)操作时创建一个保存点。这使得在遇到错误或决定回退部分事务时,可以回到这个保存点,而无需撤销整个事务。题目中指出...
因此,选项B(Savepoints may be used to ROLLBACK)和D(Savepoints are effective for both COMMIT and ROLLBACK)是正确的。选项A错误,因为保存点不仅对COMMIT有效,也可以用于ROLLBACK。选项C错误,因为保存点...
4.2 Savepoints:除了检查点,Flink还支持savepoints,可以随时保存作业状态,方便作业的升级和迁移。 4.3 Exactly-once语义:Flink通过精确一次的语义保证了数据处理的准确性,即使在故障后也能得到正确的结果。 ...
6. **Checkpoints与Savepoints**:Flink的检查点(Checkpoints)和保存点(Savepoints)机制是实现Exactly-once语义的关键,它们可以在不影响正常运行的情况下,定期保存任务的执行状态,以便在故障后能够快速恢复。...
Savepoints: Versioning State End-to-End Consistency and the Stream Processor as a Database Flink Performance: the Yahoo! Streaming Benchmark Conclusion Chapter 6 Batch Is a Special Case of ...
2. **容错机制**:Flink的检查点(Checkpoints)和保存点(Savepoints)是其强大容错能力的关键。1.14.4可能对这些机制进行了增强,确保在故障发生时能快速恢复到一致状态。 3. **状态后端**:Flink支持多种状态...
当进行如集群升级、维护操作等计划外的服务中断时,通过SavePoints保存的任务执行状态快照能够使任务在重启后从断点处继续执行,而不会丢失数据或产生不准确的计算结果。这极大地提高了运维的灵活性和可靠性。 从...
Savepoints则允许用户在任何时间点手动保存作业状态,方便作业的迁移和重启。 6. **状态管理与存储** Flink支持多种State Backend,如MemoryBackend、FileBackend、RocksDB等,不同的State Backend在性能、持久化...
Savepoints则是用户触发的,可以用于在不丢失状态的情况下升级或停止/重启作业。 5. **连接器和格式** Flink提供了丰富的连接器,如Kafka、HDFS、RabbitMQ等,用于数据输入和输出。同时,它支持多种数据格式,如...
3. 保护点(Savepoints):保护点是在事务中创建,提供细粒度事务控制。 三、JDBC 4.0(JSR-221) JDBC 4.0是Java Database Connectivity的第四代规范,提供了许多新的功能和改进。核心接口包括: 1. 驱动接口:...
- **--use-savepoints**:使用 savepoints 减少采集 metadata 所需的时间,需要 SUPER 权限。 #### 五、结论 通过上述介绍可以看出,Mydumper 是一款功能强大的 MySQL 备份工具,尤其适用于需要快速备份大型数据库...
Flink的容错机制基于状态快照(Checkpoints)和保存点(Savepoints),确保即使在节点故障时也能恢复到一致状态,从而实现高可用性。 Flink的DataStream API用于处理无界和有界数据流,而DataSet API则针对批处理...
5. **Checkpoints and Savepoints**:Flink提供了强一致性的检查点和保存点机制,确保在系统故障时能够恢复到一致状态,实现容错处理。 6. ** fault tolerance**:Flink通过分布式快照实现容错,即使在集群部分节点...
在事务处理中,回滚段(rollback segments)和保存点(savepoints)也扮演着重要角色。回滚段用于存储undo信息,而保存点允许在事务内部设置临时的提交点,可以部分回滚到保存点而不影响整个事务。 总的来说,MySQL...
- **Savepoints**:用户可以手动触发,用于在升级或调整作业时保存状态。 - **Exactly-once语义**:通过与检查点和两阶段提交相结合,Flink能够在大多数场景下实现精确一次的处理保证。 4. **连接器与格式**: -...
此外,Flink支持状态管理和容错机制,如检查点(Checkpoints)和保存点(Savepoints),以确保在出现故障时能够恢复数据流的状态。 在Linux环境下,你还可以通过设置守护进程(daemon)来启动Flink服务,使其在后台...
1. **容错机制**:Flink提供了状态备份和恢复的机制,如检查点(Checkpoints)和保存点(Savepoints)。通过合理配置检查点间隔和持久化存储,可以在系统故障时快速恢复到一致性状态。 2. **并行度调整**:根据数据...
Checkpointing和Savepoints是实现这种容错的关键,它们可以定期保存计算的中间状态,以便在系统出现故障时恢复。 **5. 实时大数据处理** Flink以其强大的实时处理能力而闻名。它可以处理无限的数据流,同时保证低...
Flink的Checkpoints和Savepoints机制被用来定期保存作业状态,以便在系统故障时快速恢复。而通过优化Checkpoint间隔和减少State的大小,可以有效降低延迟。对于状态管理,Blink(Flink的一个分支)引入了更高效的 ...