日本综合一区二区|亚洲中文天堂综合|日韩欧美自拍一区|男女精品天堂一区|欧美自拍第6页亚洲成人精品一区|亚洲黄色天堂一区二区成人|超碰91偷拍第一页|日韩av夜夜嗨中文字幕|久久蜜综合视频官网|精美人妻一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
nosql學(xué)習(xí)心得體會,nosql數(shù)據(jù)庫實驗心得

學(xué)習(xí)數(shù)據(jù)庫管理技術(shù)后的感受

學(xué)習(xí)數(shù)據(jù)庫的心得體會

創(chuàng)新互聯(lián)建站長期為上千客戶提供的網(wǎng)站建設(shè)服務(wù),團(tuán)隊從業(yè)經(jīng)驗10年,關(guān)注不同地域、不同群體,并針對不同對象提供差異化的產(chǎn)品和服務(wù);打造開放共贏平臺,與合作伙伴共同營造健康的互聯(lián)網(wǎng)生態(tài)環(huán)境。為安平企業(yè)提供專業(yè)的做網(wǎng)站、網(wǎng)站建設(shè),安平網(wǎng)站改版等技術(shù)服務(wù)。擁有十載豐富建站經(jīng)驗和眾多成功案例,為您定制開發(fā)。

在大二的下學(xué)期剛學(xué)了數(shù)據(jù)庫這門課,對這門課的第一印象是書本蠻厚的,感覺學(xué)起來應(yīng)該會很難很累。在學(xué)習(xí)這門課的過程中,在對數(shù)據(jù)庫的了解過程中,慢慢對數(shù)據(jù)庫有了感觀。數(shù)據(jù)庫這一詞并不是很難想象,并不是像外人看來很神奇。作為計算機專業(yè)的學(xué)生,這樣的專業(yè)術(shù)語或者專業(yè)知識是最基本的。

學(xué)習(xí)的時候沒有想象中的那么難,只要上課能聽懂就基本還可以。但是問題還是出在書本有點厚,有的時候上課的內(nèi)容都要找很久才能找到,甚至有的時候老師講的知識書本上是找不到的,是另外補充而且是相當(dāng)重要的內(nèi)容。有的時候開小差,沒有聽到老師講的知識點,這就導(dǎo)致了以后的學(xué)習(xí)無法順利進(jìn)行,使得學(xué)習(xí)起來十分困難。所以在數(shù)據(jù)庫這門課的學(xué)習(xí)中,上課一定要聽牢,就像老師說的那樣,這樣的專業(yè)課如果想憑考試前幾天突擊是行不通的,必須是日積月累的知識才能取得好成績。

通過對數(shù)據(jù)庫的學(xué)習(xí),我也明白了各行各業(yè)都離不開數(shù)據(jù)庫,就算是一個小型的超市也離不開它??梢姅?shù)據(jù)庫這門課的廣泛性,如果能夠認(rèn)真學(xué)好它將來必有成就。我就是抱著這種信念去學(xué)習(xí)數(shù)據(jù)庫的。第一次接觸數(shù)據(jù)庫,第一次接觸SQL語言,雖然陌生,但是可以讓我從頭開始學(xué),就算沒有基礎(chǔ)的人也可以學(xué)得很好。剛開始練習(xí)SQL語言的時候,并不是很難,基本上都是按照老師的步驟來做,還很有成就感。后來學(xué)了單表查詢和連接查詢后,就慢慢發(fā)現(xiàn)越學(xué)越困難了,每個題目都要思考很久,并且每個題目基本上不止一個答案,所以必須找出最優(yōu)的答案。后面的刪除、插入、修改這些題目都變化蠻大的,書本上的例題根本無法滿足我們,好在老師給我們提供了大量的課件,通過這些PPT,我們可以鞏固課內(nèi)的知識,還可以學(xué)習(xí)內(nèi)容相關(guān)的知識,更好地完成老師布置的作業(yè)。

除了老師布置的一些基本作業(yè)外,還有一份大作業(yè)。就像我們小組的是雜貨店的銷售管理系統(tǒng),在完成這一作業(yè)的過程中,我們可以通過網(wǎng)絡(luò)實現(xiàn)一家雜貨店。過程是很復(fù)雜的,雜貨店需要員工,還有百來種商品,不僅需要大量的數(shù)據(jù),還要完成需求說明,數(shù)據(jù)詞典,還有E-R圖等,雖然想象起來并不是很難,但是要轉(zhuǎn)化成文字,轉(zhuǎn)化成人們能夠讀懂的文字就顯得十分困難。特別是一個完整的銷售系統(tǒng),對我們來說都是第一次接觸,在做大作業(yè)的時候經(jīng)常是前面改改,后面改改,因為一些數(shù)據(jù)不能很好地對應(yīng)起來,經(jīng)常會遺忘一些,所以出現(xiàn)了這樣的情況。一個完整的數(shù)據(jù)庫系統(tǒng)也就是在這樣修修改改的狀態(tài)下完成的,也給了我很大的反思。第一、一個數(shù)據(jù)庫的完成一定要考慮各方面的因素,包括現(xiàn)實因素。第二、在完成這類作業(yè)時,修修改改是很正常的,不要因此而厭倦。第三、一個完整的數(shù)據(jù)庫一定不能出現(xiàn)錯誤,否則會在現(xiàn)實生活中帶來不必要的麻煩。

通過本學(xué)期數(shù)據(jù)庫的學(xué)習(xí)及大作業(yè)的完成,很有去作項目的沖動,但深知自己的能力水平有限,還需要更多的學(xué)習(xí)。

自己刪減一下。GOOD LUCK!

數(shù)據(jù)庫課程設(shè)計心得3篇

數(shù)據(jù)庫課程設(shè)計心得 范文 1: 在我看來,數(shù)據(jù)庫課程設(shè)計主要的目標(biāo)是利用課程中學(xué)到的數(shù)據(jù)庫知識和技術(shù)較好的開發(fā)設(shè)計出數(shù)據(jù)庫應(yīng)用系統(tǒng),去解決各行各業(yè)信息化處理的要求。通過這次的課程設(shè)計,可以鞏固我們對數(shù)據(jù)庫基本原理和基礎(chǔ)理論的理解,掌握數(shù)據(jù)庫應(yīng)用系統(tǒng)設(shè)計開發(fā)的基本 方法 ,進(jìn)一步提高我們綜合運用所學(xué)知識的能力。

當(dāng)我們這組決定做大學(xué)生就業(yè)咨詢系統(tǒng)時,我們并沒有著手寫程序。而是大家一起商量這個系統(tǒng)概述、系統(tǒng)目標(biāo)、系統(tǒng)需求、業(yè)務(wù)流程分析、數(shù)據(jù)流程分析和數(shù)據(jù)詞典。當(dāng)這些都準(zhǔn)備好了之后,我們進(jìn)行模塊的分工。每個人都有自己的模塊設(shè)計,而且寫出來的代碼要求可以實現(xiàn)相應(yīng)模塊的功能,得到理想的效果。當(dāng)每個人都把自己的分工做好了,最后會由一個人把這些全部組合搭建在一起。我們使用的是Html和php相互嵌套使用,當(dāng)一個系統(tǒng)做好了之后,我會好好地把程序都看一遍,理會其中的奧秘。

我所負(fù)責(zé)的是數(shù)據(jù)庫的備份和還原還有一些界面的實現(xiàn)。還記得自己剛接觸html的時候,覺得很感興趣,所以有一段時間幾乎到了癡迷的程度。然而Php是我剛接觸不久的一種編程語言。不過覺得它的功能真的很強大,可以開發(fā)出很多大型的系統(tǒng)。但是在做備份和還原的時候,要考慮的東西還是很多的。當(dāng)我遇到錯誤的時候,感到很受打擊。值得欣慰的是,在同學(xué)的幫助和大量參考書的查閱下,我把自己的模塊做好了。這就是我收獲最大的地方。而且,我明白了遇到困難永不放棄的重要性,我知道了團(tuán)隊合作的重要性,我領(lǐng)悟了只有堅持不懈才會取得勝利。

知識的獲得是無止境的,只要你想學(xué),只要你行動,沒有什么會難倒我們的?;厥走@一個多星期的課程設(shè)計,我很欣慰。因為我有了動力,有了勇氣。謝謝老師對我們的不懈幫助,謝謝學(xué)校給了我們這一次實踐的機會,也謝謝組員們的關(guān)懷。這些美好的回憶美好的東西將永遠(yuǎn)伴隨著我。

數(shù)據(jù)庫課程設(shè)計心得范文2:

一周的課程設(shè)計結(jié)束了,在這次的課程設(shè)計中不僅檢驗了我所學(xué)習(xí)的知識,也培養(yǎng)了我如何去把握一件事情,如何去做一件事情,又如何完成一件事情的方法和技巧。在設(shè)計過程中,和同學(xué)們相互探討,相互學(xué)習(xí),相互監(jiān)督。我學(xué)會了運籌帷幄,學(xué)會了寬容,學(xué)會了理解,也學(xué)會了做人與處世,這次課程設(shè)計對我來說受益良多。

課程設(shè)計是我們專業(yè)課程知識綜合應(yīng)用的實踐訓(xùn)練,著是我們邁向社會,從事職業(yè)工作前一個必不少的過程.“千里之行始于足下”,通過這次課程設(shè)計,我深深體會到這句千古 名言 的真正含義.我今天認(rèn)真的進(jìn)行課程設(shè)計,學(xué)會腳踏實地邁開這一步,就是為明天能穩(wěn)健地在社會大潮中奔跑打下堅實的基礎(chǔ)。我這次設(shè)計的科目是數(shù)據(jù)結(jié)。

數(shù)據(jù)結(jié)構(gòu),是一門研究非數(shù)值計算的程序設(shè)計問題中計算機的操作對象(數(shù)據(jù)元素)以及它們之間的關(guān)系和運算等的學(xué)科,而且確保經(jīng)過這些運算后所得到的新結(jié)構(gòu)仍然是原來的結(jié)構(gòu)類型。作為一門獨立的課程在國外是從20XX年才開始設(shè)立的。20XX年美國唐·歐·克努特教授開創(chuàng)了數(shù)據(jù)結(jié)構(gòu)的最初體系,他所著的《計算機程序設(shè)計技巧》第一卷《基本算法》是第一本較系統(tǒng)地闡述數(shù)據(jù)的邏輯結(jié)構(gòu)和存儲結(jié)構(gòu)及其操作的著作?!皵?shù)據(jù)結(jié)構(gòu)”在計算機科學(xué)中是一門綜合性的專業(yè)基礎(chǔ)課。數(shù)據(jù)結(jié)構(gòu)是介于數(shù)學(xué)、計算機硬件和計算機軟件三者之間的一門核心課程。數(shù)據(jù)結(jié)構(gòu)這一門課的內(nèi)容不僅是一般程序設(shè)計(特別是非數(shù)值性程序設(shè)計)的基礎(chǔ),而且是設(shè)計和實現(xiàn)編譯程序、 操作系統(tǒng) 、數(shù)據(jù)庫系統(tǒng)及其他系統(tǒng)程序的重要基礎(chǔ)。

通過這次模具設(shè)計,我在多方面都有所提高。

一、編譯工具VisualC++

