目前项目有4个数据库a,b,c,d,
有数据转移的操作需要从a取数据插入b中
那么这个事务怎么控制。
网上查询的jta,两阶段事务效率很低,很多公司都不使用。
想问下现在对于这种情况一般怎么处理.
我用的是spring
目前项目有4个数据库a,b,c,d,
有数据转移的操作需要从a取数据插入b中
那么这个事务怎么控制。
网上查询的jta,两阶段事务效率很低,很多公司都不使用。
想问下现在对于这种情况一般怎么处理.
我用的是spring
Another resource already exists with name slaveDB - pick a different name
http://smallbee.iteye.com/blog/1056367
http://smallbee.iteye.com/blog/719585
严重反对使用JTA事务,那玩意儿从原理上来说就效率低。
不知道你用什么数据库,按说导库的话,写存储过程来的比较直接和方便——根本就不用java去处理这个事情。
推荐你使用bboss多数据库事务管理框架来托管多数据源事务:
http://yin-bp.iteye.com/blog/2065059
如果你只是做数据的转换,可以考虑采用开源的ETL工具,比如阿里的Otter, apatar(http://www.apatar.com/),总之google一下会有比较多。
如果需要有很多的业务逻辑处理的话,一般而言可以这样做:
1)数据抽取部分:读取数据,放入数据缓冲;
2)数据缓冲部分:可以考虑采用MQ等中间件的方式来实现;
3)数据加载部分:读取缓冲的数据,并加载到数据库。
实际上以上三个步骤也是E(数据抽取Extract)、T(数据传输Transfer)、L(数据加载Loading)的一种实现方式而已。
如果使用JTA的话,效率实际上是非常低的。
相关推荐
本示例主要讲解如何使用Spring Boot结合MyBatis实现多数据源切换,并确保AOP事务管理仍然有效。 首先,我们需要配置多数据源。在Spring Boot中,可以使用`DataSource`接口的实现类,如`HikariCP`或`Druid`,创建两...
6. **多数据源事务回滚**: - 提供了跨数据源的事务回滚能力,简化了系统设计,降低了处理多数据源时的复杂性。在除了分布式事务外的大多数情况下,只需考虑这个机制,就能保证事务的正确性。 在多租户SaaS架构中...
本资源针对的是Spring Boot动态多数据源和JTA(Java Transaction API)分布式事务的实现,对于初学者来说非常实用。下面我们将深入探讨这些知识点。 首先,让我们了解一下Spring Boot的多数据源。在许多业务场景下...
在IT行业中,多数据源事务处理是一个常见的挑战,特别是在分布式系统和微服务架构中。`JTA(Java Transaction API)`是Java平台提供的一种标准,用于处理跨多个数据存储的事务管理。这篇博客"多数据源事务jta测试...
springboot mybatis多数据源加事务嵌套 事务之间的调用 回滚 亲测可用 定义2个库分别建立 CREATE TABLE `user` ( `id` int(10) unsigned NOT NULL AUTO_INCREMENT COMMENT '用户编号', `user_name` varchar(25) ...
本主题将深入探讨如何利用SpringBoot结合Atomikos实现动态多数据源以及事务管理,并介绍两种切换数据源的方法。 首先,SpringBoot简化了传统Spring应用的初始化过程,它通过自动配置和starter包让开发者快速搭建...
SpringBoot作为一款轻量级的框架,提供了便捷的多数据源配置和分布式事务管理方案,使得开发者能够高效地管理和操作不同的数据库。本文将详细探讨SpringBoot如何实现多数据源以及分布式事务。 首先,我们要理解什么...
本教程将深入探讨如何在Spring Boot环境下实现多数据源操作及分布式事务管理,并加入对多线程的支持。 首先,我们来理解多数据源的概念。在大型系统中,往往需要连接多个数据库,如主库、从库、测试库等。Spring ...
在IT行业中,尤其是在大型分布式系统的设计与开发中,多数据源事务处理是一个常见的挑战。当一个应用程序需要连接并操作多个数据库以实现业务需求时,如何保证事务的一致性、隔离性和持久性,就显得尤为重要。本文将...
由于网上的多数据源事务的帖子大多是2010年以前的,现在spring都已经到4.X了,有些类已经弃用了。 原先很多都是用jotm实现的,但是由于spring的升级,totm的本地化实例那个类已经找不到了,所以我使用了atomikos。 ...
在分布式系统中,多数据源事务处理是一个复杂而关键的问题,因为不同的数据源可能分布在不同的服务器上,这就需要一种能够协调这些数据源的事务管理机制。"多数据源事务之解决方案jta+atomikos"这个主题正是针对这一...
在现代企业级应用开发中,分布式事务处理和多数据源管理是常见的需求。Spring Boot作为轻量级的Java开发框架,结合Atomikos这样的分布式事务管理器,可以有效地解决这些问题。本文将深入探讨如何在Spring Boot项目中...
在Spring框架中,多数据源事务管理是一项关键任务,特别是在大型企业级应用中,往往需要同时操作多个数据库。本篇文章将聚焦于如何结合Spring和JOTM(Java Open Transaction Manager)来实现多数据源的事务管理,...
每个数据源对应一个数据库连接池,并使用特定的数据源事务管理器。 6. **开源工具和库**:如Atomikos、Bitronix等事务管理器,以及MyBatis Plus、Hibernate等ORM框架,它们在处理分布式事务时提供了强大的支持。 7...
使用`PlatformTransactionManager`来处理多数据源的事务管理。需要为每个数据源创建一个事务管理器,并在`determineCurrentLookupKey()`返回的键值与之匹配。 ```java @Bean(name = "db1TransactionManager") ...
在Spring Boot应用中,整合JTA(Java Transaction API)实现多数据源事务管理是一个常见的需求,特别是在分布式系统中,为了确保数据的一致性和完整性。本文将深入探讨如何配置和使用Spring Boot与JTA来管理多个...
在现代企业级应用开发中,多数据源切换和分布式事务管理是常见的需求,尤其是在大型分布式系统中。Spring框架因其强大的依赖注入和AOP(面向切面编程)特性,成为Java领域首选的轻量级框架。Druid是一个优秀的数据库...
基于 SpringBoot 多数据源 动态数据源 主从分离 快速启动器 支持分布式事务。一个基于springboot的快速集成多数据源的启动器。支持 数据源分组 ,适用于多种场景 纯粹多库 读写分离 一主多从 混合模式。支持数据库...
本文将深入探讨如何在SpringBoot项目中配置多数据源,并实现数据源的动态切换,帮助你理解和掌握这一核心技能。 首先,我们理解"多数据源"的概念。在SpringBoot应用中,多数据源意味着系统能够连接并操作多个不同的...
本教程将探讨如何利用Spring Boot、Druid、Mybatis以及Atomikos来配置多数据源并实现分布式事务。 首先,Spring Boot是Java生态系统中的一个流行框架,它简化了设置和配置过程,使得开发人员可以快速启动新项目。在...