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
- 會話層技術-session會話Session
- 10、flask-會話-sessionFlask會話Session
- 次世代的會話管理專案 Spring Session會話SpringSession
- ZooKeeper如何模擬會話失效(Session Expired)會話Session
- 令牌Token和會話Session原理與攻略會話Session
- MQTT 持久會話與 Clean Session 詳解MQQT會話Session
- nodejs學習08——會話控制 session cookie tokenNodeJS會話SessionCookie
- oracle 會話(session)被鎖瞭解決方法Oracle會話Session
- 巨杉核心筆記(一)| SequoiaDB 會話(session)簡介筆記會話Session
- python+pytest介面自動化(10)-session會話保持PythonSession會話
- 使用dbms_monitor.session_trace_enable跟蹤一個會話Session會話
- PHP 會話(Session)如何實現使用者登陸功能PHP會話Session
- CWE-384: Session Fixation 會話固定漏洞有哪些修補方法?Session會話
- python requests模組session的使用建議及整個會話中的所有cookie的方法PythonSession會話Cookie
- 通俗易懂的 SAP ABAP 會話管理(Session Management)概念講解,包含具體的例項會話Session
- Tomcat通過自帶的Cluster方式實現Session會話共享環境操作記錄TomcatSession會話
- Cassandra Vnodes在Cassandra 2.0-4.0中的演進
- 安全性測試入門 (四):Session Hijacking 使用者會話劫持的攻擊和防禦Session會話
- Spring MVC 獲取三個域(request請求域,session 會話域,application 應用域)物件的方式SpringMVCSession會話APP物件
- Cassandra與Kafka的整合Kafka
- 會說話的ABAP report
- ZooKeeper 會話的祕密會話
- SAP Spartacus 會使用 Session timeout 嗎?Session
- 會話管理會話
- Apache Cassandra 的 Spring 資料ApacheSpring
- Cassandra 概況
- 為什麼sleeping的會話會造成阻塞會話
- oracle的會話如何自殺?Oracle會話
- Session會話筆記,維護一個客戶端和伺服器之間關聯的一種技術Session會話筆記客戶端伺服器
- MQTT-會話MQQT會話
- TensorFlow學習之會話Sesstion()和互動會話InterativeSesstion()會話
- 為什麼sleeping的會話會造成阻塞(2)會話
- Cassandra 資料模型模型
- 理解cassandra架構架構
- buffer busy waits引起的會話突增AI會話
- byobu複用SSH會話的技巧會話
- MySQL: kill 會話的實現原理MySql會話