很多程序在結(jié)構(gòu)上是獨立的,但是本此設(shè)計的程序功能不是零散的,它有一個連接是的程序是一個整體,怎樣達(dá)到這種統(tǒng)一體呢?因為這個輸出連接是貫穿始終的。說到這,就應(yīng)該說以下我所應(yīng)用的調(diào)試工具,也就是運行環(huán)境VisualC++,可以充分利用Windows的支持剪貼版和英文的特點。正是在實現(xiàn)循環(huán)鏈表的程序中充分利用這個特點,才能制作出全漢化的初始化畫面。

二、鞏固和溫習(xí)了C語言

在界面設(shè)置中使用函數(shù)調(diào)用while。其中文本顯示顏色和背景顏色都可以任意按照自己的喜好,任意改變,但改變的時候必須采用標(biāo)準(zhǔn)英文大寫,同時在制作顯示菜單的窗口,大小根據(jù)菜單條數(shù)設(shè)計。最后采用printf輸出程序設(shè)計界面。

這次的程序軟件基本上運行成功,可以簡單的建立鏈?zhǔn)窖h(huán)鏈表,并進(jìn)行輸出,及循環(huán)語句的運用和選擇語句的控制。由于時間和知識上的限制,使得程序規(guī)模相對較小,即功能還不很全面,應(yīng)用也不很普遍。原來C語言可是涉及很多知識,而不是枯燥無聊的簡單的代碼部分而已,利用C語言方面的知識,我們可以設(shè)計出更完善的軟件。

三、積累了寶貴的 經(jīng)驗

我這次課程設(shè)計代碼中主要使用了鏈表的循環(huán)和遍歷這兩中操作。循環(huán)鏈表(CircularLinkedList)是單鏈表的另一種形式,它是一個首尾相接的鏈表。其特點是將單鏈表最后一個結(jié)點的指針域由NULL改為指向頭結(jié)點或線性表中的第一個結(jié)點,就得到了單鏈形式的循環(huán)鏈表,并稱為循環(huán)單鏈表。類似地,還有多重鏈的循環(huán)鏈表。在循環(huán)單鏈表中,表中所有結(jié)點被鏈在一個環(huán)上,多重循環(huán)鏈表則是將表中的結(jié)點鏈在多個環(huán)上。為了使某些操作實現(xiàn)起來方便,在循環(huán)單鏈表中也可設(shè)置一個頭結(jié)點。這樣,空循環(huán)鏈表僅由一個自成循環(huán)的頭結(jié)點表示。所謂遍歷(Traversal),是指沿著某條搜索路線,依次對樹中每個結(jié)點均做一次且僅做一次訪問。訪問結(jié)點所做的操作依賴于具體的應(yīng)用問題。

這次課程設(shè)計我選中的題目是個人資料的管理。編寫了一個可以簡易使用的個人資料管理系統(tǒng),可以進(jìn)行資料的輸入和管理。雖然在我的程序中有一部分是從網(wǎng)上搜索得來的,但我已經(jīng)竭力將所獲得的信息變成自己的資源,動手上機操作,在了解和看懂的基礎(chǔ)上有所改變和創(chuàng)新,但是在的程序軟件中還有部分的不足,需要加以更新。僅管,我并沒能很好的利用所學(xué)數(shù)據(jù)結(jié)構(gòu)的知識,但我也盡了自己最大的努力用我所學(xué)來完成這次的課程設(shè)計。同時,通過這次課程設(shè)計,我認(rèn)識到了自己動手實踐的弱勢,特別是在編程方面,知道了計算機的實踐操作是很重要的,只有通過上機編程才能充分的了解自己的不足。

四、對以后的學(xué)習(xí)充滿了信心和期待

通過這次的課程設(shè)計,更是讓我深刻認(rèn)識到自己在學(xué)習(xí)中的不足,同時也找到了克服這些不足的方法,這也是一筆很大的資源。在以后的時間中,我們應(yīng)該利用更多的時間去上機實驗,加強自學(xué)的能力,多編寫程序,相信不久后我們的編程能力都會有很大的提高能設(shè)計出更多的更有創(chuàng)新的作品。

數(shù)據(jù)庫課程設(shè)計心得范文3:

數(shù)據(jù)庫課程設(shè)計大賽的塵囂漸漸遠(yuǎn)去,懷著對這次大賽的些許不舍,懷著對當(dāng)初課程設(shè)計開始時候的豪情萬丈的決心的留戀,懷著通過這次課程設(shè)計積累的信心與斗志,我開始寫這篇 文章 ,為自己的足跡留下哪怕是微不足道但是對自己彌足珍貴的痕跡并期望與大家共勉。

首先,讓我的記憶追溯到大二暑假,在老大的指引下(老大勸我學(xué)asp.net),我接觸到microsoft 公司的.net產(chǎn)品。那個時候我已經(jīng)學(xué)過vc和asp,因為windows程序設(shè)計實驗的課的關(guān)系,接觸過vb,但是沒有專門去學(xué)他,因為習(xí)慣了c++里面的class,int,覺得vb的sub,var 看著就不是很順心。我是一個好奇心很強的人,突然看到了一個號稱“.net是用于創(chuàng)建下一代應(yīng)用程序的理想而又現(xiàn)實的開發(fā)工具”,而且主推c#語言,由于對c語言的一貫好感,我?guī)缀跏橇⒖虒λa(chǎn)生了興趣。我就開始了對c#的學(xué)習(xí),任何語言都不是孤立存在的,所以數(shù)據(jù)交互是很重要的,暑假的時候我把我們這學(xué)期的課本數(shù)據(jù)庫系統(tǒng)概論看了一遍。我記得以前用c語言編程的時候,數(shù)據(jù)是在內(nèi)存中申請空間,譬如使用數(shù)組等等。很耗費內(nèi)存空間。這個時候就是數(shù)據(jù)庫站出來的時候啦,于是我又裝上了sql server2000,以前學(xué)asp的時候用的是access,那個時候只是照著人家做,理論是什么也不是很清楚。

