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

如何將SQL數據庫遷移到NoSQL

譯文
運維 數據庫運維
本文首先比較了關系型數據庫和NoSQL數據庫的各種特點和適用場景,然后介紹了如何使用云服務提供商提供的各種工具,將SQL數據庫遷移到NoSQL。

[[378796]]

【51CTO.com快譯】您知道關系型數據庫(RDBMS)與NoSQL數據庫的本質區別和適用場景嗎?

總的說來,RDBMS主要管理、存儲和操作的是結構化的數據。其中,數據格式、列、數據類型、屬性和模式都是固定的。而且實體之間的關系也基本保持一致。在使用RDBMS來存儲事務型數據或記錄時,底層數據庫除了必須保證事務的ACID(原子性、一致性、隔離性、耐久性),此外還需要重視數據的安全性和可訪問性。RDBMS的典型適用場景包括:財務交易記錄、OLTP、ERP、CRM系統、以及電子商務應用等。而SQL是處理RDBMS時常用的查詢語言。

NoSQL(有時也稱為非SQL或非關系型)數據庫是一種適用于管理非關系型數據(即:具有固定數據類型格式和變量,但不以表格格式來結構化數據)的數據庫。NoSQL數據庫有著諸如:鍵-值、基于文檔、基于列和基于圖等多種類型。NoSQL比較適合那些非結構化數據具備可擴展性,以及卓越性能的場景。

近年來,隨著技術的發展,雖然一些圖形數據庫也提供了事務在存儲時需要遵循的ACID屬性,但是它們仍處于早期有待改進的階段。NoSQL的典型數據是各種數據流、文檔、聊天消息、以及大數據等。它們往往來自諸如內容管理、個性化Web搜索引擎、機器學習、物聯網邊緣設備、以及存儲了來自異構源的大型用戶配置文件。

在此,我們首先對兩種數據庫的特征進行如下對比和總結: 

隨著業務的發展和各類需求的出現,許多企業需要將現有的RDBMS數據庫遷移到NoSQL,以實現業務的可擴展性和性能的動態調整。從上面的對比表格,我們可以看出,從RDBMS數據源遷移到NoSQL數據庫的優勢主要體現在:成本、收益、性能、可擴展性、變更、減少手動轉換的工作量、以及對于分析的廣泛支持等方面。

目前,Apache Cassandra和MongoDB是被使用最為廣泛的NoSQL數據庫。Atlas則是由MongoDB提供的DBaaS(數據庫即服務)。不過,目前支持將RDBMS遷移到MongoDB或Cassandra的工具并不多。當然,我們也可以使用ETL工具或自定義的轉換引擎,來實現此類復雜的遷移。

此外,由云服務提供商提供的專有數據庫有:Azure Cosmos DB、AWS DynamoDB、以及Google Cloud Spanner。這些云服務提供商往往能夠提供完善的架構、廣泛的支持能力、文檔和數據遷移工具。因此,與Cassandra或MongoDB相比,花費在建立和遷移到新的DynamoDB或Cosmos DB實例上所需的工作量會更少。當然,與Google相比,Azure和AWS NoSQL服務要更受業界的歡迎。

下面,我們來討論如何使用云服務提供商所提供的各種工具選項,將RDBMS遷移或轉換為NoSQL數據庫。

1.從傳統RDBMS DB到AWS DynamoDB的遷移工具

