【发布时间】:2023-03-27 09:35:01
【问题描述】:
当我尝试访问二级索引时,Aerospike 抛出 AEROSPIKE_ERR_INDEX_NOT_READABLE 错误。使用以下语法创建索引
CREATE INDEX index_id ON test.class (id) STRING;
任何建议将不胜感激。
【问题讨论】:
标签: aerospike
当我尝试访问二级索引时,Aerospike 抛出 AEROSPIKE_ERR_INDEX_NOT_READABLE 错误。使用以下语法创建索引
CREATE INDEX index_id ON test.class (id) STRING;
任何建议将不胜感激。
【问题讨论】:
标签: aerospike
aql> create index id1 on ns1.testset (1) string;
OK, 1 index added.
aql> show indexes
+-------+-----+-----------+-----------+-------+-----------+------+----------+
| ns | bin | indextype | set | state | indexname | path | type |
+-------+-----+-----------+-----------+-------+-----------+------+----------+
| "ns1" | "1" | "NONE" | "testset" | "WO" | "id1" | "1" | "STRING" |
+-------+-----+-----------+-----------+-------+-----------+------+----------+
[127.0.0.1:3000] 1 row in set (0.001 secs)
+-------+-----+-----------+-----------+-------+-----------+------+----------+
| ns | bin | indextype | set | state | indexname | path | type |
+-------+-----+-----------+-----------+-------+-----------+------+----------+
| "ns1" | "1" | "NONE" | "testset" | "WO" | "id1" | "1" | "STRING" |
+-------+-----+-----------+-----------+-------+-----------+------+----------+
[172.14.10.12:3000] 1 row in set (0.002 secs)
OK
aql> show indexes
+-------+-----+-----------+-----------+-------+-----------+------+----------+
| ns | bin | indextype | set | state | indexname | path | type |
+-------+-----+-----------+-----------+-------+-----------+------+----------+
| "ns1" | "1" | "NONE" | "testset" | "RW" | "id1" | "1" | "STRING" |
+-------+-----+-----------+-----------+-------+-----------+------+----------+
[127.0.0.1:3000] 1 row in set (0.001 secs)
+-------+-----+-----------+-----------+-------+-----------+------+----------+
| ns | bin | indextype | set | state | indexname | path | type |
+-------+-----+-----------+-----------+-------+-----------+------+----------+
| "ns1" | "1" | "NONE" | "testset" | "RW" | "id1" | "1" | "STRING" |
+-------+-----+-----------+-----------+-------+-----------+------+----------+
[172.14.10.12:3000] 1 row in set (0.002 secs)
OK
注意:1)创建索引时不需要分号,但不会报错。所以:
aql> create index id1 on ns1.testset (1) string
将是正确的方法。
2) 一旦您发出创建索引的命令,根据数据大小,构建 SI 需要时间。检查状态:WO --> 索引尚不可读,但您可以插入记录,它们将被索引。当状态变为“RW”时 - 读/写 - 您可以进行 SI 查询。
您不必重新启动 Aerospike 服务器。
【讨论】:
重新启动 Aerospike 后,我可以使用新创建的索引。
【讨论】: