2017-04-18 46 views
1

- >表:卡桑德拉創建自定義指數誤差拋出java.lang.ClassNotFoundException

[email protected]:coba> CREATE TABLE data(
     ... nim int, 
     ... nama text, 
     ... alamat text, 
     ... PRIMARY KEY (nim, alamat) 
     ...); 

- >賺指數:

CREATE CUSTOM INDEX cari_alamat ON coba.data (alamat) USING 'org.apache.cassandra.index.sasi.SASIIndex'; 

- >錯誤:

ServerError: java.lang.RuntimeException: java.lang.ClassNotFoundException: org.apache.cassandra.index.sasi.SASIIndex 

- >我會很高興,如果你能幫助我

- >謝謝你

+0

你在運行什麼版本的cassandra? –

+0

在Cassandra 3.4和更高版本中,可以使用輔助索引的新實現SSTable Attached Secondary Indexes(SASI) –

回答

2

正如最初所預料的那樣,我認爲你運行的cassandra版本低於3.4。

(這就是爲什麼我問的版本)

我嘗試過了,並得到了在3.0.10了同樣的錯誤:

cqlsh:test> CREATE CUSTOM INDEX cari_alamat ON test.data (alamat) USING 'org.apache.cassandra.index.sasi.SASIIndex'; 
ConfigurationException: Unable to find custom indexer class 'org.apache.cassandra.index.sasi.SASIIndex' 

理論上你可以實現自己的有: Cassandra Custom Secondary Index

但我想這只是更容易升級。

也知道可能有一些錯誤與薩西指標:

SASI Indexes in Cassandra seem to have some bugs

但我想這是更好的搜索卡桑德拉吉拉爲這一個,這只是一個小的警告。