Java MemSQL和H2比较

Java MemSQL和H2比较,java,database,h2,singlestore,Java,Database,H2,Singlestore,我正在考虑从H2迁移到MemSQL,如有任何意见,我将不胜感激: 我的应用程序必须非常快速地同时查询多达3亿行的大型表。为了实现这一点,我一直在使用H2内存数据库 我目前正在使用H2数据库,它允许我在H2内存数据库中创建指向MySQL数据库的链接表。这在将数据从MySQL加载到H2时非常有用 我可以在MemSQL中创建链接表吗?我在在线MemSQL文档中看不到对此的引用 另一个挑战是,我需要在多个服务器上运行多个应用程序实例,因此,让MemSQL在多个服务器上分布运行是非常有吸引力的,而不必在服

我正在考虑从H2迁移到MemSQL,如有任何意见,我将不胜感激:

我的应用程序必须非常快速地同时查询多达3亿行的大型表。为了实现这一点,我一直在使用H2内存数据库

我目前正在使用H2数据库,它允许我在H2内存数据库中创建指向MySQL数据库的链接表。这在将数据从MySQL加载到H2时非常有用

我可以在MemSQL中创建链接表吗?我在在线MemSQL文档中看不到对此的引用

另一个挑战是,我需要在多个服务器上运行多个应用程序实例,因此,让MemSQL在多个服务器上分布运行是非常有吸引力的,而不必在服务器上复制应用程序的每个JVM实例中的H2数据库。通过TCP将H2的一个实例运行到其他服务器将太慢

MemSQL的另一个优点是,显然没有锁定,查询被编译成本地C++,可以加快它们的速度。


有人将MemSQL性能与H2进行过比较吗?-在现实世界的测试中,我没有在网上找到任何东西。

这里是MemSQL的Mark L。我想回答您的一些问题,并提供额外的帮助,以获取您所询问的信息/基准

MemSQL确实通过JDBC连接器支持链接表——实际上,这种连接器与MySQL一样工作——因此,您将不会遇到任何问题。在分布式模式下运行MemSQL确实将提供一个巨大的性能优势,并且您将看到吞吐量和延迟方面的一些显著改进。我发现H2和MemSQL之间没有直接的比较——但是,你可以通过查看MemSQL和MySQL的比较得出一些间接的结论,因为我们从网站上获得了H2和MySQL的比较数据。根据我们的现场经验,我希望您在使用MemSQL时能够看到显著的性能提升

总的来说,有几点值得注意:在MemSQL分布式版本中,有几个优势是H2无法实现的:由于无锁索引,读操作永远不会阻塞写操作,完整的MVCC(H2只能在单个框中执行此操作),以及突出显示的数据自动分片。在所有功能中,自动分片可能是最适合您的用例的功能-H2不能自动分片数据,并且在分布式时具有这种能力显然是一个很大的优势,即使两者的速度相等。正如我所提到的,使用分布式MemSQL会更快,而且与H2的多个实例相比更易于管理

无论如何,我们非常乐意帮助您证明这一点!请随时通过memsql.com上的电子邮件-larosa联系我