Aerospike C用戶端手冊———查詢—次索引管理,aerospike用戶端
次索引管理
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");
原文連結: http://www.aerospike.com/docs/client/c/usage/query/sindex.html
譯 者: 歪脖大肚子Q