從實踐出發,騰訊雲深刻解讀雲端數據庫技術

下載網站:www.SyncNavigator.CN 
 客服QQ1793040
----------------------------------------------------------前端


關於HKROnline SyncNavigator 註冊機價格的問題數據庫

 

 

HKROnline SyncNavigator 8.4.1 非破解版 註冊機 受權激活教程
 小程序

 

 

 

最近一直在研究數據庫同步的問題,在網上查了不少資料,也請教了不少人,找到了一種經過快照複製的方法。研究了一番後發現以前就是用的這個方法,效果不是很好,果斷放棄。通過了一番尋覓和他人指點,最後從一位熱心網友那裏得知一款很好用的軟件—— SyncNavigator。後端

 

 

好東西就要拿出來跟你們分享,因此今天向你們介紹一下這款軟件,及其一些使用方法。下面先看看它有什麼強大的功能吧!緩存

 

SyncNavigator的基本功能:服務器

 

自動同步數據/定時同步數據
不管是實時同步/24小時不間斷同步,仍是根據計劃任務(每小時/每日/每週/等)定時自動同步都能徹底勝任。網絡

完整支持 Microsoft SQL Server
完整支持 Microsoft SQL Server 2000 2005 2008 數據庫類型。並能在不一樣數據庫版本之間相互同步數據。架構

支持 MySQL 4.1 以上版本
支持 MySQL 4.1 5.0 5.1 5.4 5.5。並能在不一樣數據庫版本之間相互同步數據。運維

無人值守和故障自動恢復
當數據庫故障或網絡故障之後,無需人工干預(或操做)自動恢復同步並確保數據徹底準確,可靠。異步

同構數據庫同步/異構數據庫同步
SQL Server to SQL Server, MySQL to MySQL, SQL Server to MySQL 等都能輕鬆實現。

斷點續傳和增量同步
當同步完成(或中斷)後,再次同步時能繼續上一次的位置增量同步,避免每次都須要從頭開始的問題。

毋庸置疑,數據已經成爲信息化社會最關鍵的基礎元素之一。離開數據的支持,大數據、人工智能等技術就都沒有了用武之地,信息化、智能化也就成了空談。而數據庫則是存儲和承載數據的重要場所,所以,其重要性不言而喻。隨着雲計算的飛速發展,雲端數據庫技術開始被廣泛應用。雲端數據庫是在雲計算的大背景下發展起來的一種新興的共享基礎架構的方法,它極大地加強了數據庫的存儲能力,消除了人員、硬件、軟件的重複配置,讓軟、硬件升級變得更加容易,並且具備高可擴展性、高可用性、採用多租形式和支持資源有效分發等特色。能夠說,掌握雲端數據庫技術將是如今以至將來,數據庫技術人員所必備的技能。

10月27日,爲了幫助數據庫技術人員可以更好的掌握雲端數據庫技術,騰訊雲攜手中國專業的IT技術社區CSDN在深圳市騰訊大廈2樓多功能廳舉辦「賦能業務創新-雲數據庫最佳應用實踐」沙龍,以雲端數據庫具體的應用實踐,爲與會的衆多數據庫技術人員分享了包括如何設計出高可用的MySQL系統,解讀最流行的Redis緩存類數據庫在雲端的技術運用以及Elassticsearch調優在內的應用實踐,並深度結合小程序和珍愛網在利用騰訊云云數據庫過程當中的實踐經驗,介紹如何在下降開發與運維成本的狀況下,打造爆款應用程序。

從實踐出發,騰訊雲深刻解讀雲端數據庫技術

 

騰訊高級工程師王甲坤首先爲擠滿整個會場的觀衆介紹瞭如何設計高可用的MySQL系統,王甲坤認爲,高可用的關鍵指標是RPO和RTO,而設計高可用的MySQL系統,一般有三種模式:

模式一,Shared Everthting方式:

基於單機存儲的模式,通常是針對單個主機,徹底透明共享CPU/MEMORY/IO,並行處理能力是較差的。

模式二,Shared Disk方式:

基於共享存儲的模式,各個處理單元使用本身的私有CPU和Memory,共享磁盤系統。典型的表明Oracle Rac,它是數據共享,可經過增長節點來提升並行處理的能力,擴展能力較好。

模式三,Shared Nothing方式:

基於數據複製的模式,各個處理單元都有本身私有的CPU/內存/硬盤等,不存在共享資源,相似於MPP(大規模並行處理)模式,各處理單元之間經過協議通訊,並行處理和擴展能力更好。

從實踐出發,騰訊雲深刻解讀雲端數據庫技術

 

對於基礎設施的高可用,一般採用同城雙活、兩地三中心等方式,而對於MySQL系統的高可用,首先備份是最基礎最保底的保障,建議必須保留。

