搜尋
首頁資料庫mysql教程一网打尽18种主流数据库:12种SQL+6种NoSQL

还记得两三年前仅有几家云计算平台供应商可供选择的时候,似乎市场上也没有多少云数据库。但是云蓬勃发展之后,云数据库也呈现雨后春笋之势。而哪些是真正可靠而易用的,对用户而言,并不好分析。所以,本文分析了18种数据库的可用性以及应用方向(注意,这

还记得两三年前仅有几家云计算平台供应商可供选择的时候,似乎市场上也没有多少云数据库。但是云蓬勃发展之后,云数据库也呈现雨后春笋之势。而哪些是真正可靠而易用的,对用户而言,并不好分析。所以,本文分析了18种数据库的可用性以及应用方向(注意,这里说的管理数据库服务,不是仍然需要用户管理和实施的数据库实例)。仍有不足之处,希望听到大家更多的评论。

一网打尽18种主流数据库:12种SQL+6种NoSQL

SQL services

1.Amazon Relational Database Service(RDS)

AWS的RDS是第一个云数据库服务,也是目前最完整的数据库服务。如同AWS的大部分服务一样,其作为AWS的管理接口,可以兼容大部分AWS所提供的其他云计算服务。其最初仅是为了AWS自身掌握和管理MySQL服务而存在,而现在RDS还支持Microsoft SQL Server或Oracle Database。这一消息在2012年5月由AWS博客发布,当时称Microsoft SQL Server将成为RDS的一部分。当然,业内分析者认为这是亚马逊为了避免用户认为“被迫绑定”而做出的妥协与让步。用户可以运行装载在Amazon EC2上的Windows SQL Server实例,但是这些操作需要DBA经验以及对工作负荷管理有清晰认识。而RDS则提供了更易实现的管理数据库服务。

2.Clustrix Database as a Service

不久前,数据库厂商Clustrix刚加入云,但其在云计算方面早有积累。其服务,可以运行在Rackspace Cloud,为用户提供高性能的固态硬盘,可靠的single-tenant部署,以及弹性MySQL(旗舰版)。Clustrix称其适合在OLTP(联机事务处理)和OLAP(联机分析处理)的应用,并可以利用2500个以上的指标来监测系统。

3.EnterpriseDB Postgres Plus Cloud Database

EnterpriseDB是商业化Post greSQL数据库,由Postgres Plus提供的基于云的旗舰版产品。其目标是企业开发商,Postgres Plus Cloud包含高可用群集、高连接数和与Oracle的高兼容性。

4.FathomDB

有些读者对FathomDB的印象还停留在作为Rackspace的合作伙伴,FathomDB与AWS当时新的RDS相竞争。但现在,FathomDB仍然存在,但却是作为开源其原有技术以帮助开发者建立任何服务而不仅局限在托管数据库服务方面。据悉,该公司正在开发下一代数据库服务,持续关注。

5.Google Cloud SQL

Google Cloud SQL不是最丰富的数据库,但是也有其独到之处。首先,其与谷歌其他云服务能够集成,并实现轻松互动;其次,凭借谷歌在云计算的名气,Cloud SQL很容易在区域中复制,效用最大。虽然目前其仅支持Java和Python的开发应用,且实例受限于10GB存储容量。

6.Heroku Postgres

一网打尽18种主流数据库:12种SQL+6种NoSQL

Heroku Postgres是PaaS平台——Heroku的内部PostgresSQL数据库。其设计是为了可靠性而后数据保护(Heroku声称可以达到99.99%的正常运行时间,并准备实现99.9999999999%(小数点后还有9个9,数据持久性),且不需要通过PaaS平台,将经验传递给开发者。Heroku Postgres还有一个有趣的功能——数据夹。其允许用户通过URL将一个SQL查询结果发送给其他人。

7.HP Cloud Relational Database for MySQL

显然,这个名字还没有准备好。因为其仍处于内测阶段,还有很多工作要做,很多功能需要添加。作为构建在OpenStack上的一个MySQL分布,理论上看,将一个数据库业务一朵云移到另一朵上更为容易。

8.IBM SmartCloud Application Services

如同HP的云数据库一样,IBM的云数据库也在建设中。详细的具体特点还比较少。但是相比其他,IBM SmartCloud Application Services是建立在IBM DB2的基础上,作为IBM PaaS平台——SmartCloud Application Service的一部分来提供,目前也在测试阶段。

9.Microsoft SQL Database

其前身是SQL Azure,在微软新的重点策略——混合云中,SQL Database是一个关键关键组成部分。其既可以作为一个独立的云数据库使用,也可以提供Microsoft SQL Server的用户共同体验,以及允许在本地服务器数据库上的数据共享。SQL Database还提供了一种选择,使得在同一公司基础设施架构中,与其他数据库部署同步。

10.Oracle Database Cloud Service

并非适合每个人,但是对于现有的使用Oracle数据库的用而言,如果想要选择云主机就要感谢Oracle Database Cloud Service的存在了。毕竟,声称其所有功能和性能都与Oracle Database 11g Release 2相当。不过其定价并不明确,每月付费金额是基于数据库大小的,而长期合同则估计要单独确定。

11.Rackspace Cloud Databases

一网打尽18种主流数据库:12种SQL+6种NoSQL

Cloud Databases是Rackspace最新增加的在线数据库服务,一开始就建立在OpenStack平台上。在早期接入方式上,用户很难使用SLAs或云主机相关功能(如监测、备份或图形用户界面)。但受益于基于虚拟化和存储区域网络体系架构,这些用户得到了高性能和可靠性的的服务承诺。

12.Xeround

服务于亚马逊RDS,Xeround可能是市场上最受欢迎的云数据库之一。其也是最灵活的云数据库,基于MySQL的服务可以部署在任何公有云拼图,比如AWS,Rackspace,Joyent,Heroku等。Xeround声称自动缩放是其主要的一个优势,基于MySQL前端架构设计使得其理论上可以支持多种数据库选项,较为独特。

NoSQL services

1.Amazon DynamoDB

DynamoDB是亚马逊今年2月发布的NoSQL产品,其本身基于原始的Dynamo kay-value,最初是为了满足公司内部需求。具体看,就是设计网页或大数据应用时满足快速访问数据和及时实现部署的弹性收放。DynamoDB建立在SSD结构上,并自动实现数据添加功能。据悉,DynamoDB是一个共享型的数据库云服务。所谓共享型的数据库云服务,是指一台机器上的CPU、内存及磁盘资源会给多用户使用。按照AWS CTO Werner Vogels的说法:“DynamoDB是一个性能好、可靠高且具有可扩展性的NoSQL云数据库服务,DynamoDB集15年分布式非关系性数据库开发之精粹,又通过内部使用考验,是AWS团队精心打造的产品。”事实上,在AWS首页的Database列表中,只能看到RDS和DynamoDB,显然DynamoDB已经替换了SimpleDB原来在这个列表中的位置。详细对比可见《程序员文章》解析DynamoDB 

2.Amazon ElastiCache

Amazon ElastiCache不是技术上的NoSQL服务,但是其完全可以实现为开发者提供类似Memcached管理服务,以确保用户可以在MySQL部署尽可能快地使用数据。Memcached已被诸多网络所应用,包括Facebook。据了解,Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提供动态、数据库驱动网站的速度。Memcached基于一个存储键/值对的hashmap。其守护进程(daemon )是用C写的,但是客户端可以用任何语言来编写,并通过memcached协议与守护进程通信。

3.Cloudant

虽然Cloudant基于开源的CouchDB架构的数据库平台,但其自己认为自己并非是NoSQL服务,而仅是一个数据层。其通过收集全球各地的云供应商的资源来提供可预见的扩展性NoSQL存储,并内置了MapReduce analytics engine。这也是农业企业巨头——Monsanto采用Cloudant来支持其基因架构的一个原因。

从应用来看,Cloudant的数据存储方案更加适合分布式产生的数据,比如传感网、web服务器、移动设备服务等等。

4.Database.com

一网打尽18种主流数据库:12种SQL+6种NoSQL

作为Salesforce.com的独立数据库服务,Database.com不是NoSQL,也不是SQL。可以确定的是,多租户数据库架构也是为Salesforce.com的CRM和Force.com平台而服务的。其存储的数据类型非常多,包含非结构数据,专为但不仅局限于为Salesforce.com服务。

5.Microsoft Windows Azure Table Storage

这是专为Windows Azure而存在的NoSQL数据存储,其目的是为了方便查询数百万TB非关系型数据。因为其是 Windows Azure Storage的一部分,平均每个账户总数据库最大不超过100TB(Blob,Table和Queue storage)。

6.MongoHQ/MongoLab

MongoDB是迄今为止最流行的NoSQL数据库,其可以承担起管理云的重任。因此,围绕在MongoDB周围有很多服务,其中MongoHQ/MongoLab是最广为人知的。其应用场景很简单:快速部署、全面监测与实现高可靠性。二者都是通过提供共享和专用产品的方式来吸引更多用户。

显然,作者Derrick Harris 没有花费笔墨来描述Oracle、SQLServer、Symfoware、DB2、Sybase等更多耳熟能详的数据库,但作为目前市场主流的这18种创新数据库,与云计算的关系无疑更为紧密。(郭雪梅/编译

cloud-databases-101

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
說明InnoDB重做日誌和撤消日誌的作用。說明InnoDB重做日誌和撤消日誌的作用。Apr 15, 2025 am 12:16 AM

InnoDB使用redologs和undologs確保數據一致性和可靠性。 1.redologs記錄數據頁修改,確保崩潰恢復和事務持久性。 2.undologs記錄數據原始值,支持事務回滾和MVCC。

在解釋輸出(類型,鍵,行,額外)中要查找的關鍵指標是什麼?在解釋輸出(類型,鍵,行,額外)中要查找的關鍵指標是什麼?Apr 15, 2025 am 12:15 AM

EXPLAIN命令的關鍵指標包括type、key、rows和Extra。 1)type反映查詢的訪問類型,值越高效率越高,如const優於ALL。 2)key顯示使用的索引,NULL表示無索引。 3)rows預估掃描行數,影響查詢性能。 4)Extra提供額外信息,如Usingfilesort提示需要優化。

