真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

關(guān)于nosqljdbc的信息

有誰知道,NoSQL數(shù)據(jù)庫有沒有像關(guān)系數(shù)據(jù)庫的JDBC那樣的接口??請介紹下

Membase

思茅網(wǎng)站建設(shè)公司成都創(chuàng)新互聯(lián)公司,思茅網(wǎng)站設(shè)計制作,有大型網(wǎng)站制作公司豐富經(jīng)驗。已為思茅上1000家提供企業(yè)網(wǎng)站建設(shè)服務(wù)。企業(yè)網(wǎng)站搭建\成都外貿(mào)網(wǎng)站制作要多少錢,請找那個售后服務(wù)好的思茅做網(wǎng)站的公司定做!

Membase 是 NoSQL 家族的一個新的重量級的成員。Membase是開源項目,源代碼采用了Apache2.0的使用許可。該項目托管在GitHub.Source tarballs上,可以下載beta版本的Linux二進(jìn)制包。該產(chǎn)品主要是由North Scale的memcached核心團(tuán)隊成員開發(fā)完成,其中還包括Zynga和NHN這兩個主要貢獻(xiàn)者的工程師,這兩個組織都是很大的在線游戲和社區(qū)網(wǎng)絡(luò)空間的供應(yīng)商。

Membase容易安裝、操作,可以從單節(jié)點方便的擴(kuò)展到集群,而且為memcached(有線協(xié)議的兼容性)實現(xiàn)了即插即用功能,在應(yīng)用方面為開發(fā)者和經(jīng)營者提供了一個比較低的門檻。做為緩存解決方案,Memcached已經(jīng)在不同類型的領(lǐng)域(特別是大容量的Web應(yīng)用)有了廣泛的使用,其中 Memcached的部分基礎(chǔ)代碼被直接應(yīng)用到了Membase服務(wù)器的前端。

通過兼容多種編程語言和框架,Membase具備了很好的復(fù)用性。在安裝和配置方面,Membase提供了有效的圖形化界面和編程接口,包括可配置 的告警信息。

Membase的目標(biāo)是提供對外的線性擴(kuò)展能力,包括為了增加集群容量,可以針對統(tǒng)一的節(jié)點進(jìn)行復(fù)制。 另外,對存儲的數(shù)據(jù)進(jìn)行再分配仍然是必要的。

這方面的一個有趣的特性是NoSQL解決方案所承諾的可預(yù)測的性能,類準(zhǔn)確性的延遲和吞吐量。通過如下方式可以獲得上面提到的特性:

◆ 自動將在線數(shù)據(jù)遷移到低延遲的存儲介質(zhì)的技術(shù)(內(nèi)存,固態(tài)硬盤,磁盤)

◆ 可選的寫操作一一異步,同步(基于復(fù)制,持久化)

◆ 反向通道再平衡[未來考慮支持]

◆ 多線程低鎖爭用

◆ 盡可能使用異步處理

◆ 自動實現(xiàn)重復(fù)數(shù)據(jù)刪除

◆ 動態(tài)再平衡現(xiàn)有集群

◆ 通過把數(shù)據(jù)復(fù)制到多個集群單元和支持快速失敗轉(zhuǎn)移來提供系統(tǒng)的高可用性。

MongoDB

MongoDB是一個介于關(guān)系數(shù)據(jù)庫和非關(guān)系數(shù)據(jù)庫之間的產(chǎn)品,是非關(guān)系數(shù)據(jù)庫當(dāng)中功能最豐富,最像關(guān)系數(shù)據(jù)庫的。他支持的數(shù)據(jù)結(jié)構(gòu)非常松散,是類似json的bjson格式,因此可以存儲比較復(fù)雜的數(shù)據(jù)類型。Mongo最大的特點是他支持的查詢語言非常強(qiáng)大,其語法有點類似于面向?qū)ο蟮牟樵冋Z言,幾乎可以實現(xiàn)類似關(guān)系數(shù)據(jù)庫單表查詢的絕大部分功能,而且還支持對數(shù)據(jù)建立索引。它的特點是高性能、易部署、易使用,存儲數(shù)據(jù)非常方便。