通過一個暑假的學(xué)習(xí),基本搞清楚了理論方面的東西,具體怎么用也不是很清楚。但是這為這學(xué)期的課程設(shè)計打下了鋪墊。

來到學(xué)校后,隨著這學(xué)期的數(shù)據(jù)庫課程大賽開始了,我有一個看法就是我自己應(yīng)該具備的能力不是我會多少,而是我應(yīng)該具備快速學(xué)會東西的能力。遇到什么就學(xué)什么。我們有時候很容易被一些專業(yè)名詞說嚇著,包括什么建模,軟件工程,數(shù)據(jù)分析,數(shù)據(jù)挖掘等等。我身邊就有很多同學(xué)被這些紙老虎所唬住,而沒有勇氣去接觸他們,總是說這個太難了之類的退堂鼓的話,他們低估了自己的潛力同時也壓抑住了他們自己的好奇心。其實都是紙老虎,又不是什么國家科研難題,只是去用一些工具,發(fā)明工具是很難,但是用一個工具就容易多了,just do it!我記得我做這個數(shù)據(jù)庫之前,我們老師說要做好前期分析,我就在網(wǎng)上搜索用什么分析工具好。最后我選擇了roseuml建模工具。在此之前,我腦袋里面沒有軟件建模的思想,什么uml建模對我而言就是一張空白的紙。但是真正接觸后并沒有想象的那么難,有什么不懂的上網(wǎng)去搜索,這是一個信息橫流的世界,有g(shù)oogle,baidu就沒有不能解決的知識難題。以及后來的數(shù)據(jù)庫分析的時候用到的powerdesigner也是一樣。

開發(fā)的時候我想過用什么架構(gòu),c/s模式?模式有很多,怎么選擇?我就上網(wǎng)搜索現(xiàn)在最流行的架構(gòu)是什么。結(jié)果搜到了mvc架構(gòu),就是你啦。我決定用這個架構(gòu),不會,沒關(guān)系,咱學(xué)。just do it!前期工作準(zhǔn)備好后,那么我就得把我暑假學(xué)的.net加以實踐。這個時候我更加深入的了解了利用ado.net操縱數(shù)據(jù)庫的知識。并且對數(shù)據(jù)庫里面的存儲過程有了比較深入的了解。經(jīng)過大概2個多星期的奮斗,我完成了我的數(shù)據(jù)庫課程設(shè)計--基于.net數(shù)據(jù)集的圖書館管理系統(tǒng)。并最后非常榮幸的獲得了大賽的一等獎以及以及新技術(shù)應(yīng)用獎。

與其臨淵羨魚,不如退而結(jié)網(wǎng)。這次數(shù)據(jù)庫課程設(shè)計給我的最大的印象就是如果自己有了興趣,就動手去做,困難在你的勇氣和毅力下是抬不了頭的。從做這個數(shù)據(jù)庫開始無論遇到什么困難,我都沒有一絲的放棄的念頭。出于對知識的渴望,出于對新技術(shù)的好奇,出于對一切未知的求知。我完成了這次數(shù)據(jù)庫課程設(shè)計,不過這只是我學(xué)習(xí)路上的驛站,未來十年.net的核心技術(shù)就是xml[至少微軟是這么宣傳的],我會繼續(xù)學(xué)習(xí)它,包括jave公司的j2ee我也很想試試,語言本來就是相通的,just do it!語言并不重要畢竟它僅僅是工具,用好一個工具并不是一件值得為外人道的事情,主要是了解學(xué)習(xí)思想。古語說的好:學(xué)無止境啊!

我很慶幸我參加了這次數(shù)據(jù)庫大賽,讓我確實打開了眼界。

為什么選擇NoSQL數(shù)據(jù)庫如此困難

傳統(tǒng)觀念中 NoSQL數(shù)據(jù)庫非常適合某些數(shù)據(jù)類型,如:非關(guān)系數(shù)據(jù)源。同時,NoSQL被吹捧為最適合Web應(yīng)用程序的優(yōu)秀平臺。然而他適合大多數(shù)數(shù)據(jù),特別是web應(yīng)用程序的數(shù)據(jù)是相關(guān)型。那么,這是否可以給你一個堅持使用RDMS的理由呢?也不一定,即使很困難,我們還是要做出選擇。

評估NoSQL是一個很茅盾的理論,一些人認(rèn)為,應(yīng)該將所有文檔數(shù)據(jù)存儲在一個文檔中,做鏈接代碼就是褻瀆神明。另外一部分人認(rèn)為,存儲應(yīng)用文檔,加入代碼,才是合理選擇。與此同時,不同的數(shù)據(jù)庫,需要在文檔中限制嵌套數(shù)據(jù)數(shù)量。有的人會鼓勵文檔引用。這是NoSQL數(shù)據(jù)模型的基本部分,也沒有一個明確的共識。

曾經(jīng)有一篇很熱的帖子"Why you should never use XYZ",我想,讀到這里,一定會有人搜索這篇文章。當(dāng)然,這種文章各式各樣,太過于籠統(tǒng)的標(biāo)題也沒什么幫助。毫無疑問,會有人會搜索這個文章,然后再找

到這個文章,進(jìn)一步深入,找到該文章的方法遠(yuǎn)比成功(理解問題)的故事多。很難知道誰提供了一個有效的技術(shù)問題,誰又誤讀了這個問題(或者缺少證據(jù)證明其觀點)。

