支持強大的GIS地理信息系統
GIS地理信息系統是指一個空間數據庫,它通過SQL語言高效的進行空間數據管理、數量測量與幾何拓撲分析對地球表層(包括大氣層)空間中的地理分布數據進行采集、儲存、管理、運算、分析、顯示和描述。TeleDB透過集群化的PostGis插件,使其更好的支持強大的GIS地理信息系統。
說明PostGIS插件不僅實現了Open Geospatial Consortium 所提出的基本要素類(點、線、面、多點、多線、多面等)的SQL實現參考。PostGIS還能使用well-known text與well-known binary在數據庫中存儲空間對象。well-known text是一種用文本表示空間對象的注記方法,well-known是一種用二進制流表示空間對象的存儲方法。
GIS地理信息系統目前支持提供了如下的空間特性:
- 定義了一些基本的集合實體類型。
- 定義了一系列的函數和操作符來實現幾何類型的操作和運算。
- 引入空間數據索引。
異構數據復制能力
在實際業務中,會涉及到非常多的TeleDB同其他數據庫,包括PostgreSQL,MySQL,Oracle等的數據同步的需求。為了滿足TeleDB和其它數據庫包括PostgreSQL,MySQL,Oracle等實現數據同步,TeleDB開發了一款性能高效,安全可靠,功能完善的異構數據庫復制工具。通過異構數據復制工具,讓數據能夠很好的在多個數據庫中實現共享。
異構數據復制邏輯圖如下:
異構數據復制原理主要通過數據實時同步、數據一致性同步和多種不同的數據同步方式組成。
-
數據實時同步 : 同步數據需準實時的(分鐘級)由源庫同步到目標庫。
-
數據一致性同步:異構數據庫同步具備高可靠性,當發生斷網、服務器重啟、服務器宕機一段時間恢復后等場景下,保障同步數據的最終一致性。
-
數據同步方式:TeleDB支持對所有數據的全量同步和對變化數據的增量同步,以及配置同步任務。
- 全量同步:一般在系統遷移中,有歷史數據的遷移,一次需要支持高效快速的將歷史數據遷移到新系統的能力,稱為全量同步。一般在全量同步完成后,會切換為下文提到的增量同步模式。
- 增量同步:同步工具實時跟蹤數據改變情況,并及時將增量數據同步到目標庫。
- 定時同步:支持配置類似定時任務,支持周期性向目標進行數據同步。
集群負載均衡能力
負載均衡是將網絡或應用流量有效分配到多個服務器或節點上,以實現資源優化利用、提高系統響應速度和可用性的技術。TeleDB已集成了LVS(Linux Virtual Server)負載均衡組件,支持把應用負載均分到任意多個協調節點(Coordinator)上,業務可以通過唯一的VIP地址連接到TeleDB。
TeleDB集成LVS負載均衡組件,其有如下優勢:
提高系統并發處理能力
- 均衡負載分布:通過自動負載均衡,可以將客戶端的請求均衡地分配到多個CN節點上,避免了單一節點的過載情況,從而提高了整個系統的并發處理能力。
- 資源高效利用:負載均衡確保每個CN節點的資源都能得到充分利用,避免了資源的閑置和浪費。
增強系統可用性和可靠性
- 故障自動切換:當某個CN節點發生故障時,負載均衡機制可以自動將請求路由到其他正常的CN節點,確保業務不中斷,增強了系統的可用性。
優化用戶體驗
- 減少響應時間:負載均衡可以減少用戶請求的等待時間,提高響應速度,從而提升用戶體驗。
- 提高系統穩定性:通過均衡負載,避免了系統因過載而出現的性能下降或崩潰情況,提高了系統的穩定性。
簡化運維管理流程
- 自動化運維:負載均衡的自動化特性減輕了運維人員的負擔,降低了人為錯誤的風險。
- 動態調整:當系統負載發生變化時,負載均衡機制可以自動調整策略,以適應新的負載情況,無需人工干預。
支持擴展
水平擴展:通過增加CN節點的方式可以輕松應對業務量的增長。負載均衡機制則確保了新增節點能夠迅速接入并承擔負載。
當某個CN停機,或者異常時,系統會自動把異常CN從負載均衡中剔除,確保業務訪問到正常的節點。
支持負載均衡的容災,當主節點宕機,流量會自動切換到備機,安全可靠。更多的負載均衡組件持續接入中。
LVS組件需滿足如下要求:
- 提供VIP。
- Linux內核需要在2.6版本以上。
集群部署要求:
- 加入負載均衡的CN端口必須一致。
支持JSON數據類型
TeleDB支持非關系型數據類型 JSON,JSON 數據類型是用來存儲 JSON(JavaScript Object Notation)數據的,其核心優勢在于能強制要求每個被存儲的值符合JSON規則,且支持存儲JSON 相關的函數和操作符。JSON 數據類型有json 和 jsonb,且兩種數據類型接受完全相同的值集合作為輸入,其主要的實際區別是效率。
- json數據類型存儲輸入文本的精準拷貝,處理函數必須在每次執行時必須重新解析該數據。
- jsonb數據被存儲在一種分解好的二進制格式中,它在輸入時要稍慢一些,因為需要做附加的轉換。但是 jsonb在處理時要快很多,因為不需要解析。jsonb也支持索引,這也是一個令人矚目的優勢。