成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

你應該使用NoSQL數據庫、SQL數據庫還是兩者都用?

譯文
數據庫
SQL和NoSQL之爭只不過是關系數據庫和非關系數據庫的比較。區別在于它們是如何構建的、存儲信息的種類以及如何存儲信息。關系數據庫是結構化的,非關系數據庫是面向文檔、分布式的。四十多年來,結構化查詢語言(SQL)數據庫一直是主要的數據存儲機制。

你應該使用NoSQL數據庫、SQL數據庫還是兩者都用?

【51CTO.com快譯】SQL和NoSQL之爭只不過是關系數據庫和非關系數據庫的比較。區別在于它們是如何構建的、存儲信息的種類以及如何存儲信息。關系數據庫是結構化的,非關系數據庫是面向文檔、分布式的。四十多年來,結構化查詢語言(SQL)數據庫一直是主要的數據存儲機制。

隨著Web應用程序以及PostgreSQL、MySQL和SQLite等開源技術日益盛行,使用率在上世紀90年代末急劇提高。盡管NoSQL數據庫自上世紀60年代以來就已存在,但最近開始受到追捧,比如MongoDB、CouchDB、Redis和Apache Cassandra等流行的選擇方案。說到底,SQL和NoSQL都做同樣的事情:存儲數據,只不過方法不一樣。盡管NoSQL日益流行,卻不是取代SQL的技術,而是另一種選擇。一些項目更適合使用SQL數據庫,而其他項目適用于NoSQL。一些項目可以換著使用兩者。

1.SQL

結構化查詢語言(SQL)是存儲數據的更結構化、更僵硬的方式,就像電話簿那樣。關系數據庫要高效,你得以一種非常條理化的方式來存儲數據。SQL數據庫仍很流行,因為它們天生適用于許多古老的軟件堆棧,包括LAMP和基于Ruby的堆棧。這些數據庫得到了廣泛的支持,并得到了充分的理解;如果你遇到問題,這可能是一大有利條件。

說到數據庫技術,不存在一應俱全式的解決方案。這就是為什么大多數公司同時依賴非關系數據庫和關系數據庫來完成不同的任務。不過在許多情況下,盡管NoSQL數據庫憑借速度和可擴展性越來越受歡迎,但高度結構化的SQL數據庫更受喜愛。

優點:

  • ACID(原子性、一致性、隔離性和持久性)合規性準確地表明事務如何與數據庫交互,以此減少異常情況,并保護數據庫的完整性。NoSQL數據庫常常具有處理速度快、靈活的優點,但犧牲了ACID合規性。
  • 你的數據保持不變、結構化。如果貴公司沒有迎來大規模發展(那需要更多的服務器),而且只處理一致的數據,那么恐怕沒有理由使用旨在支持高流量和眾多數據類型的系統。
  • 由于很早就面市了,這些工具隨帶更好的支持、產品套件和附件以管理這些數據庫。

缺點:

  • SQL的主要問題是隨著數據庫變大而進行擴展。你發現,即使可擴展性通常在生產環境中進行了測試,但常常不如NoSQL數據庫。分片(sharding)同樣存在相當大的問題。

2.NoSQL

如果貴公司在處理大量非結構化數據,你的數據要求一開始又并不清晰,那么可能無法開發模式(schema)明確定義的關系數據庫。使用非關系數據庫可以獲得比傳統數據庫高得多的靈活性。不妨把非關系型數據庫想象成檔案夾,整理各種類型的相關信息。

優點:

  • 推動NoSQL發展的重大因素是大數據,促使CouchDB、MongoDB、Cassandra和HBase之類的NoSQL數據庫大行其道。NoSQL數據庫確保:當服務器端應用程序的所有其他組件都被設計成無縫、快速時,數據沒有成為瓶頸。
  • 你可以存儲大量幾乎沒有結構的數據。此外,NoSQL數據庫對于可以一起存儲的數據類型沒有限制,你的要求若有變化,可以添加更多的新類型。若使用基于文檔的數據庫,還可以將數據存儲在一個地方,無需事先定義數據類型。
  • 基于云的存儲是一種節省成本的優秀解決方案,不過你得將數據分散在多臺服務器上來進行擴展。NoSQL數據庫旨在直接可以跨多個數據中心進行擴展,沒有太大的麻煩。
  • 你不必事先準備好NoSQL數據。NoSQL數據庫的非關系性質讓你可以迅速創建數據庫,沒必要開發詳細的數據庫模型,因而為你節省大量的開發時間。

缺點:

  • 由于歷史較短,NoSQL社區缺乏MySQL用戶群的成熟性。雖然眼下NoSQL社區在迅猛發展,但相比MySQL之類的SQL數據庫管理系統,很難與其經驗豐富的最終用戶組成的龐大網絡相競爭。
  • NoSQL數據庫的一大問題是缺乏用于性能測試和分析的報告工具。另一方面,使用SQL,你能找到一大批報告工具幫助證明應用程序的有效性。
  • 你將面臨與SQL指令兼容的問題。在查詢語言中,新的數據庫使用自己的特性,目前還無法與關系數據庫中使用的SQL完全兼容。
  • 缺乏標準化。現在有許多NoSQL數據庫,卻仍然沒有標準,而關系數據庫有標準。NoSQL缺乏標準化的這個現狀可能會在遷移過程中帶來問題。

結論

如今,NoSQL數據庫正成為數據庫市場的一個重要角色。憑借諸多優點,它們會成為企業領域真正改變游戲規則的技術。對于希望整合大數據的公司而言,成本更低、更易于擴展和開源等特性使得NoSQL成為一種誘人的選擇。

即便如此,NoSQL還是一種比較年輕的技術,沒有MySQL等SQL數據庫提供的那一套標準。一些人認為NoSQL是未來的方向,另一些人擔心它缺乏ACID合規性和標準化。最終,貴公司復雜的業務需求以及所使用數據的數量和種類將決定選擇SQL還是選擇NoSQL。

不論好壞,對于大多數項目而言,你可以有一個非分布式、可擴展的關系數據庫作為系統中的單一數據源(single point of truth)。這是保持數據一致性,支持復雜查詢的一種簡易方法。

我希望本文對你有所幫助,但請記住每個項目不一樣,最終你要了解什么最適合你的要求。無論選擇是什么,我們開發人員都很擅長證明我們的技術選擇的合理性。不過我建議在充分考慮風險和優勢后,再試用新技術。

原文標題:Should You Use NoSQL Or SQL Db Or Both?,作者:Amit Ashwini

【51CTO譯稿,合作站點轉載請注明原文譯者和出處為51CTO.com】

責任編輯:龐桂玉 來源: 51CTO
相關推薦

2021-11-12 05:45:12

云數據庫云計算

2021-09-28 09:25:05

NoSQL數據庫列式數據庫

2010-04-01 09:45:38

NoSQL

2024-02-02 10:51:53

2020-12-18 09:11:43

數據庫SQLNoSQL

2010-09-02 18:56:09

NoSQL數據庫DBA

2011-10-09 09:38:03

OracleNoSQL

2022-02-14 09:00:00

SQLNoSQL數據庫

2024-03-13 10:40:00

性能探測工具SQL語句數據庫

2023-11-13 15:36:24

開源數據庫

2021-05-17 06:57:34

SQLServer數據庫

2011-07-19 09:08:50

JavaNoSQL

2019-03-20 15:59:11

NoSQLRedis數據庫

2019-07-08 10:36:34

數據庫WebNoSQL

2024-03-28 09:00:00

NoSQL數據庫

2020-08-31 18:51:53

數據保護網絡安全漏洞

2010-07-15 17:28:50

SQL Server

2021-01-28 09:00:00

SQL數據庫NoSQL

2022-10-12 13:33:25

PostgreSQL數據庫

2011-03-15 14:54:08

NoSQL
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 91精产国品一二三区 | 欧洲av一区 | 国产成人精品午夜 | 久久久www| 亚洲视频在线免费 | 久久噜噜噜精品国产亚洲综合 | 日韩一区二区在线观看视频 | 午夜影院在线观看视频 | 日韩欧美国产不卡 | 国产一区久久久 | 日本午夜免费福利视频 | 久久一区二区精品 | 久久久久国产精品 | 欧美精品在线视频 | 欧美国产91 | 国产精品久久 | 久久综合狠狠综合久久综合88 | 91久久精品日日躁夜夜躁欧美 | 天天插天天射天天干 | 韩日在线视频 | 日本久久精品视频 | 亚洲精品日韩一区二区电影 | 日本三级全黄三级a | 91在线最新 | 欧美美女被c | 成人黄色电影在线播放 | 成人精品毛片国产亚洲av十九禁 | 久久久精品高清 | 中文字幕亚洲精品 | 亚洲精品免费视频 | 日韩成人免费中文字幕 | 黄色在线免费观看 | 国产欧美久久一区二区三区 | 亚洲视频在线看 | 日韩中文字幕 | 国产日韩亚洲欧美 | 91精品麻豆日日躁夜夜躁 | 91精品国产91久久久久久最新 | 国产福利91精品一区二区三区 | 精品久久一 | 日本不卡一区二区三区在线观看 |