我是一位對所有主要關係數據庫(Oracle,MS SQL Server,MySQL,...)有極高經驗的高級數據庫開發人員,但我是NoSQL世界的新手。最近我的公司決定使用Apache Cassandra數據庫。我現在正在學習這幾個星期,並且提出了以下問題:在Cassandra數據庫中編寫存儲過程
Q>我們可以在Cassandra數據庫中創建一個存儲過程或函數嗎?如果是,Cassandra是否提供自己的編程語言(如Oralce的PL/SQL)?如果它沒有自己的語言,我們可以使用什麼語言?它是Java嗎?如果是Java,我們是否需要單獨安裝Java?或者它與Cassandra一起安裝並內置於其中,可以在存儲過程中使用?
好的,謝謝你的回答。還有一個問題,如果我們可以在Cassandra中編寫UDF或觸發器,我們使用什麼語言來編寫代碼?如果它是Java,我們可以像一個簡單的Java函數那樣編寫,或者,我們必須創建一個Java類?我們該如何編譯代碼? Cassandra是否已經構建了對Java的支持,以便它可以處理自己的編譯? –
默認情況下,Cassandra 2.2及更高版本支持在java和javascript中定義函數。其他腳本語言(如Python,Ruby和Scala)可以通過向類路徑添加JAR來添加。對於觸發器,你需要用java編寫它,並在類路徑中包含一個jar(我建議遠離觸發器!它們用於高級用例,它們的一般用法可能意味着你設計的模式錯誤)。 –