我有一个已经移植到现代系统并使用berkeley数据库的遗留系统。它是与开放的cobol编译的。
在以前的系统中,为了从简单的Web前端使用序列化的固定数据CISAM文件,每天一次将其转换为Microsoft数据库(单向) 我想创建一个新的Web前端我想要数据实时更新...
问题是,伯克利数据库是关键值数据库,并不支持SQL。
所以这里的问题是 我应该创建一个使用Berkeley数据库向Web前端提供数据的Web服务吗? OR 我应该与关系数据库(MySQL和PostgreSQL)使用Mysql同步Berkeley DB
在第一种情况下同步伯克利数据库有不会是一个同步issue.But问题是灵活性是非常有限...例如由collumn排序它不是索引需要自定义排序功能...总结一些领域需要读取所有记录数据,然后手动总结..
在第二种情况下,简单的方法是只读取并转换为数据库。我无法找出一种方法来检查已更新......插入或删除。
但我倾向于更第二种方法..使用以下算法 检查每5分钟的文件modifation日期... 已修改打开文件...然后让所有的钥匙,并比较缓存键数组。 然后遍历每条记录并检查数据散列是否与缓存散列相同。
然后删除/插入..
还有其他想法吗?
你在用什么语言工作?什么工具? – 2011-03-14 16:33:32
open cobol和java .. – GorillaApe 2011-03-14 18:23:05
首先,我听说过任何结合cobol,java和bsddb的人。 Berkely Db最常用于本机C,以及Python等高级语言。 – 2011-04-25 00:47:06