MySQL備份分爲邏輯備份、物理備份和快照三類。騰訊雲主要採用基於xtrabackup開發的實現可並行備份加流式壓縮的物理備份,成功率與速度都比較高。另外,騰訊雲MySQL基礎版,架構於CVM和CBS之上,支持快照備份功能。其次,基於數據複製模式是MySQL高可用的常見熱備方案,經過MySQL複製協議和故障自助發現與轉移來實現數據在節點間的一致性。 騰訊雲MySQL先支持最多掛載5個只讀實例,來知足讀寫分離的場景。

王甲坤還介紹了複製相關的Binlog知識,主從複製的大致流程,以及三種複製方式:異步、半同步、強同步。而對於在複製中SQL線程的瓶頸,經過各個版本MySQL的並行複製功能也能獲得解決。但DRBD(Distributed Replicated Block Device),這款基於塊設備級在遠程服務器直接同步和鏡像數據的工具則是MySQL官方文檔手冊中做爲推薦的高可用的方案之一。

從實踐出發,騰訊雲深刻解讀雲端數據庫技術

 

王甲坤提到,因爲MySQL並無提供故障轉移功能,通常須要藉助第三方工具進行故障恢復。業界廣泛採用的方案是Keepalived、MMM和MHA,但都有必定的缺點,而騰訊雲用的是本身實踐的一套故障檢測,不存在單點的問題,能作到故障檢測恢復到30秒鐘之內,大大提升了MySQL的高可用。王甲坤最後還介紹了保證PXC、 MGC、MGR等另外三種MySQL高可用架構。

騰訊云云數據庫Redis產品負責人鄒鵬針對大規模Redis集羣架構設計進行了講解,他表示,Redis的使命就是更快更簡單,遵循這個使命的Redis數據庫的排名已經超過了ES了,位列第七。Redis的特色,第一是快,能夠達到單核10W QPS,第二是in-memory cache,即Redis不用建表。鄒鵬認爲,Redis主要場景仍是在於緩存,若是拋開遊戲的場景,80%的場景都是緩存,因此它仍是緩存數據庫。

鄒鵬接着介紹了騰訊雲基於社區4.0版本+自研打造的Redis4.0 Cluster分佈式數據庫。Redis官方的Cluster具備兩個特徵:Sharding以及自治管理。而騰訊認爲Redis Cluster必定要作一個Proxy方案,第一源生集羣版必須有一個智能客戶端支持,這是由於智能客戶端支持有限,沒法直接遷移到集羣版,而客戶端須要感知後端架構,並進行網絡流量隔離,承載更豐富的功能,減小對Redis代碼的入侵,而若是沒有代理這些都不容易實現。

騰訊雲採用的Smart Proxy 方案,後端是官方源生的Cluster,徹底是自治的版本,並進行了一些優化。前端的智能客戶端會完成代理轉發,作大量定製化監控以及數據、節點的選擇判斷的狀況,再往前面就是LB,把全部細節都屏蔽到了後端。

從實踐出發,騰訊雲深刻解讀雲端數據庫技術

 

在數據遷移方面,針對大Key和熱Key的遷移難題,騰訊雲經過採用訪問監控、Key分析、指標監控、慢查詢、告警配置、流量隔離等手段充分發揮Proxy的做用,從而解決了數據遷移中大Key和熱Key的問題,最終的架構如圖所示。

 

從實踐出發,騰訊雲深刻解讀雲端數據庫技術

 

鄒鵬還介紹了騰訊雲CKV,它是一種原生分佈式的集羣解決方案,突破單線程,時延只有0.2毫秒,但可使內存使用率提高15~25%。

從實踐出發,騰訊雲深刻解讀雲端數據庫技術

騰訊雲產品經理李曉慧以MongoDB在小遊戲中的實踐應用,分享了MongoDB在小遊戲開發方面爲開發者帶來的便利。李曉慧表示,遊戲開發中一個最主要的特色是需求變化很是快,由於在遊戲和開發不一樣的階段會加入一些新的元素黏住用戶,像一種道具的場景,就須要在遊戲上線的不一樣階段加載不一樣的道具,用傳統的關係型數據庫則須要對錶結構進行修改的DDL操做,而MongoDB不須要改變表結構,這對開發者是很是友好的。

李曉慧強調,如今大多數遊戲都會添加社交元素加強用戶的活躍度,黏住用戶。騰訊雲提供了地理位置索引以及配套的API,不須要在業務層操做,就可得到數據庫層的支持。對於海量數據,騰訊雲提供了分片的功能,例如遊戲開始上線時,其實並不知道業務上線須要的數據量。而當遊戲上線後期,因爲數據量的增多,若是用關係型數據庫的話,就避免不了進行分部分表擴容,而MongoDB提供了分片集羣,能夠在不影響業務的同時進行水平的擴容,這對運維來講是很是好的解決方案。至於運營分析,MongoDB源生即支持,開發者能夠直接套用。更重要的是,MongoDB支持JavaScript全棧MERN、MEAN。所以,MongoDB特別適合遊戲開發場景。