有大量選擇,RDBMS的世界,選擇就很容易。你有4或5個目標(biāo),大家工作方式差不多,來選擇環(huán)境、預(yù)算支持的平臺。對于成熟的產(chǎn)品,風(fēng)險比較小。 NoSQL的世界,有很多數(shù)據(jù)庫引擎功能選擇。每一個有自己的獨特優(yōu)勢,也有致命弱點。所以選擇很難, NoSQL項目生命周期短,嘗試新項目或者流行項目也會有風(fēng)險。上次,我的的項目是在 CouchDB上,而現(xiàn)在似乎停擺了。

做出這個痛苦決定的原因是,這可能是一個案例:你需要做一大堆工作,才能知道,你做出的選擇對與錯。你可以實體化你的數(shù)據(jù)模型,了解他與系統(tǒng)的工作情況,但是,這只有你正真撞到南墻,才可以找到裂縫(答案)。以我為例,我建的應(yīng)用程序是關(guān)系數(shù)據(jù)庫,移動文件存儲的主要因素是,需要一個無模式設(shè)計來達(dá)到我的目標(biāo)。使用NoSQL 數(shù)據(jù)庫存儲關(guān)系型數(shù)據(jù)庫并不是我們所常說的,雖然,這種事常常發(fā)生。

現(xiàn)在我在用 Couchbase 和 MongoDB,Mongo對我沒多大吸引力,不過鑒于他非常流行,對于引起來說,很有好處。當(dāng)然,很多都可以以同樣的方式流行。PHP很流行,因為他的易用性,而不是因為他很好。

NoSQL數(shù)據(jù)庫是否意味著缺乏安全性?

