我们正在考虑使用内存数据库(例如 Apache Ignite)来处理性能密集的类 BI 操作。因此,作为(非常原始的)示例,我用来自 csv 文件(14 列)的 250.000 条记录填充了 Apache Ignite,并执行了一些分组操作。以前,我还使用相同的数据对 MS SQL-Server 进行了一些性能测试。
有趣且出乎意料的是,MS SQL-Server 需要大约 0.25 秒来执行此操作,而使用 Apache Ignite 则需要 1-2 秒。
1,我一直认为Apache Ignite不仅是分布式计算的好选择,而且由于其面向内存的架构,与传统关系数据库相比,性能也有所提升。真的吗?为什么在我的例子中这么慢?
2、我是否以错误的方式使用了 Apache Ignite 或者我应该使用一些额外的调整选项吗?
这是我在示例中使用的源代码:
private static Connection conn = null;
private static Statement stmt = null;
private static ResultSet rs = null;
private static void initialize() throws ClassNotFoundException, SQLException
{
// Register JDBC driver.
Class.forName("org.apache.ignite.IgniteJdbcThinDriver");
// Create database tables.
stmt = conn.createStatement();
// Create table
stmt.executeUpdate("CREATE TABLE PIVOT_TEST (" +
" REGION …Run Code Online (Sandbox Code Playgroud)