主要功能特性:

◆ 面向集合存儲,易存儲對象類型的數(shù)據(jù)

“面向集合”(Collenction-Oriented),意思是數(shù)據(jù)被分組存儲在數(shù)據(jù)集中,被稱為一個集合(Collenction)。每個 集合在數(shù)據(jù)庫中都有一個唯一的標(biāo)識名,并且可以包含無限數(shù)目的文檔。集合的概念類似關(guān)系型數(shù)據(jù)庫(RDBMS)里的表(table),不同的是它不需要定 義任何模式(schema)。

◆ 模式自由

模式自由(schema-free),意味著對于存儲在mongodb數(shù)據(jù)庫中的文件,我們不需要知道它的任何結(jié)構(gòu)定義。如果需要的話,你完全可以把不同結(jié)構(gòu)的文件存儲在同一個數(shù)據(jù)庫里。

◆支持動態(tài)查詢

◆支持完全索引,包含內(nèi)部對象

◆支持查詢

◆支持復(fù)制和故障恢復(fù)

◆使用高效的二進(jìn)制數(shù)據(jù)存儲,包括大型對象(如視頻等)

◆自動處理碎片,以支持云計算層次的擴(kuò)展性

◆支持RUBY,PYTHON,JAVA,C++,PHP等多種語言

◆文件存儲格式為BSON(一種JSON的擴(kuò)展)

BSON(Binary Serialized document Format)存儲形式是指:存儲在集合中的文檔,被存儲為鍵-值對的形式。鍵用于唯一標(biāo)識一個文檔,為字符串類型,而值則可以是各種復(fù)雜的文件類型。

◆可通過網(wǎng)絡(luò)訪問

MongoDB服務(wù)端可運行在Linux、Windows或OS X平臺,支持32位和64位應(yīng)用,默認(rèn)端口為27017。推薦運行在64位平臺,因為MongoDB在32位模式運行時支持的最大文件尺寸為2GB。

MongoDB把數(shù)據(jù)存儲在文件中(默認(rèn)路徑為:/data/db),為提高效率使用內(nèi)存映射文件進(jìn)行管理。

Hypertable

Hypertable是一個開源、高性能、可伸縮的數(shù)據(jù)庫,它采用與Google的Bigtable相似的模型。在過去數(shù)年中,Google為在PC集群 上運行的可伸縮計算基礎(chǔ)設(shè)施設(shè)計建造了三個關(guān)鍵部分。第一個關(guān)鍵的基礎(chǔ)設(shè)施是Google File System(GFS),這是一個高可用的文件系統(tǒng),提供了一個全局的命名空間。它通過跨機(jī)器(和跨機(jī)架)的文件數(shù)據(jù)復(fù)制來達(dá)到高可用性,并因此免受傳統(tǒng) 文件存儲系統(tǒng)無法避免的許多失敗的影響,比如電源、內(nèi)存和網(wǎng)絡(luò)端口等失敗。第二個基礎(chǔ)設(shè)施是名為Map-Reduce的計算框架,它與GFS緊密協(xié)作,幫 助處理收集到的海量數(shù)據(jù)。第三個基礎(chǔ)設(shè)施是Bigtable,它是傳統(tǒng)數(shù)據(jù)庫的替代。Bigtable讓你可以通過一些主鍵來組織海量數(shù)據(jù),并實現(xiàn)高效的 查詢。Hypertable是Bigtable的一個開源實現(xiàn),并且根據(jù)我們的想法進(jìn)行了一些改進(jìn)。

Apache Cassandra

Apache Cassandra是一套開源分布式Key-Value存儲系統(tǒng)。它最初由Facebook開發(fā),用于儲存特別大的數(shù)據(jù)。Facebook在使用此系統(tǒng)。

主要特性:

◆ 分布式

◆ 基于column的結(jié)構(gòu)化

◆ 高伸展性

