SPHiveDB數(shù)據(jù)庫服務(wù)器
在 share nothing 的架構(gòu)中,如果數(shù)據(jù)規(guī)模很大,為了提高可用性,通常采用數(shù)據(jù)庫分片(database sharding)的策略。常見的分片策略是按主鍵把數(shù)據(jù)分散到不同的數(shù)據(jù)庫中。在使用常規(guī)的 RDBMS 的場景中,分片策略中使用的數(shù)據(jù)庫個(gè)數(shù)通常在100以下。在某些特殊的場景中,可能希望采用更極端的分片方法,比如在類似地址本這種應(yīng)用中,可以為每個(gè)用 戶創(chuàng)建一個(gè)數(shù)據(jù)庫。
SPHiveDB 就是為這種極端的分片方法而實(shí)現(xiàn)的一個(gè)數(shù)據(jù)庫服務(wù)器。SPHiveDB 基于 sqlite ,用 JSONRPC over HTTP 為 sqlite 提供了網(wǎng)絡(luò)訪問接口。為了能夠支持大量的數(shù)據(jù)庫實(shí)例,SPHiveDB 把多個(gè) sqlite 數(shù)據(jù)庫合并保存到一個(gè)文件中;支持同時(shí)使用多個(gè)數(shù)據(jù)庫文件。
評(píng)論
圖片
表情