NoSQL薄弱的安全性會給企業(yè)帶來負(fù)面影響 。Imperva公司創(chuàng)始人兼CTO Amichai Shulman如是說。在新的一年中,無疑會有更多企業(yè)開始或籌劃部署NoSQL。方案落實后就會逐漸發(fā)現(xiàn)種種安全問題,因此早做準(zhǔn)備才是正確的選擇。 作為傳統(tǒng)關(guān)系型數(shù)據(jù)庫的替代方案,NoSQL在查詢中并不使用SQL語言,而且允許用戶隨時變更數(shù)據(jù)屬性。此類數(shù)據(jù)庫以擴展性良好著稱,并能夠在需要大量應(yīng)用程序與數(shù)據(jù)庫本身進(jìn)行實時交互的交易處理任務(wù)中發(fā)揮性能優(yōu)勢,Couchbase創(chuàng)始人兼產(chǎn)品部門高級副總裁James Phillips解釋稱:NoSQL以交易業(yè)務(wù)為核心。它更注重實時處理能力并且擅長直接對數(shù)據(jù)進(jìn)行操作,大幅度促進(jìn)了交互型軟件系統(tǒng)的發(fā)展。Phillips指出。其中最大的優(yōu)勢之一是能夠隨時改變(在屬性方面),由于結(jié)構(gòu)性的弱化,修改過程非常便捷。 NoSQL最大優(yōu)勢影響其安全性 NoSQL的關(guān)鍵性特色之一是其動態(tài)的數(shù)據(jù)模型,Shulman解釋道。我可以在其運作過程中加入新的屬性記錄。因此與這種結(jié)構(gòu)相匹配的安全模型必須具備一定的前瞻性規(guī)劃。也就是說,它必須能夠了解數(shù)據(jù)庫引入的新屬性將引發(fā)哪些改變,以及新加入的屬性擁有哪些權(quán)限。然而這個層面上的安全概念目前尚不存在,根本沒有這樣的解決方案。 根據(jù)Phillips的說法,某些NoSQL開發(fā)商已經(jīng)開始著手研發(fā)安全機制,至少在嘗試保護(hù)數(shù)據(jù)的完整性。在關(guān)系型數(shù)據(jù)庫領(lǐng)域,如果我們的數(shù)據(jù)組成不正確,那么它將無法與結(jié)構(gòu)并行運作,換言之?dāng)?shù)據(jù)插入操作整體將宣告失敗。目前各種驗證規(guī)則與完整性檢查已經(jīng)比較完善,而事實證明這些驗證機制都能在NoSQL中發(fā)揮作用。我們與其他人所推出的解決方案類似,都會在插入一條新記錄或是文檔型規(guī)則時觸發(fā),并在執(zhí)行過程中確保插入數(shù)據(jù)的正確性。 Shulman預(yù)計新用戶很快將在配置方面捅出大婁子,這并非因為IT工作人員的玩忽職守,實際上主要原因是NoSQL作為一項新技術(shù)導(dǎo)致大多數(shù)人對其缺乏足夠的知識基礎(chǔ)。Application Security研發(fā)部門TeamSHATTER的經(jīng)理Alex Rothacker對上述觀點表示贊同。他指出,培訓(xùn)的一大問題在于,大多數(shù)NoSQL的從業(yè)者往往屬于新生代IT人士,他們對于技術(shù)了解較多,但往往缺乏足夠的安全管理經(jīng)驗。 如果他們從傳統(tǒng)關(guān)系型數(shù)據(jù)庫入手,那么由于強制性安全機制的完備,他們可以在使用中學(xué)習(xí)。但NoSQL,只有行家才能通過觀察得出正確結(jié)論,并在大量研究工作后找到一套完備的安全解決方案。因此可能有90%的從業(yè)者由于知識儲備、安全經(jīng)驗或是工作時間的局限而無法做到這一點。 NoSQL需在安全性方面進(jìn)行優(yōu)化 盡管Phillips認(rèn)同新技術(shù)與舊經(jīng)驗之間存在差異,但企業(yè)在推廣NoSQL時加大對安全性的關(guān)注會起到很大程度的積極作用。他認(rèn)為此類數(shù)據(jù)存儲機制與傳統(tǒng)關(guān)系類數(shù)據(jù)庫相比,其中包含著的敏感類信息更少,而且與企業(yè)網(wǎng)絡(luò)內(nèi)部其它應(yīng)用程序的接觸機會也小得多。 他們并不把這項新技術(shù)完全當(dāng)成數(shù)據(jù)庫使用,正如我們在收集整理大量來自其它應(yīng)用程序的業(yè)務(wù)類數(shù)據(jù)時,往往也會考慮將其作為企業(yè)數(shù)據(jù)存儲機制一樣,他補充道。當(dāng)然,如果我打算研發(fā)一套具備某種特定功能的社交網(wǎng)絡(luò)、社交游戲或是某種特殊web應(yīng)用程序,也很可能會將其部署于防火墻之下。這樣一來它不僅與應(yīng)用程序緊密結(jié)合,也不會被企業(yè)中的其它部門所觸及。 但Rothacker同時表示,這種過度依賴周邊安全機制的數(shù)據(jù)庫系統(tǒng)也存在著極其危險的漏洞。一旦系統(tǒng)完全依附于周邊安全模型,那么驗證機制就必須相對薄弱,而且缺乏多用戶管理及數(shù)據(jù)訪問方面的安全保護(hù)。只要擁有高權(quán)限賬戶,我們幾乎能訪問存儲機制中的一切數(shù)據(jù)。舉例來說,Brian Sullivan就在去年的黑帽大會上演示了如何在完全不清楚數(shù)據(jù)具體內(nèi)容的情況下,將其信息羅列出來甚至導(dǎo)出。 而根據(jù)nCircle公司CTO Tim ‘TK’ Keanini的觀點,即使是與有限的應(yīng)用程序相關(guān)聯(lián),NoSQL也很有可能被暴露在互聯(lián)網(wǎng)上。在缺少嚴(yán)密網(wǎng)絡(luò)劃分的情況下,它可能成為攻擊者窺探存儲數(shù)據(jù)的薄弱環(huán)節(jié)。因為NoSQL在設(shè)計上主要用于互聯(lián)網(wǎng)規(guī)模的部署,所以它很可能被直接連接到互聯(lián)網(wǎng)中,進(jìn)而面臨大量攻擊行為。 其中發(fā)生機率最高的攻擊行為就是注入式攻擊,這也是一直以來肆虐于關(guān)系類數(shù)據(jù)庫領(lǐng)域的頭號公敵。盡管NoSQL沒有將SQL作為查詢語言,也并不代表它能夠免受注入式攻擊的威脅。雖然不少人宣稱SQL注入在NoSQL這邊不起作用,但其中的原理是完全一致的。攻擊者需要做的只是改變自己注入內(nèi)容的語法形式,Rothacker解釋稱。也就是說雖然SQL注入不會出現(xiàn),但JavaScript注入或者JSON注入同樣能威脅安全。 此外,攻擊者在籌劃對這類數(shù)據(jù)庫展開侵襲時,也很可能進(jìn)一步優(yōu)化自己的工具。不成熟的安全技術(shù)往往帶來這樣的窘境:需要花費大量時間學(xué)習(xí)如何保障其安全,但幾乎每個IT人士都能迅速掌握攻擊活動的組織方法。因此我認(rèn)為攻擊者將會始終走在安全部署的前面,Shulman說道。遺憾的是搞破壞總比防范工作更容易,而我們已經(jīng)看到不少NoSQL技術(shù)方面的公開漏洞,尤其是目前引起熱議的、以JSON注入為載體的攻擊方式。 NoSQL安全性并非其阻礙 然而,這一切都不應(yīng)該成為企業(yè)使用NoSQL的阻礙,他總結(jié)道。我認(rèn)為歸根結(jié)底,這應(yīng)該算是企業(yè)的一種商業(yè)決策。只要這種選擇能夠帶來吸引力巨大的商業(yè)機遇,就要承擔(dān)一定風(fēng)險,Shulman解釋道。但應(yīng)該采取一定措施以盡量弱化這種風(fēng)險。 舉例來說,鑒于數(shù)據(jù)庫對外部安全機制的依賴性,Rothacker建議企業(yè)積極考慮引入加密方案。他警告稱,企業(yè)必須對與NoSQL相對接的應(yīng)用程序代碼仔細(xì)檢查。換言之,企業(yè)必須嚴(yán)格挑選負(fù)責(zé)此類項目部署的人選,確保將最好的人才用于這方面事務(wù),Shulman表示。當(dāng)大家以NoSQL為基礎(chǔ)編寫應(yīng)用程序時,必須啟用有經(jīng)驗的編程人員,因為客戶端軟件是抵擋安全問題的第一道屏障。切實為額外緩沖區(qū)的部署留出時間與預(yù)算,這能夠讓員工有閑暇反思自己的工作內(nèi)容并盡量多顧及安全考量多想一點就是進(jìn)步。綜上所述,這可能與部署傳統(tǒng)的關(guān)系類數(shù)據(jù)庫也沒什么不同。 具有諷刺意味的是,近年來數(shù)據(jù)庫應(yīng)用程序在安全性方面的提升基本都跟數(shù)據(jù)庫本身沒什么關(guān)系,nCircle公司安全研究及開發(fā)部門總監(jiān)Oliver Lavery如是說。

一份難得的數(shù)據(jù)庫市場分析報告

目錄

- 數(shù)據(jù)庫分類維度:關(guān)系型/非關(guān)系型、交易型/分析型

- NoSQL數(shù)據(jù)庫的進(jìn)一步分類

- OLTP市場規(guī)模:關(guān)系型數(shù)據(jù)庫仍占營收大頭

- 數(shù)據(jù)庫市場份額:云服務(wù)和新興廠商主導(dǎo)NoSQL

- 開源數(shù)據(jù)庫 vs. 商業(yè)數(shù)據(jù)庫

