我有2个现有的应用程序,我想以某种方式桥接。两者都有相似的域(产品目录),但是第一个应用程序使用NOSQL文档存储进行记录,第二个应用程序使用SQL表。
第一表中的示例记录看起来像:
{
"productId": 123,
"sku": "abc",
"packageSizes": {
"container": 20,
"pallet": 50
}
}
第二个域中的同一项目是ProductItem
表中的1行:
| id | sku |
| 123 | abc |
ProductPackageSizes
表中的2行:
| productId | type | size |
| 123 | container | 20 |
| 123 | pallet | 50 |
当前的系统是完全独立的,但是我希望它每当在NOSQL应用程序中创建记录时,都可以在SQL应用程序中创建相同的项目。
我可以为此编写一个off 脚本,这只是基于当前数据的样子来创建它。但是,我有兴趣知道是否有任何既定的设计模式可以描述这种转变?特别是如果将来有新的packageSizes
或其他关系。
您在SQL数据库中没有任何外键?
您可以在ProductPackageSizes
表中使用与ProductItem
相关的外键,并且在您想要在NOSQL数据库中创建新记录时,您可以分配
"productId": 123,"sku": "abc"
在ProductItem
中,喜欢:
| id | sku |
| 123 | abc |
和分配
"packageSizes": {
"container": 20,
"pallet": 50 }
用外键(例如P_ID)到ProductPackageSizes
,例如:
| productId | type | size |P_id
| 123 | container | 20 |123
| 123 | pallet | 50 |123
希望这会有所帮助:)