在解釋中使用臨時狀態以及如何避免它是什麼?在解釋中使用臨時狀態以及如何避免它是什麼?Apr 15, 2025 am 12:14 AM

Usingtemporary在MySQL查詢中表示需要創建臨時表,常見於使用DISTINCT、GROUPBY或非索引列的ORDERBY。可以通過優化索引和重寫查詢避免其出現,提升查詢性能。具體來說,Usingtemporary出現在EXPLAIN輸出中時,意味著MySQL需要創建臨時表來處理查詢。這通常發生在以下情況:1)使用DISTINCT或GROUPBY時進行去重或分組;2)ORDERBY包含非索引列時進行排序;3)使用複雜的子查詢或聯接操作。優化方法包括:1)為ORDERBY和GROUPB

描述不同的SQL交易隔離級別(讀取未讀取,讀取,可重複的讀取,可序列化)及其在MySQL/InnoDB中的含義。描述不同的SQL交易隔離級別(讀取未讀取,讀取,可重複的讀取,可序列化)及其在MySQL/InnoDB中的含義。Apr 15, 2025 am 12:11 AM

MySQL/InnoDB支持四種事務隔離級別:ReadUncommitted、ReadCommitted、RepeatableRead和Serializable。 1.ReadUncommitted允許讀取未提交數據,可能導致臟讀。 2.ReadCommitted避免臟讀,但可能發生不可重複讀。 3.RepeatableRead是默認級別,避免臟讀和不可重複讀,但可能發生幻讀。 4.Serializable避免所有並發問題,但降低並發性。選擇合適的隔離級別需平衡數據一致性和性能需求。