- 數(shù)據(jù)庫三大陣營:傳統(tǒng)廠商和云服務(wù)提供商

最近由于時間原因我寫東西少了,在公眾號上也轉(zhuǎn)載過幾篇搞數(shù)據(jù)庫朋友的大作。按說我算是外行,沒資格在這個領(lǐng)域品頭論足,而當(dāng)我看到下面這份報告時立即產(chǎn)生了學(xué)習(xí)的興趣,同時也想就能看懂的部分寫點心得體會分享給大家。

可能本文比較適合普及性閱讀,讓數(shù)據(jù)庫領(lǐng)域資深的朋友見笑了:)

數(shù)據(jù)庫分類維度:關(guān)系型/非關(guān)系型、交易型/分析型

首先是分類維度,上圖中的縱軸分類為Relational Database(關(guān)系型數(shù)據(jù)庫,RDBMS)和Nonrelational Database (非關(guān)系型數(shù)據(jù)庫,NoSQL),橫軸的分類為Operational(交易型,即OLTP)和Analytical(分析型,即OLAP)。

按照習(xí)慣我們先看關(guān)系型數(shù)據(jù)庫,左上角的交易型類別中包括大家熟悉的商業(yè)數(shù)據(jù)庫Oracle、MS SQL Server、DB2、Infomix,也包括開源領(lǐng)域流行的MySQL(MariaDB是它的一個分支)、PostgreSQL,還有云上面比較常見的SQL Azure和Amazon Aurora等。

比較有意思的是,SAP HANA正好位于交易型和分析型的中間分界處,不要忘了SAP還收購了Sybase,盡管后者今天不夠風(fēng)光了,而早年微軟的SQL Server都是來源于Sybase。Sybase的ASE數(shù)據(jù)庫和分析型Sybase IQ還是存在的。

右上角的分析型產(chǎn)品中包括幾款知名的列式數(shù)據(jù)倉庫Pivotal Greenplum、Teradata和IBM Netezza(已宣布停止支持),來自互聯(lián)網(wǎng)巨頭的Google Big Query和Amazon RedShift。至于Oracle Exadata一體機,它上面運行的也是Oracle數(shù)據(jù)庫,其最初設(shè)計用途是OLAP,而在后來發(fā)展中也可以良好兼顧OLTP,算是一個跨界產(chǎn)品吧。

再來看非關(guān)系型數(shù)據(jù)庫,左下角的交易型產(chǎn)品中,有幾個我看著熟悉的MongoDB、Redis、Amazon DynamoDB和DocumentDB等;右下角的分析型產(chǎn)品包括著名的Hadoop分支Cloudera、Hortonworks(這2家已并購),Bigtable(來自Google,Hadoop中的HBase是它的開源實現(xiàn))、Elasticsearch等。

顯然非關(guān)系型數(shù)據(jù)庫的分類要更加復(fù)雜,產(chǎn)品在應(yīng)用中的差異化也比傳統(tǒng)關(guān)系型數(shù)據(jù)庫更大。Willian Blair很負(fù)責(zé)任地對它們給出了進(jìn)一步的分類。

NoSQL數(shù)據(jù)庫的進(jìn)一步分類

上面這個圖表應(yīng)該說很清晰了。非關(guān)系型數(shù)據(jù)庫可以分為Document-based Store(基于文檔的存儲)、Key-Value Store(鍵值存儲)、Graph-based(圖數(shù)據(jù)庫)、Time Series(時序數(shù)據(jù)庫),以及Wide Cloumn-based Store(寬列式存儲)。

我們再來看下每個細(xì)分類別中的產(chǎn)品:

文檔存儲 :MongoDB、Amazon DocumentDB、Azure Cosmos DB等

Key-Value存儲 :Redis Labs、Oracle Berkeley DB、Amazon DynamoDB、Aerospike等

圖數(shù)據(jù)庫 :Neo4j等

時序數(shù)據(jù)庫 :InfluxDB等

WideCloumn :DataStax、Cassandra、Apache HBase和Bigtable等

多模型數(shù)據(jù)庫 :支持上面不只一種類別特性的NoSQL,比如MongoDB、Redis Labs、Amazon DynamoDB和Azure Cosmos DB等。

OLTP市場規(guī)模:關(guān)系型數(shù)據(jù)庫仍占營收大頭

上面這個基于IDC數(shù)據(jù)的交易型數(shù)據(jù)庫市場份額共有3個分類,其中深藍(lán)色部分的關(guān)系型數(shù)據(jù)庫(RDBMS,在這里不統(tǒng)計數(shù)據(jù)挖掘/分析型數(shù)據(jù)庫)占據(jù)80%以上的市場。

Dynamic Database(DDMS,動態(tài)數(shù)據(jù)庫管理系統(tǒng),同樣不統(tǒng)計Hadoop)就是我們前面聊的非關(guān)系型數(shù)據(jù)庫。這部分市場顯得?。ǖl(fā)展勢頭看好),我覺得與互聯(lián)網(wǎng)等大公司多采用開源+自研,而不買商業(yè)產(chǎn)品有關(guān)。

而遵循IDC的統(tǒng)計分類,在上圖灰色部分的“非關(guān)系型數(shù)據(jù)庫市場”其實另有定義,參見下面這段文字:

數(shù)據(jù)庫市場份額:云服務(wù)和新興廠商主導(dǎo)NoSQL

請注意,這里的關(guān)系型數(shù)據(jù)庫統(tǒng)計又包含了分析型產(chǎn)品。Oracle營收份額42%仍居第一,隨后排名依次為微軟、IBM、SAP和Teradata。

代表非關(guān)系型數(shù)據(jù)庫的DDMS分類中(這里同樣加入Hadoop等),云服務(wù)和新興廠商成為了主導(dǎo),微軟應(yīng)該是因為云SQL Server的基礎(chǔ)而小幅領(lǐng)先于AWS,這2家一共占據(jù)超過50%的市場,接下來的排名是Google、Cloudera和Hortonworks(二者加起來13%)。

