Sequoiadb是支持sql的,SequoiaSql是解析sql語言,Sequoiadb來執行SequoiaSql解析出的語言並執行相關命令,SequoiaSql相當於客戶端,Sequoiadb相當於後端。用戶可以通過JDBC驅動連接SequoiaSql進行應用程序開發。
之前的文章介紹了Sequoiadb對接SequoiaSql應用開發實踐,本文將介紹更加簡單的一種方式進行對接。以前的對接方式爲 http://blog.csdn.net/u014439239/article/details/78403941
前提:
1)本教程已經默認安裝Sequoiadb(安裝可參考Sequoiadb官網);
2)Sequoiadb安裝包和SequoiaSQL安裝包可去官網下載 http://download.sequoiadb.com/cn/index-cat_id-2 。
1.安裝SequoiaSQL
首先去Sequoiadb官網下載安裝包
SequoiaSQL-oltp-2.8.4-x86_64-enterprise-installer.tar.gz
在root用戶下解壓安裝包
[root@sdb01~]# tar -zxvf SequoiaSQL-oltp-2.8.4-x86_64-enterprise-installer.tar.gz
在root用戶下執行安裝
[root@sdb01~]# ./SequoiaSQL-oltp-2.8.4-x86_64-enterprise-installer.run
Note:
所有安裝參數均使用默認值即可。在安裝的時候要指定安裝路徑,使用默認目錄: /opt/SequoiaSQLoltp
2.安裝SequoiaSQL服務切換到sdbadmin用戶下,創建名稱爲testinst的實例
[sdbadmin@sdb2bin]$/opt/SequoiaSQLoltp/bin/ sdb_sql_ctl addinst testinst -D /opt/sdb_date
Adding instancetestinst ...
Ok
Note:
- D 參數爲指定數據目錄,這裏是opt目錄下指定數據文件爲sdb_date
啓動testinst這實例
[sdbadmin@sdb2bin]$/opt/SequoiaSQLoltp/bin/sdb_sql_ctl start testinst
Starting instancetestinst ...
ok (PID: 24206)
創建一個叫做testdb的數據庫
[sdbadmin@sdb2bin]$/opt/SequoiaSQLoltp/bin/sdb_sql_ctl createdb testdb testinst
Creating databasetestinst ...
ok
進入到創建的testdb的庫中
[sdbadmin@sdb2opt]$ /opt/SequoiaSQLoltp/bin/psql -p 5432 testdb
創建ForeignData Wrapper
testdb=# create extension sdb_fdw;
創建SequoiaDB服務,這裏可指定多個協調節點。其中address爲機器IP,11810爲協調節點端口號,有設置鑑權需要定製用戶名和密碼。
testdb=# create server sdb_server foreigndata wrapper sdb_fdw options(address '127.0.0.1', service '11810');
創建SequoiaDB映射表,真實表存在於SequoiaDB之內
testdb=# create foreign table test ( name text, num int ) server sdb_server options( collectionspace 'testcs', collection 'testcl', decimal 'on');
Note:
其中collectionspace指定爲SequoiaDB中所對應的集合空間,collection對應爲SequoiaDB中所對應的集合,decimal 'on' 表示支持decimal參數。
執行查詢語句即可進行查詢:
testdb=#select * from test limit 1 ;
Note:
其中記錄保存在Sequoiadb中
通過Sequoiadb和SequoiaSql進行對接,能夠使得Sequoiadb支持標準SQl語法。JDBC 是 Sun 提供的一套數據庫編程接口API 函數,由 Java 語言編寫的類、界面組成。用 JDBC 寫的程序能夠自動地將 SQL 語句傳送給相應的數據庫管理系統。通過對接SequoiaSql的JDBC接口,能夠使開發者儘快上手不必掌握複雜的API,降低了學習成本,是衆多開發者的首選。