MySQL與其他數據庫:比較選項MySQL與其他數據庫:比較選項Apr 15, 2025 am 12:08 AM

MySQL適合Web應用和內容管理系統,因其開源、高性能和易用性而受歡迎。 1)與PostgreSQL相比,MySQL在簡單查詢和高並發讀操作上表現更好。 2)相較Oracle,MySQL因開源和低成本更受中小企業青睞。 3)對比MicrosoftSQLServer,MySQL更適合跨平台應用。 4)與MongoDB不同,MySQL更適用於結構化數據和事務處理。

MySQL索引基數如何影響查詢性能?MySQL索引基數如何影響查詢性能?Apr 14, 2025 am 12:18 AM

MySQL索引基数对查询性能有显著影响:1.高基数索引能更有效地缩小数据范围,提高查询效率;2.低基数索引可能导致全表扫描,降低查询性能;3.在联合索引中,应将高基数列放在前面以优化查询。

MySQL:新用戶的資源和教程MySQL:新用戶的資源和教程Apr 14, 2025 am 12:16 AM

MySQL學習路徑包括基礎知識、核心概念、使用示例和優化技巧。 1)了解表、行、列、SQL查詢等基礎概念。 2)學習MySQL的定義、工作原理和優勢。 3)掌握基本CRUD操作和高級用法,如索引和存儲過程。 4)熟悉常見錯誤調試和性能優化建議,如合理使用索引和優化查詢。通過這些步驟,你將全面掌握MySQL的使用和優化。