李曉慧還介紹瞭如何優化MongoDB的鏈接,她表示,首先,騰訊雲對MongoDB的鏈接進行了優化。MongoDB的鏈接其實分爲兩部分,第一部分是Mongos對前端的鏈接,第二部分是Mongos對後端的鏈接,有兩個關鍵參數,最小鏈接數參數minConnections 和鏈接IdleTime參數refreshRequirement的設置對於MongoDB的鏈接效率很是重要,針對這兩個參數,騰訊云爲開發者提供了可計算的公式,並建議對於refreshRequirement的參數設置至少是包含兩個鏈接峯值的頭。

其次,騰訊雲MongoDB經過讀寫分離策略減小了慢查詢, 從而將MongoDB的讀延時從官方版的85毫秒左右縮短到10毫秒左右,效率提高了將近9倍。

 

從實踐出發,騰訊雲深刻解讀雲端數據庫技術

 

第三,經過分片羣集,提供靈活可擴展的特性,從而大大減輕了運維人員的負擔。

 

從實踐出發,騰訊雲深刻解讀雲端數據庫技術

 

第四,對於令遊戲運維很是頭疼的庫表回檔方面, 騰訊雲MongoDB是惟一提供庫表回檔的,並且能夠支持細化到必定級別,對運維人員是很是方便的功能。

第五,在監控方面,騰訊雲MongoDB也是惟一支持表級監控,表級監控內容比較分散,有CRUD操做監控,請求時延監控,包括10毫秒到50毫秒,50毫秒到100毫秒,以及超過100毫秒三種力度。請求個數也有監控,還有比較重要的容量和記錄監控,騰訊雲MongoDB都支持。

針對目前火熱的小程序開發,李曉慧介紹了騰訊雲的TCB小遊戲解決方案,該方案能夠爲開發者提供完整的雲端流程,弱化後端和運維概念,無需開發者搭建後端服務。開發者能夠直接使用小程序的 JS-API 進行核心業務開發,便可實現小遊戲快速上線和迭代,還能夠根據自身需求建立多個環境,以用於開發、測試及生產等多種場景,而且每一個環境的資源是獨立且相互隔離的。這種方案特別適合我的開發者、初創團隊,對於成熟團隊的項目的話,能夠當即使用。

騰訊高級工程師陳曦則分享了Elasticsearch的調優經驗,陳曦首先介紹了Elasticsearch的基本原理。Elasticsearch是一個搜索引擎,它具備高性能、高可靠、易管理、易使用的特色,有很強大的綜合分析能力,能夠經過腳本進行復雜的計算。Elastic Stack是集數據採集、清洗、存儲、可視化爲一體的完整解決方案。ES有比較普遍的應用領域,主要的應用場景是日誌分析、數據分析統計,還有全文檢索,功能比較強大。Elasticsearch的數據模型以下圖所示。

從實踐出發,騰訊雲深刻解讀雲端數據庫技術

陳曦表示,Elasticsearch的調優主要基於三個層面:下降存儲成本、提高集羣穩定性和提升集羣性能。

在下降成本方面,也包括兩方面,一方面是對字段存儲的優化,另外一方面是對字符串字段的優化,在對倒排索引、行存、列存三個字段的存儲中,對於CPU監控這種場景,能夠經過關閉索引字段來進行存儲優化,對於統計分析場景,只需列存便可。而對於日誌類場景,則僅需行存便可。經過這樣的優化,行存的成本可以下降40%左右。

 

從實踐出發,騰訊雲深刻解讀雲端數據庫技術

對於字符串字段的優化,也是分兩部分,text和keyword,text能夠作分詞,而後對每一個詞均可以高排索引,拿一個詞能夠搜到一整段話。若是僅僅是想把文本存進去而且取出來的話,後面都是能夠去掉的。至於keywork,能夠模糊匹配,但不能拿一個詞搜索整段話,因爲它不須要作分詞,因此速度會比較快。

要提高集羣穩定性方面,最有效的方法就是控制index的分片數,陳曦介紹,一個index是由多個shard組成的,一個index有三個shard,分佈在不一樣節點上,一個請求寫幾百個幾千個文檔在裏面,當請求到達ES某個節點的時候,會計算對於幾千個文檔,分別屬於哪一個shard,而後這個時候會放到BulkQueue存儲中。BulkQueue的默認值是100,若是shard數量過大BulkQueue就很容易被填滿,shard數值太小的話,就沒法充分利用節點資源,陳曦給出的建議是100GB如下的index設置3-5個shard,但這並非能夠適用每一個場景,具體還要看業務的實際狀況。

