json - 生成规范化关系数据的非规范化视图
问题描述
我参与了一个正在开发基于 CQRS 的应用程序的项目。应用程序将从 NoSQL 存储中获取其所有数据,并在其中以非规范化格式检索数据。但是,实际数据驻留在关系系统中。NoSQL 存储用作关系数据的视图。此视图应定期更新(可能每隔几分钟)。
我不确定应该使用什么技术来自动化这个更新过程。非规范化视图是可以在 SQL 查询中生成的 JSON,但这会使更新过程数据库供应商特定,这将成为一个问题。我尝试使用 Pentaho Kettle,但构建一个真正的非规范化结构被证明是非常乏味和耗时的。
考虑到它应该易于维护和适应,什么技术是合适的?
我正在考虑编写 Python 脚本,但我不确定它们的可维护性。
NoSQL 存储是 Couchbase,用于开发的 RDBMS 是 MariaDB。
解决方案
一个似乎运作良好的解决方案是仅使用 Pentaho Kettle 来查询数据库和更新 NoSQL 存储。JSON 作为查询的一部分生成(大多数 JSON 函数在 RDBMS 之间进行标准化,所以这很好)。因为我的数据库用户不能使用JSON_ARRAYAGG
所有子查询都表示为序列化的 JSON,它在 Kettle 转换中被解析并替换为实际的 JSON。
推荐阅读
- python - Python请求在一定时间后检索网站的html
- python - Python fernet 无效令牌
- alexa - 如何在屏幕中获取当前呈现的文档的令牌?
- javascript - 结束然后在反应中创建一个表格行
- windows - 如何在执行 .vbs 脚本检查数字锁定启用时隐藏/摆脱显示 .cmd 控制台和图标 powershell?
- docker - 桌面 Docker 和手动代理配置错误
- node.js - 来自网络的文件的 node-sass 自定义导入器不起作用
- c++ - 如何使用 read() 从管道中读取
- django - Django 和 DataTables 在初始 10 个结果后忽略读取、编辑、删除按钮
- python - 我试图创建一个琐事游戏。我正在寻找的输出有问题