天天看點

結構化、半結構化和非結構化資料結構化資料半結構化資料非結構化資料

在實際應用中,我們會遇到各式各樣的資料庫如nosql非關系資料庫(memcached,redis,mangodb),RDBMS關系資料庫(oracle,mysql等),還有一些其它的資料庫如hbase,在這些資料庫中,又會出現結構化資料,非結構化資料,半結構化資料,下面列出各種資料類型:

結構化資料

結構化的資料是指可以使用關系型資料庫表示和存儲,表現為二維形式的資料。一般特點是:資料以行為機關,一行資料表示一個實體的資訊,每一行資料的屬性是相同的。

能夠用資料或統一的結構加以表示,我們稱之為結構化資料,如數字、符号。傳統的關系資料模型、行資料,存儲于資料庫,可用二維表結構表示。舉一個例子:

結構化、半結構化和非結構化資料結構化資料半結構化資料非結構化資料

是以,結構化的資料的存儲和排列是很有規律的,這對查詢和修改等操作很有幫助。但是,顯然,它的擴充性不好(比如,我希望增加一個字段,怎麼辦?)。

半結構化資料

半結構化資料是結構化資料的一種形式,它并不符合關系型資料庫或其他資料表的形式關聯起來的資料模型結構,但包含相關标記,用來分隔語義元素以及對記錄和字段進行分層。是以,它也被稱為自描述的結構。

半結構化資料,屬于同一類實體可以有不同的屬性,即使他們被組合在一起,這些屬性的順序并不重要。

所謂半結構化資料,就是介于完全結構化資料(如關系型資料庫、面向對象資料庫中的資料)和完全無結構的資料(如聲音、圖像檔案等)之間的資料,XML、HTML文檔就屬于半結構化資料。它一般是自描述的,資料的結構和内容混在一起,沒有明顯的區分。

常見的半結構資料有XML和JSON,對于對于兩個XML檔案,第一個可能有

結構化、半結構化和非結構化資料結構化資料半結構化資料非結構化資料

第二個可能為:

結構化、半結構化和非結構化資料結構化資料半結構化資料非結構化資料

從上面的例子中,屬性的順序是不重要的,不同的半結構化資料的屬性的個數是不一定一樣的。有些人說半結構化資料是以樹或者圖的資料結構存儲的資料,怎麼了解呢?上面的例子中,标簽是樹的根節點,和标簽是子節點。通過這樣的資料格式,可以自由地表達很多有用的資訊,包括自我描述資訊(中繼資料)。是以,半結構化資料的擴充性是很好的。

非結構化資料

顧名思義,就是沒有固定結構的資料。各種文檔、圖檔、視訊/音頻等都屬于非結構化資料。對于這類資料,我們一般直接整體進行存儲,而且一般存儲為二進制的資料格式。

非結構化資料庫是指其字段長度可變,并且每個字段的記錄又可以由可重複或不可重複的子字段構成的資料庫,用它不僅可以處理結構化資料(如數字、符号等資訊)而且更适合處理非結構化資料(全文文本、圖象、聲音、影視、超媒體等資訊)。

非結構化資料,包括所有格式的辦公文檔、文本、圖檔、XML、HTML、各類報表、圖像和音頻/視訊資訊等等

作者:抹茶君_7c47

連結:https://www.jianshu.com/p/c6784ec816fc

來源:簡書

簡書著作權歸作者所有,任何形式的轉載都請聯系作者獲得授權并注明出處。