Apache.Ignite.NET通过ODBC查询键/值数据

时间:2018-02-14 06:28:18

标签: .net ignite

Ignite(以及其他)用例“内存中的键/值存储”和“通过ODBC的SQL”。我想知道这些用例是否可以合并。

让我们使用这个模型:

class Person
{
    public string Name { get; set; }
    public int Age { get; set; }
}

在键/值存储中添加“人物”:

using (var ignite = Ignition.Start())
{
    var cache = ignite.GetOrCreateCache<int, Person>("person-cache");
    cache.Put(1, new Person { Name = "Test", Age=7 });
}

现在,我可以做一些像

这样的事情
SELECT * FROM Person; 

通过ODBC连接?如果是,非常感谢C#/ Ignite.NET中的代码示例。 或者这是不可能的,因为我们是在谈论完全独立的数据存储/缓存吗?

1 个答案:

答案 0 :(得分:4)

当然,你可以用Apache Ignite来做。 有三件事要做:

  1. 使用所需的SQL字段更新Person模型:

    Picasso.with(HomeActivity.this).setLoggingEnabled(true); 
    
  2. 将SQL查询类型(人员类型)添加到CacheConfiguration

  3. 访问表格时,不要忘记使用带引号的模式名称(=缓存名称):

    class Person
    {
        [QuerySqlField(IsIndexed = true)]
        public string Name { get; set; }
    
        [QuerySqlField]
        public int Age { get; set; }
    }
    
  4. 谢谢你, 阿列克谢