現實世界Mysql:示例和用例現實世界Mysql:示例和用例Apr 14, 2025 am 12:15 AM

MySQL在現實世界的應用包括基礎數據庫設計和復雜查詢優化。 1)基本用法:用於存儲和管理用戶數據,如插入、查詢、更新和刪除用戶信息。 2)高級用法:處理複雜業務邏輯,如電子商務平台的訂單和庫存管理。 3)性能優化:通過合理使用索引、分區表和查詢緩存來提升性能。

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

AI Hentai Generator

AI Hentai Generator

免費產生 AI 無盡。

熱門文章

R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
4 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.最佳圖形設置
4 週前By尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.如果您聽不到任何人,如何修復音頻
4 週前By尊渡假赌尊渡假赌尊渡假赌
WWE 2K25:如何解鎖Myrise中的所有內容
1 個月前By尊渡假赌尊渡假赌尊渡假赌

熱工具

SecLists

SecLists

SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

Atom編輯器mac版下載

Atom編輯器mac版下載

最受歡迎的的開源編輯器

DVWA

DVWA

Damn Vulnerable Web App (DVWA) 是一個PHP/MySQL的Web應用程序,非常容易受到攻擊。它的主要目標是成為安全專業人員在合法環境中測試自己的技能和工具的輔助工具,幫助Web開發人員更好地理解保護網路應用程式的過程,並幫助教師/學生在課堂環境中教授/學習Web應用程式安全性。 DVWA的目標是透過簡單直接的介面練習一些最常見的Web漏洞,難度各不相同。請注意,該軟體中

mPDF

mPDF

mPDF是一個PHP庫,可以從UTF-8編碼的HTML產生PDF檔案。原作者Ian Back編寫mPDF以從他的網站上「即時」輸出PDF文件,並處理不同的語言。與原始腳本如HTML2FPDF相比,它的速度較慢,並且在使用Unicode字體時產生的檔案較大,但支援CSS樣式等,並進行了大量增強。支援幾乎所有語言,包括RTL(阿拉伯語和希伯來語)和CJK(中日韓)。支援嵌套的區塊級元素(如P、DIV),

SAP NetWeaver Server Adapter for Eclipse

SAP NetWeaver Server Adapter for Eclipse

將Eclipse與SAP NetWeaver應用伺服器整合。