Cassandra的主要特點就是它不是一個數(shù)據(jù)庫,而是由一堆數(shù)據(jù)庫節(jié)點共同構(gòu)成的一個分布式網(wǎng)絡(luò)服務(wù),對Cassandra 的一個寫操作,會被復(fù)制到其他節(jié)點上去,對Cassandra的讀操作,也會被路由到某個節(jié)點上面去讀取。對于一個Cassandra群集來說,擴(kuò)展性能 是比較簡單的事情,只管在群集里面添加節(jié)點就可以了。

Cassandra是一個混合型的非關(guān)系的數(shù)據(jù)庫,類似于Google的BigTable。其主要功能比 Dynomite(分布式的Key-Value存 儲系統(tǒng))更豐富,但支持度卻不如文檔存儲MongoDB(介于關(guān)系數(shù)據(jù)庫和非關(guān)系數(shù)據(jù)庫之間的開源產(chǎn)品,是非關(guān)系數(shù)據(jù)庫當(dāng)中功能最豐富,最像關(guān)系數(shù)據(jù)庫 的。Cassandra最初由Facebook開發(fā),后轉(zhuǎn)變成了開源項目。它是一個網(wǎng)絡(luò)社交云計算方面理想的數(shù)據(jù)庫。以Amazon專有的完全分布式的Dynamo為基礎(chǔ),結(jié)合了Google BigTable基于列族(Column Family)的數(shù)據(jù)模型。P2P去中心化的存儲。很多方面都可以稱之為Dynamo 2.0。

CouchDB

所用語言: Erlang

特點:DB一致性,易于使用

使用許可: Apache

協(xié)議: HTTP/REST

雙向數(shù)據(jù)復(fù)制,持續(xù)進(jìn)行或臨時處理,處理時帶沖突檢查,因此,采用的是master-master復(fù)制

MVCC – 寫操作不阻塞讀操作

可保存文件之前的版本

Crash-only(可靠的)設(shè)計

需要不時地進(jìn)行數(shù)據(jù)壓縮

視圖:嵌入式 映射/減少

格式化視圖:列表顯示

支持進(jìn)行服務(wù)器端文檔驗證

支持認(rèn)證

根據(jù)變化實時更新

支持附件處理

因此, CouchApps(獨立的 js應(yīng)用程序)

需要 jQuery程序庫

最佳應(yīng)用場景:適用于數(shù)據(jù)變化較少,執(zhí)行預(yù)定義查詢,進(jìn)行數(shù)據(jù)統(tǒng)計的應(yīng)用程序。適用于需要提供數(shù)據(jù)版本支持的應(yīng)用程序。

例如:CRM、CMS系統(tǒng)。 master-master復(fù)制對于多站點部署是非常有用的。

和其他數(shù)據(jù)庫比較,其突出特點是:

◆ 模式靈活 :使用Cassandra,像文檔存儲,你不必提前解決記錄中的字段。你可以在系統(tǒng)運行時隨意的添加或移除字段。這是一個驚人的效率提升,特別是在大型部 署上。

◆ 真正的可擴(kuò)展性 :Cassandra是純粹意義上的水平擴(kuò)展。為給集群添加更多容量,可以指向另一臺電腦。你不必重啟任何進(jìn)程,改變應(yīng)用查詢,或手動遷移任何數(shù)據(jù)。

◆ 多數(shù)據(jù)中心識別 :你可以調(diào)整你的節(jié)點布局來避免某一個數(shù)據(jù)中心起火,一個備用的數(shù)據(jù)中心將至少有每條記錄的完全復(fù)制。

◆ 范圍查詢 :如果你不喜歡全部的鍵值查詢,則可以設(shè)置鍵的范圍來查詢。

◆ 列表數(shù)據(jù)結(jié)構(gòu) :在混合模式可以將超級列添加到5維。對于每個用戶的索引,這是非常方便的。

◆ 分布式寫操作 :有可以在任何地方任何時間集中讀或?qū)懭魏螖?shù)據(jù)。并且不會有任何單點失敗。

