我们建立了一个新的数据融合C ++算法,它使用SQLite作为内部数据库 但是,我们希望每个多个C ++线程都执行并行数据库写入,而SQLite不能这样做。
所以我们现在正在研究MySQL,它允许每个多个C ++线程进行并行数据库写入 但是,MySQL非GPL许可证成本太高,我们不想依赖Oracle支持MySQL,因为我们的数据融合C ++算法很快就会获得美国专利。
它们是否是MySQL的任何替代品,它允许多个C ++线程中的每一个都进行并行关系数据库写入,而没有像ORACLE MySQL这样昂贵的许可策略?
到目前为止,我开始研究PostgreSQL的BSD许可证和Sybase开源关系数据库。
有人可以告诉我们PostgreSQL或SYbase是否是正确的方向?
答案 0 :(得分:3)
PostgreSQL绝对是MySQL的一个很好的替代品。
在我看来,PostgreSQL实际上是更好的选择,无论如何看看MySQL没有做到的所有事情以及他们仍然没有的SQL功能的数量。
但这又是我的个人意见。
在许可方面,Postgres许可证的商业用途确实比GPL更灵活。
PostgreSQL社区对邮件列表的支持非常出色 - 我不知道Sybase世界中是否有类似的东西(实际上我不知道Sybase现在是OpenSource)。
答案 1 :(得分:1)
应该有很多选择。如果您不担心跨平台,可以尝试使用SQL Server Express。你可以在生产中使用它受到一些限制(我认为这个限制与你可以安装它的硬件类型有关)。还有一个Oracle的快速版本,具有类似的使用限制。
在开源世界中,我认为你应该可以在嵌入模式下使用Firebird(也就是说,无需安装单独的网络服务器进程)。我没有在生产中使用它,但它已经存在很多年并且通过SO看,它似乎很受欢迎。它使用MPL,因此不存在许可风险。
为了完整起见,您可以考虑使用SAP和Ingres数据库系统中的MaxDB。 MaxDB似乎是一个非常强大的DBMS,但是当我多年前尝试它(版本7.6)时,它似乎很难用到。我从未和Ingres合作(或听说过任何人合作过),但显然它是开源的,可以自由使用。
与“a_horse_with_no_name”类似,我不知道有一个Sybase的开源版本,尽管我可能错过了它。
菲尔