數(shù)據(jù)庫半結(jié)構(gòu)化數(shù)據(jù),主要用于存儲結(jié)構(gòu)化數(shù)據(jù),有一些類似于數(shù)據(jù)庫的存儲方式。比如XML 數(shù)據(jù)庫 management等非結(jié)構(gòu)化數(shù)據(jù)通常存儲在文件系統(tǒng)中,很少存儲在數(shù)據(jù)庫(比如存儲庫需要記錄一張圖片)只數(shù)據(jù)庫記錄圖片的大小和位置,圖片的實際內(nèi)容保存在文件系統(tǒng)中)和數(shù)據(jù)庫直接保存非結(jié)構(gòu)化/半結(jié)構(gòu)化數(shù)據(jù),主要依靠數(shù)據(jù)壓縮和重復(fù)數(shù)據(jù)刪。
bulk _ insert _ buffer _ size參數(shù)相對增加了存儲insert語句的緩存空間,可以提高插入的速度。對于插入頻率高的表,可以適當(dāng)刪除不常用的索引,這樣可以減少維護表索引的開銷。如果業(yè)務(wù)允許,也就是說不需要事務(wù)機制,建議使用myis....
比如卡珊德拉和MongoDB就是NoSQL的兩位杰出代表。我們可能會認為原因是現(xiàn)在的UGC模式已經(jīng)發(fā)展到了白熱化,用戶生成的內(nèi)容導(dǎo)致了接近或小于1: 1的讀寫比。但我不認為這是真正的原因。1.緩存導(dǎo)致的存儲原始讀取效率不再重要。真正的原因是我們做足了閱讀優(yōu)化。我們使用Memcached、Tokyo暴君/TokyoCabinet等緩存進行數(shù)據(jù)存儲,使用squid、nginxproxy _ cache等緩存進行頁面和文件的存儲。可以達到非常好的讀緩存效果,如果數(shù)據(jù)即時性要求不高,或者緩存設(shè)計合理(讀寫緩存都有),緩存命中率會足夠高,所以我們不需要超過優(yōu)化底層存儲的rawread效率。
利用固態(tài)硬盤(SSD)技術(shù)的優(yōu)勢來設(shè)計數(shù)據(jù)庫應(yīng)用架構(gòu)非常吸引人。特別值得注意的是,SSD并行訪問數(shù)據(jù)的能力有了很大的提升。這些改進使SSD幾乎達到了許多類型的數(shù)據(jù)庫應(yīng)用程序的隨機存取存儲器存儲的性能,而成本只有它的八分之一。在過去的幾年中,固態(tài)硬盤的性能突飛猛進,而其成本相對于傳統(tǒng)硬盤和RAM不斷降低。
主AWS選項AWSIASEC 2實例可以配置不同級別的存儲:a)內(nèi)存。對應(yīng)于傳統(tǒng)物理計算機的RAM。b)實例存儲。也稱為臨時存儲。它相當(dāng)于傳統(tǒng)物理計算機的磁盤大小。c)靈活的持久補充存儲(如EBS和S3)?;旧峡梢钥醋魇俏锢鞵C的網(wǎng)絡(luò)存儲。亞馬遜現(xiàn)在使用SSD作為部署臨時存儲和通用存儲的默認配置,也是EBS的默認配置(早期實例類型默認不是SSD)。