NoSQL如何實現(xiàn)數(shù)據(jù)的增刪改查?

package basic;

import java.sql.Connection;

import java.sql.DriverManager;

import java.sql.PreparedStatement;

import java.sql.ResultSet;

import java.sql.SQLException;

import java.sql.Statement;

public class JDBC {

public void findAll() {

try {

// 獲得數(shù)據(jù)庫驅(qū)動

//由于長時間不寫,驅(qū)動名和URL都忘記了,不知道對不對,你應(yīng)該知道的,自己改一下的哈

String url = "jdbc:oracle:thin:@localhost:1521:XE";

String userName = "system";

String password = "system";

Class.forName("oracle.jdbc.driver.OracleDriver");

// 創(chuàng)建連接

Connection conn = DriverManager.getConnection(url, userName,

password);

// 新建發(fā)送sql語句的對象

Statement st = conn.createStatement();

// 執(zhí)行sql

String sql = "select * from users";

ResultSet rs = st.executeQuery(sql);

// 處理結(jié)果

while(rs.next()){

//這個地方就是給你的封裝類屬性賦值

System.out.println("UserName:"+rs.getString(0));

}

// 關(guān)閉連接

rs.close();

st.close();

conn.close();

} catch (ClassNotFoundException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

public void delete(){

try {

//步驟還是那六個步驟,前邊的兩步是一樣的

String url = "jdbc:oracle:thin:@localhost:1521:XE";

String userName = "system";

String password = "system";

Class.forName("oracle.jdbc.driver.OracleDriver");

Connection conn = DriverManager.getConnection(url,userName,password);

//這里的發(fā)送sql語句的對象是PreparedStatement,成為預(yù)處理sql對象,因為按條件刪除是需要不定值的

String sql = "delete from users where id = ?";

PreparedStatement ps = conn.prepareStatement(sql);

ps.setInt(0, 1);

int row = ps.executeUpdate();

if(row!=0){

System.out.println("刪除成功!");

}

// 關(guān)閉連接

rs.close();

st.close();

conn.close();

} catch (ClassNotFoundException e) {

// TODO Auto-generated catch block

e.printStackTrace();

} catch (SQLException e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

}

}

用SQLsever 2008 連接Java 用eclipse 編譯出現(xiàn)警告 Failed to load the sqljdbc_auth.dll

解壓之后有4個jar包,導(dǎo)進(jìn)項目就行了。

還有個辦法就是添加數(shù)據(jù)源,不用驅(qū)動文件。

警告: Failed to load the sqljdbc_auth.dll cause : no sqljdbc_auth in java.library.path

就是sqljdbc.auth.dll沒找到,要把它所有目錄放到系統(tǒng)變量Path或直接放到windows\System32下,不能把它打包到j(luò)ar里,也不是放在classpath上

no sqljdbc_auth in java.library.path 沒有為集成身份驗證配置驅(qū)動程序~在線等。。

URL當(dāng)中用了integratedSecurity=true;就不能用SQLServer的用戶名和密碼登錄了.你去掉試試。詳細(xì)看這里。blog.csdn.net/outofmemo/article/details/52549379

若要連接到遠(yuǎn)程服務(wù)器上的默認(rèn)實例,請使用:

String url = "jdbc:sqlserver://MyServer:integratedSecurity=true;"

若要連接到服務(wù)器上的特定端口,請使用:

String url = "jdbc:sqlserver://Myserver:1533;integratedSecurity=true;"

若要連接到服務(wù)器上的指定實例,請使用:

String url = "jdbc:sqlserver://MyServer;instanceName=INSTANCE1;integratedSecurity=true;"

若要連接到服務(wù)器上的特定數(shù)據(jù)庫,請使用:

String url = "jdbc:sqlserver://MyServer;database=AdventureWorks;integratedSecurity=true;"


文章標(biāo)題:關(guān)于nosqljdbc的信息
網(wǎng)頁網(wǎng)址:http://weahome.cn/article/dsssoio.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部