Cassandra的Session會話
前言
驅動程式採用的是
com.datastax.cassandra cassandra-driver-core 3.5.0
預設建立
預設情況下,session是沒有指向任何的keyspace。當我們在查詢的時候需要指定keyspace字首
Session session = cluster.connect();
ResultSet rs = session.execute("select release_version from system.local");
這裡就指定keyspace為system,查詢的表為local
指定keyspace建立
還有一種方法在建立session時指定keyspace,如下
Session session = cluster.connect("system");
ResultSet rs = session.execute("select release_version from local");
session.execute("select * from otherKeyspace.otherTable where id = 1");
在建立session的時候指定了keyspace,然後在執行查詢語句的時候就可以不用寫字首。但是如果要查其他keyspace裡面的資料的時候就不得不帶上字首。
也許你想過動態的建立session,每個keyspace一個session,可以,demo如下:
Session session1 = cluster.connect("ks1");
Session session2 = cluster.connect("ks2");
這種方式不是不行,但是需要注意的是,連線池是在session級別上建立的,每建立一個session將會額外的消耗一部分系統資源。
而且,由官網介紹,在使用命名的session時,在某些情況可能會導致意外的執行緒阻塞問題。
如果採用的是全非同步模式,建議使用沒有keyspace的名稱空間。
注:如果使用use來改變keyspace,這將會改變session的預設的keyspace。那麼多如果是在多執行緒共享的情況下,某一個執行緒突然改變了keyspace,這將會導致其他執行緒出現問題
總結
透過上面的瞭解,建議採用單個session,不使用keyspace命名,在查詢的時候手動指定keyspace字首
關於內部類的詳細文章可以參考目錄 [smxknife's Java內部類]
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/2144/viewspace-2800578/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Session會話Session會話
- Oracle 會話(Session)Oracle會話Session
- 會話技術之 Session會話Session
- Session會話管理(PHP,Apacha)Session會話PHP
- oracle session(會話) 跟蹤OracleSession會話
- 【會話】Oracle kill session系列會話OracleSession
- 會話等待(Session Waits)會話SessionAI
- 【會話】V$SESSION檢視會話Session
- 我的會話(session)在做什麼?會話Session
- 我的會話session在做什麼?會話Session
- session會話的底層實現方式Session會話
- 我的會話(session)在做什麼? (轉)會話Session
- 批量kill殺死某些會話session的plsql會話SessionSQL
- 會話統計資訊session_pkg會話Session
- 次世代的會話管理專案 Spring Session會話SpringSession
- 令牌Token和會話Session原理與攻略會話Session
- ZooKeeper如何模擬會話失效(Session Expired)會話Session
- MQTT 持久會話與 Clean Session 詳解MQQT會話Session
- Session會話與Cookie簡單說明Session會話Cookie
- 檢視當前會話session id方法:會話Session
- oracle如何找出登入會話v$session的IP地址?Oracle會話Session
- 檢視歷史會話等待事件對應的session資訊會話事件Session
- 會話技術 cookie和session 學習筆記會話CookieSession筆記
- Kill session 和orakill 殺會話及程式總結Session會話
- PHP會話(Session)實現使用者登陸功能PHP會話Session
- Java Web(三) 會話機制,Cookie和Session詳解JavaWeb會話CookieSession
- Oracle 檢視當前會話 SESSION ID 方法 說明Oracle會話Session
- oracle獲取當前會話(程式)session id(sid)Oracle會話Session
- 利用dbms_support包查詢當前會話的session_id會話Session
- v$session/v$process檢視涉及的相關會話資訊的查詢Session會話
- 大話Oracle中的kill sessionOracleSession
- PHP 會話(Session)如何實現使用者登陸功能PHP會話Session
- 巨杉核心筆記(一)| SequoiaDB 會話(session)簡介筆記會話Session
- 使用dbms_monitor.session_trace_enable跟蹤一個會話Session會話
- CWE-384: Session Fixation 會話固定漏洞有哪些修補方法?Session會話
- python+pytest介面自動化(10)-session會話保持PythonSession會話
- 同一Tomcat下不同Web應用之間共享Session會話TomcatWebSession會話
- 根據v$session 之status及logon_time有選擇kill某些session會話SessionGo會話