AWS Database Migration Service(AWS DMS,https://aws.amazon.com/dms)可以將數據從各種被廣泛使用的商業化RDBMS、和開源的數據庫,遷移到相似的同類數據庫,或異構的數據庫平臺,以及AWS(RDS)的DBaaS平臺上。

AWS Schema Conversion Tool(SCT)的對象映射功能,可以被用于在遷移的過程中,將原始數據重組為目標DynamoDB所需的數據結構。而對于復雜的轉換,我們可以使用Lambda函數。當然,業界也有許多開源的工具,可以將數據庫表先轉換為JSON對象,然后再將這些JSON對象導入NoSQL數據庫。

下面是一些具體遷移操作的實用鏈接:

  • 從RDBMS到DynamoDB - https://docs.aws.amazon.com/dms/latest/userguide/CHAP_Target.DynamoDB.html
  • 從Oracle到DynamoDB - https://aws.amazon.com/blogs/database/aws-database-migration-service-and-amazon-dynamodb-what-you-need-to-know/
  • 從Cassandra到DynamoDB - https://aws.amazon.com/blogs/database/migrate-apache-cassandra-databases-to-amazon-dynamodb-more-easily/
  • 從MongoDB到DynamoDB - https://aws.amazon.com/blogs/database/performing-a-live-migration-from-a-mongodb-cluster-to-amazon-dynamodb/

2.從RDBMS DB到Azure Cosmos DB的遷移工具

Azure Cosmos DB仿真器和Azure Cosmos DB Data Migration工具,可以將CSV或JSON對象等格式的源數據,從MSSQL數據庫遷移到Cosmos DB中。

Azure Database Migration Service(DMS)、Cosmos DB和MongoDB的API,可被用于將MongoDB遷移到Cosmos DB。

Azure DMS、Cosmos DB、Cassandra API、以及cqlsh命令實用程序,可被用于將Cassandra遷移到Cosmos DB。

而為了從MSSQL以外的其他RDBMS中進行轉換,Microsoft建議用戶使用諸如Blitzz.io等第三方工具。

Azure DMS、Azure SQL Server Migration Assistant(SSMA)和Ora2Pg,也可以被用于在關系型RDBMS,與MSSQL或Azure的DBaaS平臺之間,進行同質和異構的遷移。

當然,用戶在使用上述工具進行遷移之前,都需要事先具有Azure的Cosmos DB訂閱帳戶。

下面是一些具體遷移操作的實用鏈接:

  • 從MS SQL到Cosmos DB - https://docs.microsoft.com/en-us/azure/cosmos-db/import-data
  • 從Oracle到Cosmos DB - https://docs.microsoft.com/en-us/azure/cosmos-db/oracle-migrate-cosmos-db-blitzz
  • 從MongoDB到Cosmos DB - https://docs.microsoft.com/en-us/azure/cosmos-db/mongodb-introduction
  • 從Cassandra到Cosmos DB - https://datamigration.microsoft.com/scenario/cassandra-to-cosmos?step=1#migrating-from-cassandra

3.從SQL遷移到Google DataStore

Google提供的NoSQL服務包括Cloud Datastore和Bigtable。其中,Cloud Datastore已被更新升級為Firestore的服務。

針對從RDBMS數據庫或其他NoSQL平臺,遷移到Firestore或Bigtable,Google并沒有太多現成的工具和文檔支持。我們只能依靠由Google托管的RDBMS Cloud SQL的內置功能,將各種傳統的RDBMS遷移到Cloud SQL。而前文提到的另一個托管式RDBMS--Cloud Spanner,則需要通過手動操作來實現遷移。

有關Google的遷移操作,請參考鏈接--https://cloud.google.com/solutions/database-migration/technical-resources/

小結

如今,除了直接從SQL數據遷移到NoSQL數據庫,許多組織也正在將傳統的大型數據存儲,遷移到由文件存儲、NoSQL數據庫和SQL數據庫組成的數據湖模式中,進而方便開展存儲挖掘和大數據分析。

綜上所述,關系型數據庫和NoSQL數據庫分別適用于不同類型的作業和存儲需求。在進行數據庫的設計時,架構師必須考慮成本因素、高可用性(HA)設計、災難恢復(DR)機制、以及數據存儲和檢索的復雜性。如果您想進一步了解此方面的知識,請參閱如下兩個鏈接:

  • NoSQL與關系型數據庫,該何時用、怎么用? - https://dzone.com/articles/nosql-vs-relational-databases-when-to-use-what
  • 數據庫遷移的挑戰 - https://dzone.com/articles/database-migration-challenges

原文標題:SQL vs NoSQL and SQL to NoSQL Migration,作者:Sandeep Tol

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

 

責任編輯:華軒 來源: 51CTO
相關推薦

2011-04-06 17:30:41

SQL ServerSQL

2020-01-13 15:22:42

ERP云平臺遷移

2017-10-16 00:17:56

云計算信息管理遷移

2023-08-23 09:00:00

區塊鏈以太坊

2020-06-08 10:41:13

云計算數據工具

2021-07-13 09:45:48

CentOSAlmaLinux命令

2022-11-02 15:25:03

云數據庫云平臺

2012-08-24 09:07:25

IBMdW

2012-10-29 09:27:16

2015-03-20 13:40:17

2021-10-28 08:00:00

數據庫SQL技術

2011-09-07 09:30:57

服務器虛擬機

2020-12-08 10:01:48

DropboxNginxEnvoy

2016-12-12 19:16:43

數據云端

2010-08-12 09:43:31

CassandraMongoDB

2011-07-28 18:08:51

SQL Server MySQL

2016-10-08 17:27:52

云端數據庫云計算數據遷移

2012-06-20 11:17:02

MemSQL

2022-08-29 14:14:22

云計算云遷移數據分析

2024-03-28 09:00:00

NoSQL數據庫
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 蜜桃传媒一区二区 | 中文无码日韩欧 | 91亚洲国产成人久久精品网站 | 精品网| 精品9999| 亚洲综合在线一区二区 | 天天看天天爽 | 精品一区二区久久久久久久网站 | 天天干精品 | 国产一级一级 | 国产精品乱码一区二区三区 | 天堂久久网 | 成年女人免费v片 | 国产精品久久久久久久久免费相片 | 成人午夜免费福利视频 | 人人人干| 久久久久国产一区二区三区四区 | 看真人视频一级毛片 | 日本一二三区在线观看 | 欧美亚洲免费 | 91视频在线 | 天天操欧美 | 亚洲欧美一区二区三区在线 | 国产精品久久久久久久久久久久 | 久久人| 国产精品一区二区三区四区 | 欧美在线日韩 | 麻豆av免费观看 | 久久久成人一区二区免费影院 | 欧美日韩电影免费观看 | jlzzjlzz国产精品久久 | 激情av网站 | 91资源在线观看 | 91av国产在线视频 | 国内久久 | 国产成人一区二区 | 精品国产一区二区三区成人影院 | 久久久久国产精品一区 | 久久一级免费视频 | 亚洲欧美日韩精品久久亚洲区 | 成人欧美日韩一区二区三区 |