上面是IDC傳統(tǒng)分類中的“非關(guān)系型數(shù)據(jù)庫”,在這里IBM和CA等應(yīng)該主要是針對大型機的產(chǎn)品,InterSystems有一款在國內(nèi)醫(yī)療HIS系統(tǒng)中應(yīng)用的Caché數(shù)據(jù)庫(以前也是運行在Power小機上比較多)。我就知道這些,余下的就不瞎寫了。

開源數(shù)據(jù)庫 vs. 商業(yè)數(shù)據(jù)庫

按照流行度來看,開源數(shù)據(jù)庫從2013年到現(xiàn)在一直呈現(xiàn)增長,已經(jīng)快要追上商業(yè)數(shù)據(jù)庫了。

商業(yè)產(chǎn)品在關(guān)系型數(shù)據(jù)庫的占比仍然高達(dá)60.5%,而上表中從這列往左的分類都是開源占優(yōu):

Wide Cloumn:開源占比81.8%;

時序數(shù)據(jù)庫:開源占比80.7%;

文檔存儲:開源占比80.0%;

Key-Value存儲:開源占比72.2%;

圖數(shù)據(jù)庫:開源占比68.4%;

搜索引擎:開源占比65.3%

按照開源License的授權(quán)模式,上面這個三角形越往下管的越寬松。比如MySQL屬于GPL,在互聯(lián)網(wǎng)行業(yè)用戶較多;而PostgreSQL屬于BSD授權(quán),國內(nèi)有不少數(shù)據(jù)庫公司的產(chǎn)品就是基于Postgre哦。

數(shù)據(jù)庫三大陣營:傳統(tǒng)廠商和云服務(wù)提供商

前面在討論市場份額時,我提到過交易型數(shù)據(jù)庫的4個巨頭仍然是Oracle、微軟、IBM和SAP,在這里William Blair將他們歸為第一陣營。

隨著云平臺的不斷興起,AWS、Azure和GCP(Google Cloud Platform)組成了另一個陣營,在國外分析師的眼里還沒有BAT,就像有的朋友所說,國內(nèi)互聯(lián)網(wǎng)巨頭更多是自身業(yè)務(wù)導(dǎo)向的,在本土發(fā)展公有云還有些優(yōu)勢,短時間內(nèi)將技術(shù)輸出到國外的難度應(yīng)該還比較大。(當(dāng)然我并不認(rèn)為國內(nèi)缺優(yōu)秀的DBA和研發(fā)人才)

第三個陣容就是規(guī)模小一些,但比較專注的數(shù)據(jù)庫玩家。

接下來我再帶大家簡單過一下這前兩個陣容,看看具體的數(shù)據(jù)庫產(chǎn)品都有哪些。

甲骨文的產(chǎn)品,我相對熟悉一些的有Oracle Database、MySQL以及Exadata一體機。

IBM DB2也是一個龐大的家族,除了傳統(tǒng)針對小型機、x86(好像用的人不多)、z/OS大型機和for i的版本之外,如今也有了針對云和數(shù)據(jù)挖掘的產(chǎn)品。記得抱枕大師對Informix的技術(shù)比較推崇,可惜這個產(chǎn)品發(fā)展似乎不太理想。

微軟除了看家的SQL Server之外,在Azure云上還能提供MySQL、PostgreSQL和MariaDB開源數(shù)據(jù)庫。應(yīng)該說他們是傳統(tǒng)軟件License+PaaS服務(wù)兩條腿走路的。

如今人們一提起SAP的數(shù)據(jù)庫就想起HANA,之前從Sybase收購來的ASE(Adaptive Server Enterprise)和IQ似乎沒有之前發(fā)展好了。

在云服務(wù)提供商數(shù)據(jù)庫的3巨頭中,微軟有SQL Server的先天優(yōu)勢,甚至把它移植到了Linux擁抱開源平臺。關(guān)系型數(shù)據(jù)庫的創(chuàng)新方面值得一提的是Amazon Aurora和Google Spanner(也有非關(guān)系型特性),至于它們具體好在哪里我就不裝內(nèi)行了:)

非關(guān)系型數(shù)據(jù)庫則是Amazon全面開花,這與其云計算業(yè)務(wù)發(fā)展早并且占據(jù)優(yōu)勢有關(guān)。Google當(dāng)年的三篇經(jīng)典論文對業(yè)界影響深遠(yuǎn),Yahoo基于此開源的Hadoop有一段時間幾乎是大數(shù)據(jù)的代名詞。HBase和Hive如今已不再是人們討論的熱點,而Bigtable和BigQuery似乎仍然以服務(wù)Google自身業(yè)務(wù)為主,畢竟GCP的規(guī)模比AWS要小多了。

最后這張DB-Engines的排行榜,相信許多朋友都不陌生,今年3月已經(jīng)不是最新的數(shù)據(jù),在這里列出只是給大家一個參考。該排行榜幾乎在每次更新時,都會有國內(nèi)數(shù)據(jù)庫專家撰寫點評。

以上是我周末的學(xué)習(xí)筆記,班門弄斧,希望對大家有幫助。

參考資料《Database Software Market:The Long-Awaited Shake-up》

擴展閱讀:《 數(shù)據(jù)庫存儲:互相最想知道的事 》

尊重知識,轉(zhuǎn)載時請保留全文。感謝您的閱讀和支持!


網(wǎng)頁標(biāo)題:nosql學(xué)習(xí)心得體會,nosql數(shù)據(jù)庫實驗心得
標(biāo)題URL:http://www.dlmjj.cn/article/dsepdss.html