我有2个带有SQL Server数据库的.NET应用程序,系统A&乙 系统A现在通过数据库 - 数据库方法(ETL)直接连接到系统B. ETL包从系统A数据库中读取数据,并在进行一些转换后将其复制到系统B数据库。聚合。整合是好的,生活很简单。
我们公司推出了WSO2中间件ESB,并决定避免任何两个系统之间的任何直接集成,因此,上述集成应该使用WSO2集成技术进行重新开发,并且应该通过中间件。
我的问题:使用WSO2实现此场景的最佳架构/设计是什么?
ETL从系统A读取数据,然后将其放在中间件中,然后系统B从中间件数据库读取?这里增值的是什么?
中间件连接到系统A,将数据保存在中间件内的临时存储器中,然后系统B从中间的那个临时数据库读取,然后清除数据?这里增值的是什么?
某些中间件组件(WSO2有没有)从系统A读取数据,并进行所需的转换,然后将其存储在系统B中?那可能吗?
还有别的吗?
答案 0 :(得分:0)
将数据保存在WSO2 ESB中并不是ESB进行调解的主要责任。让我们看看我们如何使用其他WSO2产品并满足要求。
如果您的要求是避免直接集成到数据库。您可以使用WSO2数据服务服务器[1]并将当前数据库公开为REST服务等API。所以你的软件应用程序可以通过REST集成。在这种方法中,系统A和B连接到WSO2DSS以连接DB。如果您还需要连接A和B,则可以使用WSO2ESB并将系统A,B和WSO2DSS连接到WSO2ESB。
WSO2DSS的作用是将您的数据库公开为服务,并且它不支持ETL操作。如果您想进行ETL操作和分析操作,例如批量分析,实时分析等,那么您需要使用WSO2DAS [2]及其完全不同的实现。
[1] https://wso2.com/products/data-services-server/
[2] https://docs.wso2.com/display/DAS300/WSO2+Data+Analytics+Server+Documentation