金璞:各位網友大家好!我是賽迪網技術應用編輯金璞,今天本來要來的David Axmark先生和周總現在正在路上,預計可能和遲一點跟網友們見面現在我們請陳慧女士做一個自我介紹。
陳慧:我是萬裡開源的系統工程師陳慧,很高興作客賽迪網。
金璞:因為David Axmark和周總還沒有來,前天的時候MySQL在中國研發中心成立的時候,我當時聽到您做了一個演講,也講了MySQL技術上的架構包括以後的發展方向之類的。今天先跟網友們講一講吧。
陳慧:我們萬裡開源是MySQL在中國唯一的代理,我們是基於Linux的平台進行發展,基於Linux開源軟件的提供商。大家比較熟悉的是TurboLinux,我們這次跟MySQL的合作希望一方面向先進國家比較先進的開源軟件學習一些先進經驗,希望通過跟他們的合作建立一個更完善的企業級的服務器平台。
下面我給大家介紹一下MySQL的主要技術特點。MySQL作為一個開源的數據庫,開源是它最大的特色,因為它所有的原代碼都是公布於眾的。每天在MySQL網站上有超過5萬次的下載,有那麼多用戶用MySQL,而且大家在使用過程如果發現BUG或者有一些需要改進的地方可以很快的反饋到MySQL公司,使得能夠幫助產品有一個進一步的優化。
另外,MySQL一直在三個方面不斷的努力,首先是它的性能。MySQL是一個非常快的數據庫系統。第二個就是它的可靠性,因為它是開源的,希望借助開源的方式增強可靠性。第三個就是MySQL的易用性,MySQL能夠保證任何沒有接觸過數據庫的人在15分鐘之內就學會用MySQL,就是非常簡單易用。
從MySQL的架構上還有一個比較特殊的地方,存儲是以可插取的存儲引擎存在的。大家知道要做成一個大而全的數據庫系統不是那麼容易的,因為每一個用戶需求可能不太一樣,看重數據庫的性能和其他的方面也不太一樣看重數據庫特色地方也不一樣。MySQL可插取的存儲引擎就有這樣的特性。比如說像商業版中支持比較好的Myizm,還有inodb,Ndb,不同的存儲引擎特點是不一樣的,比如 Myizm速度比較快,用戶可以根據不同的需求選取不同的存儲引擎,配置可以非常靈活。
金璞:我上次在發布會上聽說MySQL在中國現在有三個版本,可不可以介紹一下這三個版本在技術層面上、應用層面上有哪些區別嗎?
陳慧:現在在中國有三個產品,一個是PRO,它是一個企業級的數據庫,帶有復制功能、數據處理功能,就是基本上的數據庫完整的功能都有,它是單機的。第二個是集群版是CLUSTER,CLUSTER是當單機版的數據庫滿足不了企業級應用需求的時候我們需要通過多台服務器均衡負載提高並發性和性能,這是集群的。第三個Maxdb,它是和SAP合作的數據庫,主要應用在SAP上是一個比較特殊的應用。它的開發團隊、維護團隊不僅在Maxdb有,在SAP也有。
金璞:這三個是不是都是商業版還是個人版呢?
陳慧:Maxdb是一個開源的數據庫,開源社區有單獨的版本,但是功能上跟商業是完全一樣的,只不過在社區版沒有分這個產品那個產品,可以下載有。商業版是分了CLUSTER和PRO的。
金璞:三個版本上有不同的側重面,我是一個用戶有一個比較天真的想法,能不能把這三個數據庫的特色集合到最強大的完整版上?
陳慧:Maxdb和PRO和CLUSTER是沒有問題的,因為下載的社區版,如果買了CLUSTER已經包含了PRO的功能,這樣商業角度區分來說,Maxdb最開始是由SUN開發的數據庫系統,後來跟Maxdb合作,SUN是提供跟應用結合的技術,Maxdb主要提供在數據庫支持方面的一些技術。其實它跟Maxdb是不同的數據庫。金璞:SAP和MySQL的合作,是不是有想跟Orocle爭奪市場的意義呢?
陳慧:我覺得各有各的市場。
金璞:比如您提到的存儲系統可能會降低數據庫的速度,這樣的話MySQL在開發的過程中是怎樣確保自己以前開發的理念呢?
陳慧:你希望數據庫做的越來越可靠,可能某些方面是需要降低一些性能的。比如 MySQL中間有一個引擎叫Myzim(音)是不支持數據處理的。不僅僅是數據庫,操作的其他軟件也是一樣,在性能、可靠性、安全性等等方面都是有一個平衡的。MySQL希望盡量在添加新的功能以後還能夠保持快速的性能。因為它在數據庫中有一個優化器進行優化。關於集群,應該說集群是能夠提高MySQL的性能的,包括我們做的測試,在中國的用戶通過合理的配置集群的速度比單機版要快一些。
金璞:性能在增加,包括支持的東西會使數據庫變得非常復雜,如果結構越復雜穩定性就會受到一定的影響,這點怎麼平衡呢?
陳慧:現在來看MySQL的架構是比較穩定,比較簡潔的。MySQL是90年代出來的數據庫,整個架構上是吸取了前面的一些優良的特性,也驅除了不好的地方,整個架構來看還是比較好的。而且插殼的方式也是為了避免你提到的情況,就是靈活的,不是說固定了就一個結構。以後我開發出新的引擎可能有又面前可用性,又有很成熟的性能,那完全可以替代原來的,而不影響現有的架構,這就是它的靈活之處。