在提高集羣性能方面,分爲四方面,一方面是控制index的副本數量,另外一個是優化持久性參數,第三方面是寫入方式優化,第四方面是查詢優化。

而騰訊雲是經過雲管平臺、下降存儲成本、提高集羣穩定性和提升集羣性能等四方面對ES進行優化。

首先,騰訊雲的雲管平臺是一套自動化運維繫統、它自己能夠預裝一些插件,包括中文分詞插件、SQL插件、數據導出插件等,系統會自動按照必定時間間隔建立index,而不需關心有多少index。此外,還經過Kibana、跨機房容災、Dedicated Master等方式,提高集羣的穩定性。

 

從實踐出發,騰訊雲深刻解讀雲端數據庫技術

 

在下降存儲成本方面,經過倒排索引內存優化、冷熱分離對存儲成本進行優化。實際上,在查詢過程當中,有一個詞典和一個倒排表,ES爲了加速查詢過程,把詞典華分紅一個個的block,前綴相同的詞能夠放到block裏面,前綴相同的前綴數會指向block,而實際上,在這個小範圍內一個匹配詞典就能夠了,這樣就能夠快速加大性能。

 

從實踐出發,騰訊雲深刻解讀雲端數據庫技術

冷熱分離是指,ES自己能夠對於每一個NODE加一些屬性在裏面,經過ES的一個命令能夠強制把一個表全部數據搬遷到指定的一個屬性的節點上面,因此在集體上架的時候能夠同時上兩個,用戶能夠在WEB界面配置哪類的index多久以後下降使用成本,騰訊雲後臺就有這樣一個調速器,會發送命令,從而下降用戶的使用成本。

 

從實踐出發,騰訊雲深刻解讀雲端數據庫技術

在提高集羣穩定方面,經過集羣均衡策略優化、自研限流功能,使得集羣穩定性獲得較大的提高。 集羣均衡策略是指在一般狀況下隨着業務的增加,ES默認會把大的Shard放在小的節點上面,新增的shard讀寫壓力就會比較大,這種狀況下就會形成單點過熱的問題,騰訊雲對此進行了優化,去掉重複上報的shardfailed信息,從而大大下降了Master的壓力。

 

從實踐出發,騰訊雲深刻解讀雲端數據庫技術

自研限流功能主要針對ES自己對於JVM判斷不許,在寫入量大的狀況下會致使OOM的狀況而推出的,爲此,騰訊雲作了一個曲線限流的功能。經過這個優化,有效避免了OOM狀況的出現。

 

從實踐出發,騰訊雲深刻解讀雲端數據庫技術

在查詢優化方面,騰訊雲ES系統能夠根據查詢到的數據量進行預估,超過必定量就不作緩存,從而避免了加載過大緩存,拖慢查詢速度的問題。

 

從實踐出發,騰訊雲深刻解讀雲端數據庫技術

 

來自珍愛網的DBA周耀榮最後一個登場,他分享了珍愛網雲數據庫的使用經驗,周耀榮首先談了本身對於雲數據庫與DBA之間關係的見解,並以幾個實例說明了雲數據庫的做用,他認爲, 雲上提供的服務就是重複性高的工做的標準化和自動化。

對於DBA來講,周耀榮認爲應該考慮六方面的問題,第一是從業務總體運維的角度,就是說當購買雲服務的時候差別性體如今哪裏,須要考慮清楚。第二是異常的處理,就是DBA須要具備異常處理的能力,這樣才能在雲數據庫時代仍然有競爭力。第三是性能容量管理,DBA要從整個業務的視角,對性能容量進行管理。第四是故障透視能力,故障的透視能力,是做爲DBA管理員很重要的能力。第五,架構規劃,好比高可用架構,要怎麼拆分,容災如何考慮,這都是須要DBA考慮的問題。第六,SQL上線審覈。當公司業務發生變動的時候,怎麼把控上線的風險會不會對數據形成誤刪除,這些都是須要DBA考慮的。

周耀榮總結到,規劃類的、優化類、主動管理類的工做,在將來比較長的一段時間內仍是須要DBA解決的,所以,DBA大可沒必要擔憂失業問題。

周耀榮最後給到場的觀衆分享了珍愛網目前在數據庫方面正在作和計劃要作的事情,談到了涉及的相關技術,併爲到場的觀衆展現了珍愛網在數據庫建設方面的成果。

 

從實踐出發,騰訊雲深刻解讀雲端數據庫技術

 

最後,沙龍活動在一片熱烈的掌聲中落下了帷幕,而騰訊雲+社區技術沙龍活動將會繼續延續下去,而下一站將是,對此感興趣的朋友們可千萬不要錯過啊!

相關文章
相關標籤/搜索