码迷,mamicode.com
首页 > 其他好文 > 详细

Aerospike C客户端手册———查询—次索引管理

时间:2015-04-28 11:44:45      阅读:157      评论:0      收藏:0      [点我收藏+]

标签:分布式   nosql   内存数据库   aerospike   shard-nothing   

次索引管理

Aerospike C客户端提供在数据库中创建和删除次索引的能力。

目前,次索引可用namespace、set、bin三者名称的组合来创建,可用于创建索引的bin数值类型是整型(integer)或字符串(string)。若一个次索引被定义在包含整型数值的、名称为“x"的bin上,那么只有包含bin "x"且bin数值为整型的记录被索引。其它包含bin "x"但数据不是整型的记录不被索引。

索引管理调用被提交到Aerospike集群中的任一节点,信息将被自动地传播到剩余节点。

次索引的创建和删除是“昂贵”的操作,应当作管理任务执行,而不是当作应用运行时任务。Aerospike提供许多工具,比如aql,来创建、删除、管理与监控次索引。本章节说明的API被提供用来构建这些工具与其它工具。

下面是创建次索引的操作。每一个操作均指定namespace、set、bin和一个名称,唯一地在namespace中标识次索引。

  • aerospike_index_integer_create() — 在整型(integer)数值bin上创建索引。
  • aerospike_index_string_create() — 在字符串(string)数值bin上创建索引。

后面的代码片断引用自示例目录【examples/query_examples】

请先阅读【创建连接】章节内容,理解如何建立与集群的连接。

下面代码将在名称为“binX“的bin上创建一个整型(integer)索引,被创建索引的记录属于的namespace名称为“test”、set名称为“test-set”,索引标识为“idx_binX”。

as_error err;

if (aerospike_index_integer_create(&as, &err, NULL, "test", "demoset",
        "binX", "idx_binX") != AEROSPIKE_OK) {
    LOG("aerospike_index_integer_create() returned %d - %s", err.code,
            err.message);
    return false;
}

删除次索引的操作是aerospike_index_remove(),它需要使用nammespace和次索引名称。

as_error err;

aerospike_index_remove(&as, &err, NULL, "test", "idx_binX");

译       者: 歪脖大肚子Q
 

Aerospike C客户端手册———查询—次索引管理

标签:分布式   nosql   内存数据库   aerospike   shard-nothing   

原文地址:http://blog.csdn.net/jj_tyro/article/details/45333461

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!