如何實現ArcSDE的集群功能

2021-04-18 09:53:47 字數 1583 閱讀 3482

從上述內容可以看出,arcsde實際上只是連線空間資料和資料庫的乙個「橋」,資料庫角度理解,它只是資料庫當中的一系列表。因此單從arcsde來講,它並沒有集群功能的。但在實際應用中經常會要求系統高可用性,需要實現空間資料的集群功能,通常是通過輔助手段解決的,本文就在這方面進行一些探索。 有兩種方式實現arcsde的集群功能: 1.採用arcsde的直連方式,通過資料庫的集群功能實現; 2.採用非直連方式,通過編碼實現; 三、arcsde的直連方式實現集群功能 arcsde的直連方式是由客戶端介面直接把空間請求轉換成sql命令傳送到rdbms上,並解釋返回的資料,這種方式不需要通過arcsde的應用伺服器,因此arcsde的服務不需要啟動,這種方式下的集群功能實際上是通過資料庫的集群功能實現的。這種方式下的客戶端和伺服器通訊都是通過sql命令進行,因此需要在客戶機上安裝資料庫的客戶端。 如何使用: 這種方式下使用不需要任何額外的編碼實現,但需要注意的是連線引數的設定上,如下所示設定(oracle): 1.伺服器名稱(server):不用填寫。 2.服務埠(service):sde:資料庫型別。比如:如果是oracle10g,則sde:racle10g 3.資料庫(database):根據不同的dbms決定是否要填。oracle系列不用填,而sqlserver需要填寫。 4.使用者名稱(username):需要填寫的。 5.密碼(password):密碼@伺服器名稱。例如:[email protected]。 結構圖:

侷限性: 這種使用方式是把空間運算的壓力部分轉移到了客戶端,因此每個客戶端需要安裝資料庫的客戶端,通過資料庫的集群技術實現arcsde的集群,因此這種方式對客戶端的配置要求較其它方式高,而且在unix的客戶端機器上有侷限,如hp-unix和ibm aix的64位unix系統下不能實現,因為使用這些arcsde資料的客戶端如arcims等不是乙個真正的64位應用軟體,而是32位應用。而在64位的作業系統下要求有32位的資料庫客戶端,而資料庫廠商往往沒有提供。 64 位處理器相對於32位處理器的優勢在於解決了記憶體限制和資料訪問的問題,因為64位處理器能超過32位處理器4gb記憶體限制,它們能儲存更大數量的資料在主記憶體,提供對資料的直接訪問和快速處理。另外,64位的處理器能處理的資料和執行的指令集是32位處理器的2倍,當處理要求高精度複雜的計算時,訪問64位資料(相對於32位)的優勢明顯。 四、arcsde編碼方式實現集群功能 arcsde編碼實現集群功能的思路就是通過程式監聽實現了集群的資料庫狀態,然後實現arcsde的自啟動。 監聽任務:資料庫服務是否正常如宕機、斷網;應用伺服器是否正常如宕機、斷網。 如何實現(以arcims/oracle/weblogic 應用為例): 1、安裝與配置好資料庫集群; 2、在arcims的伺服器上安裝arcsde,此時,arcsde與資料庫是分開部署的,安裝arcsde所需的資料庫例項是虛擬實例如sf; 3、編寫好監聽程式,部署在arcims的機器上; 結構圖(以arcims/oracle/weblogic 應用為例):

來自:http://blog.csdn.net/yaoxiao83/archive/2008/06/09/2526383.aspx

類似linux tail n的功能如何實現

如果檔案非常大,如何快速的取到檔案的最後n行資料呢?使用strace 命令跟蹤下,發現如下的輸出 strace tail 1000 test.log 2 1 grep lseek lseek 3,0,seek cur 0 lseek 3,0,seek end 52876697 lseek 3,528...

RubyChina如何實現喜歡功能?

如 實現的 解析如下 在topics show.html.erb頁面中,有如下 likeable tag topic 具體 如下 def likeable tag likeable return if likeable.blank?label 人喜歡 if likeable.likes count ...

APICloud如何實現登入功能

要求 1 把表單裡面的使用者名稱和密碼與雲伺服器的資料庫表裡面的資訊做比對 2 如果登入成功則跳轉到另乙個頁面,另乙個頁面接收使用者資訊 3 不成功就返回提示資訊 html頁面 登入 註冊忘記密碼 qq登入 效果如下 js 如下 登入 function los user,pass 查詢資料 quer...