數(shù)據(jù)庫(kù)自動(dòng)備份的文件怎么比較小 軟件開(kāi)發(fā)時(shí)數(shù)據(jù)在后臺(tái)是如何保存的?
軟件開(kāi)發(fā)時(shí)數(shù)據(jù)在后臺(tái)是如何保存的?數(shù)據(jù)的存儲(chǔ)有很多種。根據(jù)不同的需求可以不做出差別的選擇。我們以變更土地性質(zhì)一個(gè)問(wèn)答系統(tǒng)為例,來(lái)詳細(xì)介紹再看看他們的相同使用場(chǎng)景和方法。關(guān)系型數(shù)據(jù)庫(kù)依靠關(guān)系型數(shù)據(jù)庫(kù)諸如
軟件開(kāi)發(fā)時(shí)數(shù)據(jù)在后臺(tái)是如何保存的?
數(shù)據(jù)的存儲(chǔ)有很多種。根據(jù)不同的需求可以不做出差別的選擇。我們以變更土地性質(zhì)一個(gè)問(wèn)答系統(tǒng)為例,來(lái)詳細(xì)介紹再看看他們的相同使用場(chǎng)景和方法。
關(guān)系型數(shù)據(jù)庫(kù)依靠關(guān)系型數(shù)據(jù)庫(kù)諸如MySQL,是最常用的一種。剛開(kāi)始開(kāi)發(fā)個(gè)簡(jiǎn)單問(wèn)答系統(tǒng)。你就是可以建幾張表:
上面的實(shí)體關(guān)系圖是我剛用PlantUML畫的一個(gè)更簡(jiǎn)練版,解決理解。源代碼在這里:
@startuml!defineTable(name,desc)classnamethoughdescltlt(T,#FFAAAA)gtgt!defineprimary_key(x)ltbgtxlt/bgt!defineunique(x)ltcolor:greengtxlt/colorgt!definecannot_null(x)ltugtxlt/ugthidemethodshidestereotypesentitiesTable(users,users
(存儲(chǔ)用戶信息)){primary_key(id)INTEGERnot_null(unique(username))VARCHAR[32]actually_null(password)VARCHAR[64]ageSMALLINTgenderSMALLINTbirthdayDATETIME}Table(questions,questions
(存儲(chǔ)問(wèn)題信息)){primary_key(question_id)INTEGERnot_null(unique(userid))INTEGERtitleVARCHAR[255]contentVARCHAR[2048]creationTimeDATETIMEupdateTimeDATETIME}Table(answers,answers
(存儲(chǔ)問(wèn)題的答案)){primary_key(answer_id)INTEGERprimary_key(question_id)INTEGERnot_null(unique(userid))INTEGERcontentVARCHAR[2048]creationTimeDATETIMEupdateTimeDATETIME}relationshipsonedidmayrelationship,一對(duì)多的關(guān)系users--gtquestions:1個(gè)用戶提了多個(gè)問(wèn)題users--dstrokanswers:1個(gè)用戶寫了多個(gè)問(wèn)題的答案questions--rlmanswers:1個(gè)問(wèn)題有多個(gè)答案@enduml
我是用VSCODE的插件畫的:
設(shè)計(jì)好表然后就是可以在MySQL里面建表。
假如你用Java做,這個(gè)可以用來(lái)JPA框架做數(shù)據(jù)存儲(chǔ)。簡(jiǎn)單點(diǎn)可以借用MyBatis。MyBatis是另一個(gè)Java不持久化框架,它是從XML描述符或注解把對(duì)象與SQL語(yǔ)句關(guān)聯(lián)下來(lái),簡(jiǎn)單點(diǎn)、容易上手。建議您剛開(kāi)始是可以用來(lái)這種練練手。
古怪一些的可以利用Hibernate。Hibernate是三個(gè)開(kāi)放源代碼的對(duì)象關(guān)系映射框架,要是你喜歡面向?qū)ο蟮木幊?,那就是可以用?lái)Hibernate把你設(shè)計(jì)什么的對(duì)象映射到數(shù)據(jù)庫(kù)的單獨(dú)的表,比較方便存取。不過(guò)這些低些復(fù)雜,學(xué)習(xí)出聲都很花時(shí)間。
NoSQL你也這個(gè)可以利用NoSQL數(shù)據(jù)庫(kù),也更加很簡(jiǎn)單。比如說(shuō)是一個(gè)設(shè)計(jì)和實(shí)現(xiàn)分布式文件存儲(chǔ)的閉源數(shù)據(jù)庫(kù)系統(tǒng)。你可以把上面的表都啊,設(shè)計(jì)成JSON文檔,真接讀取在mongodb里面。
全文檢索elasticsearch如果沒(méi)有要支持全文檢索,你是需要用Elasticsearch。Elasticsearch是個(gè)分布式的全文搜索引擎。
緩存Redis如果你的用戶量大了,要能提高系統(tǒng)的訪問(wèn)速度。你不需要會(huì)用到特殊緩存技術(shù)諸如redis。
消息系統(tǒng)Kafka如果你的系統(tǒng)發(fā)展壯大了,又開(kāi)發(fā)出很多那些的系統(tǒng)。比如說(shuō)推薦系統(tǒng),審查系統(tǒng)。你的那里系統(tǒng)與是需要消息通訊。你還是需要用到消息系統(tǒng)Kafka。
我有幾個(gè)視頻,利用動(dòng)畫來(lái)演示和解釋Kafka的原理,希望能搜尋和評(píng)論。
分布式存儲(chǔ)HadoopHDFS伴隨著你的用戶的增加,內(nèi)容的增加,你的網(wǎng)站每天有一種幾百GB甚至還幾百TB的數(shù)據(jù)。你就必須都用到分布式存儲(chǔ)Hadoop。
我也彼此分享了一些跪求Hadoop的視頻,依靠動(dòng)畫來(lái)演示Hadoop的原理實(shí)現(xiàn)程序,歡迎大家關(guān)注。
總結(jié)據(jù)系統(tǒng)的不同需求和不同發(fā)展階段,可以不你選相同的存儲(chǔ)。假如是一就開(kāi)始目的是驗(yàn)正自己的產(chǎn)品的想法,也就是做PoC(proveoftheconcept),那你也可以你選簡(jiǎn)單易用的,比如MySQL,MongoDB等。等將來(lái)系統(tǒng)發(fā)展中了,根據(jù)是需要再怎么升級(jí)存儲(chǔ),諸如ES,redis,kafka也有hadoop。
上面說(shuō)的各種存儲(chǔ)都意見(jiàn)其它編程語(yǔ)言,Java,Python,Ruby,NodeJS和。簡(jiǎn)單易用。
如果沒(méi)有是個(gè)人學(xué)習(xí)技術(shù),個(gè)人建議從最簡(jiǎn)單結(jié)束,做一個(gè)小的項(xiàng)目,比如說(shuō)我給的問(wèn)答的例子。慢慢的體會(huì)完全不同的技術(shù)的差別使用方法和應(yīng)用場(chǎng)景。
期望是可以幫到你。有問(wèn)題可以在評(píng)論區(qū)知道回答,我會(huì)再次幫忙解決。
本人,@小馬過(guò)河Vizit,專注心于分布式系統(tǒng)原理和實(shí)踐能分享。如果能依靠動(dòng)畫生動(dòng)而又詳細(xì)地做演示抽象的原理。
麻煩問(wèn)下我的名字。小馬過(guò)河Vizit,意為事事像小馬過(guò)河一樣的,是需要自己親自嘗試、探索它才能獲得樂(lè)趣和新知。Vizit是指Visualizeit的縮寫。一圖勝千言,希望可以利用動(dòng)畫來(lái)可視化抽象的原理。
歡迎大家關(guān)注,你點(diǎn)贊!謝謝了支持。
endnote數(shù)據(jù)庫(kù)里的文件保存在哪?
你可以打開(kāi)word,手動(dòng)出的窗口是endnote先檢測(cè)到word文檔中的參考文獻(xiàn)引入又出現(xiàn)問(wèn)題,大意是安裝word文檔中參考文獻(xiàn)的引入路徑在endnote數(shù)據(jù)庫(kù)中找不到不兼容文獻(xiàn)或是不兼容文獻(xiàn)太多。估計(jì)是你的錄入系統(tǒng)參考文獻(xiàn)后,你要改或則刪除掉或是重新修復(fù)了數(shù)據(jù)庫(kù)(例如刪除題錄后原先又導(dǎo)入到,那樣的話倒致題錄內(nèi)容一般,可是題錄索引號(hào)相同,出現(xiàn)錯(cuò)誤)。然后打開(kāi)的窗口是必須你在數(shù)據(jù)庫(kù)中不自動(dòng)確定再次出現(xiàn)問(wèn)題的文獻(xiàn)是哪篇。況且兩個(gè)數(shù)據(jù)庫(kù)合二為一,簡(jiǎn)單點(diǎn)辦法是將三個(gè)數(shù)據(jù)庫(kù)中的絕大部分文獻(xiàn)所有的選定,右擊,選擇“剪切粘貼referencewant”拷備到那個(gè)數(shù)據(jù)庫(kù)中。其實(shí),導(dǎo)入一個(gè)數(shù)據(jù)庫(kù)為txt文件,再文件導(dǎo)入到另一個(gè)數(shù)據(jù)庫(kù)也可,但是適用規(guī)定所含的大量文獻(xiàn)數(shù)據(jù)庫(kù)的轉(zhuǎn)移。具體操作可以說(shuō)附件教程。
很抱歉,問(wèn)者上傳的圖片的附件未完成