引言
10年積累的網(wǎng)站建設(shè)、網(wǎng)站制作經(jīng)驗(yàn),可以快速應(yīng)對(duì)客戶對(duì)網(wǎng)站的新想法和需求。提供各種問題對(duì)應(yīng)的解決方案。讓選擇我們的客戶得到更好、更有力的網(wǎng)絡(luò)服務(wù)。我雖然不認(rèn)識(shí)你,你也不認(rèn)識(shí)我。但先網(wǎng)站設(shè)計(jì)制作后付款的網(wǎng)站建設(shè)流程,更有西塞山免費(fèi)網(wǎng)站建設(shè)讓你可以放心的選擇與我們合作。
作為資深的DBA同胞你是否在工作中也存在這樣的情況呢?公司要搭建數(shù)據(jù)平臺(tái),首要的工作就是把舊庫的數(shù)據(jù)導(dǎo)入到新庫中,雖然各種數(shù)據(jù)庫都提供了導(dǎo)入導(dǎo)出的工具,但是數(shù)據(jù)需要存儲(chǔ)到各個(gè)地方,MongoDB、HBase、MySQL、Oracle等各種各樣的不同數(shù)據(jù)庫,同步起來就有一些困難了。那么如何做好兩個(gè)數(shù)據(jù)庫之間、不同類型的數(shù)據(jù)庫之間的相互遷移轉(zhuǎn)換呢?
今天小編就常用的數(shù)據(jù)庫同步、遷移轉(zhuǎn)換工具進(jìn)行一個(gè)匯總,以便大家在需要的時(shí)候,選擇到合適的工具完成自己的工作~
一、SQLyog
SQLyog簡介
SQLyog是業(yè)界著名的Webyog公司出品的一款簡潔高效、功能強(qiáng)大的圖形化MySQL數(shù)據(jù)庫管理工具。使用SQLyog可以快速直觀地讓你從世界的任何角落通過網(wǎng)絡(luò)來維護(hù)遠(yuǎn)端的MySQL數(shù)據(jù)庫。它也是小編工作一直使用的MySQL管理客戶端工具哦。
SQLyog特點(diǎn)
方便快捷的數(shù)據(jù)庫同步與數(shù)據(jù)庫結(jié)構(gòu)同步工具;
易用的數(shù)據(jù)庫、數(shù)據(jù)表備份與還原功能;
支持導(dǎo)入與導(dǎo)出XML、HTML、CSV等多種格式的數(shù)據(jù);
直接運(yùn)行批量SQL腳本文件,速度極快;
新版本更是增加了強(qiáng)大的數(shù)據(jù)遷移
二、Navicat
Navicat簡介
Navicat是一套快速、可靠并且價(jià)格相當(dāng)便宜的數(shù)據(jù)庫管理工具,Navicat提供多達(dá) 7 種語言供客戶選擇,被認(rèn)為是最受歡迎的數(shù)據(jù)庫前端用戶界面工具。它可以用來對(duì)本地或遠(yuǎn)程的 MySQL、SQL Server、SQLite、Oracle 及 PostgreSQL 數(shù)據(jù)庫進(jìn)行管理及開發(fā)。
Navicat支持功能
數(shù)據(jù)模型
數(shù)據(jù)傳輸
數(shù)據(jù)同步
結(jié)構(gòu)同步
導(dǎo)入、導(dǎo)出、備份、還原、報(bào)表創(chuàng)建工具及計(jì)劃以協(xié)助管理數(shù)據(jù)
三、Ottor
Ottor簡介
Otttor是由阿里巴巴開源的一個(gè)數(shù)據(jù)同步產(chǎn)品,它的最初的目的是為了解決跨國異地整個(gè)機(jī)房的架構(gòu)為雙A,兩邊均可寫。開發(fā)時(shí)間長達(dá)7年,并持續(xù)到現(xiàn)在。目前阿里巴巴B2B內(nèi)部的本地/異地機(jī)房的同步需求基本全上了Otter。Otter基于數(shù)據(jù)庫增量日志解析,支持mysql/oracle數(shù)據(jù)庫進(jìn)行同步,在最新的v4.2.13已經(jīng)支持mysql5.7以及阿里云提供的RDS數(shù)據(jù)庫。小編已經(jīng)在實(shí)際項(xiàng)目中使用。
Ottor特點(diǎn)
基于Canal開源產(chǎn)品,獲取數(shù)據(jù)庫增量日志數(shù)據(jù)。 (什么是Canal,詳情查看)。
典型管理系統(tǒng)架構(gòu),manager(web管理)+node(工作節(jié)點(diǎn)),manager運(yùn)行時(shí)推送同步配置到node節(jié)點(diǎn),node節(jié)點(diǎn)將同步狀態(tài)反饋到manager上。
基于zookeeper,解決分布式狀態(tài)調(diào)度的,允許多node節(jié)點(diǎn)之間協(xié)同工作.(otter node依賴于zookeeper進(jìn)行分布式調(diào)度,需要安裝一個(gè)zookeeper節(jié)點(diǎn)或者集群)。
Ottor運(yùn)行原理
db : 數(shù)據(jù)源以及需要同步到的庫
Canal : 用戶獲取數(shù)據(jù)庫增量日志,目前主要支持mysql
manager : 配置同步規(guī)則設(shè)置數(shù)據(jù)源同步源等
zookeeper : 協(xié)調(diào)node進(jìn)行協(xié)調(diào)工作
node : 負(fù)責(zé)任務(wù)處理處理接受到的部分同步工作
四、ESF Database Migration
ESF Database Migration簡介
ESF Database Convert是一款強(qiáng)大的商業(yè)數(shù)據(jù)庫轉(zhuǎn)換工具。支持常見數(shù)據(jù)庫之間相互轉(zhuǎn)換,目前網(wǎng)上能找到“免費(fèi)”版本,如有不同數(shù)據(jù)庫相互轉(zhuǎn)的需求,可以用此工具解決你的問題。
官方地址為:
ESF Database Migration特點(diǎn)
它支持Oracle, MySQL, SQL Server, PostgreSQL, Visual Foxpro, FireBird, InterBase, Access, Excel, Paradox, Lotus, dBase, Text...之間互相轉(zhuǎn)換
五、DB2DB
DB2DB簡介
DB2DB 是目前經(jīng)過測試速度最快、最穩(wěn)定實(shí)現(xiàn)多種數(shù)據(jù)庫之間進(jìn)行數(shù)據(jù)轉(zhuǎn)換的工具。支持 SQL Server、MySQL、SQLite、Access 等多種數(shù)據(jù)庫類型,通過該工具可以把原來的系統(tǒng),方便快速地部署在不同的數(shù)據(jù)庫甚至是云端數(shù)據(jù)庫下。在大數(shù)據(jù)情況下(千萬級(jí)別以上),處理速度比國內(nèi)外同類軟件要高出300%以上。并針對(duì)云端數(shù)據(jù)庫中使用最多的 MySQL 數(shù)據(jù)庫進(jìn)行優(yōu)化,使得從源數(shù)據(jù)庫復(fù)制到新數(shù)據(jù)庫時(shí)保留更多的數(shù)據(jù)表屬性設(shè)置。這樣大大減少程序員、DBA、實(shí)施人員將大型數(shù)據(jù)庫進(jìn)行遷移時(shí)的等待、測試和調(diào)試時(shí)間,減少公司為了測試某系統(tǒng)轉(zhuǎn)換到新數(shù)據(jù)庫系統(tǒng)時(shí)的人力成本。
官方地址:
DB2DB支持功能
任意類型數(shù)據(jù)庫間進(jìn)行轉(zhuǎn)換;
數(shù)據(jù)庫表結(jié)構(gòu)自動(dòng)同步;
數(shù)據(jù)表索引自動(dòng)同步;
數(shù)據(jù)表字段默認(rèn)值自動(dòng)同步;
支持對(duì)二進(jìn)制字段數(shù)據(jù)的同步;
支持各種數(shù)據(jù)庫中自增型字段的處理;
支持同步前對(duì)數(shù)據(jù)表進(jìn)行檢查,避免出現(xiàn)由于數(shù)據(jù)庫自身限制的原因而導(dǎo)致同步失敗的情況;
支持把同步內(nèi)容導(dǎo)出為 SQL 文件的功能;
支持自定義選擇需要同步的數(shù)據(jù)表;
支持將配置保存為方案,以方便日后重新使用;
針對(duì)不同的機(jī)器配置,可以選擇單線程或多線程同步方式。
通過靈活的方式(可按月/周/天/小時(shí)/分鐘)設(shè)定程序不限次定時(shí)執(zhí)行同步動(dòng)作。
六、 Kettle
Kettle簡介
Kettle是一款國外開源的ETL工具,使用突破性的元數(shù)據(jù)驅(qū)動(dòng)方法提供強(qiáng)大的提取,轉(zhuǎn)換和加載(ETL)功能。在Windows、Linux、Unix上均可運(yùn)行,數(shù)據(jù)抽取高效穩(wěn)定。Kettle 中文名稱叫水壺,它憑借圖形化,拖放式設(shè)計(jì)環(huán)境以及可擴(kuò)展、數(shù)據(jù)集成等特點(diǎn),越來越成為組織的選擇。
Kettle特點(diǎn)
Kettle這個(gè)ETL工具集,它允許你管理來自不同數(shù)據(jù)庫的數(shù)據(jù),通過提供一個(gè)圖形化的用戶環(huán)境來描述你想做什么,而不是你想怎么做。Kettle中有兩種腳本文件,transformation和job,transformation完成針對(duì)數(shù)據(jù)的基礎(chǔ)轉(zhuǎn)換,job則完成整個(gè)工作流的控制。
七、SyncNavigator
SyncNavigator簡介
號(hào)稱國內(nèi)做的最好的數(shù)據(jù)庫同步軟件,傻瓜式同步數(shù)據(jù)庫,只需要你設(shè)置好來源數(shù)據(jù)庫和目標(biāo)數(shù)據(jù)庫的賬號(hào)和密碼,一鍵開啟,后臺(tái)自動(dòng)同步,斷點(diǎn)續(xù)傳,增量同步,幾乎不占內(nèi)存和CPU資源。并且還支持異構(gòu)數(shù)據(jù)庫,也可以同步部分表或者部分字段,都可以進(jìn)行更為精準(zhǔn)的設(shè)置操作。
syncnavigator特點(diǎn)
是一款專業(yè)的SQLSERVER,MySQL數(shù)據(jù)庫同步軟件,它為你提供一種簡單智能的方式完成復(fù)雜的數(shù)據(jù)庫數(shù)據(jù)同步,分發(fā)操作。
支持同構(gòu)數(shù)據(jù)庫同步,異構(gòu)數(shù)據(jù)庫同步,定時(shí)同步,增量同步,斷點(diǎn)續(xù)傳
完整支持Microsoft SQL Server 2000,2005,2008
支持Mysql4.1,5.0,5.4,5.5
支持大容量數(shù)據(jù)庫快速同步。
八、DataX3.0
DataX3.0特點(diǎn)
DataX 是阿里巴巴集團(tuán)內(nèi)被廣泛使用的離線數(shù)據(jù)同步工具/平臺(tái),實(shí)現(xiàn)包括 MySQL、SQL Server、Oracle、PostgreSQL、HDFS、Hive、HBase、OTS、ODPS 等各種異構(gòu)數(shù)據(jù)源之間高效的數(shù)據(jù)同步功能。
DataX3.0特點(diǎn)
DataX本身作為離線數(shù)據(jù)同步框架,采用Framework + plugin架構(gòu)構(gòu)建。將數(shù)據(jù)源讀取和寫入抽象成為Reader/Writer插件,納入到整個(gè)同步框架中。
Reader:Reader 為數(shù)據(jù)采集模塊,負(fù)責(zé)采集數(shù)據(jù)源的數(shù)據(jù),將數(shù)據(jù)發(fā)送給Framework。
Writer: Writer為數(shù)據(jù)寫入模塊,負(fù)責(zé)不斷向Framework取數(shù)據(jù),并將數(shù)據(jù)寫入到目的端。
Framework:Framework用于連接reader和writer,作為兩者的數(shù)據(jù)傳輸通道,并處理緩沖,流控,并發(fā),數(shù)據(jù)轉(zhuǎn)換等核心技術(shù)問題。
支持的數(shù)據(jù)庫:
經(jīng)過幾年積累,DataX目前已經(jīng)有了比較全面的插件體系,主流的RDBMS數(shù)據(jù)庫、NOSQL、大數(shù)據(jù)計(jì)算系統(tǒng)都已經(jīng)接入。DataX目前支持?jǐn)?shù)據(jù)如下:
大家如有更好的工具推薦,歡迎在留言區(qū)補(bǔ)充~
、阿里云RDS數(shù)據(jù)庫恢復(fù)備份怎么處理?
建議您通過創(chuàng)建臨時(shí)實(shí)例或克隆實(shí)例來恢復(fù)數(shù)據(jù),驗(yàn)證臨時(shí)實(shí)例或克隆實(shí)例的數(shù)據(jù)后,再把需要的數(shù)據(jù)遷移到生產(chǎn)實(shí)例,詳情請(qǐng)參見通過克隆實(shí)例恢復(fù)到主實(shí)例和通過臨時(shí)實(shí)例恢復(fù)到主實(shí)例。
2、阿里云rds主從配置和切換是怎樣的?
(1)單個(gè)RDS無需設(shè)置:目前RDS本身就是高可用的主從架構(gòu),購買一個(gè)RDS,其實(shí)你得了兩個(gè)服務(wù)器(一個(gè)主服務(wù)器,一個(gè)備份用的從服務(wù)器)。如果主服務(wù)器出故障了,自動(dòng)切換到從服務(wù)器。所以,不需要做我們自己來做主從配置、備份、切換等。
(2)多個(gè)RDS不能做設(shè)置:rds權(quán)限限制2個(gè)RDS之間不能再做主從備份。
3、如何將RDS上的數(shù)據(jù)庫備份到云服務(wù)器中?
您可以通過導(dǎo)出SQL語句的方式將數(shù)據(jù)庫備份到云服務(wù)器上,也可以通過控制臺(tái)的備份下載功能將RDS備份文件下載到云服務(wù)器上面。
4、通常,從新購實(shí)例到可以開始使用實(shí)例,您需要完成如下操作:
5、什么是阿里云rds數(shù)據(jù)庫的透明切換?
(1)當(dāng)RDS實(shí)例發(fā)生主備切換、規(guī)格升級(jí)時(shí),不在事務(wù)中的連接會(huì)自動(dòng)橋接,避免中斷,對(duì)應(yīng)用無感知。
(2)該功能免費(fèi)使用
(3)主備切換時(shí)對(duì)應(yīng)用透明
(4)操作步驟:登錄RDS管理控制臺(tái)選擇目標(biāo)實(shí)例所在地域單擊目標(biāo)實(shí)例的ID,進(jìn)入基本信息頁面。選擇左側(cè)菜單欄中的數(shù)據(jù)庫代理,進(jìn)入數(shù)據(jù)庫代理頁面。選擇透明切換標(biāo)簽頁默認(rèn)開通,需要時(shí)可以手動(dòng)關(guān)閉
6、阿里云rds數(shù)據(jù)庫的使用操作需要注意些什么:
(1)無需基礎(chǔ)運(yùn)維:
購買RDS實(shí)例后,您不需要做數(shù)據(jù)庫的基礎(chǔ)運(yùn)維(例如高可用、打安全補(bǔ)丁等)
(2)預(yù)防實(shí)例升級(jí)閃斷:
RDS實(shí)例升級(jí)的過程中會(huì)出現(xiàn)一次最長30秒左右的連接閃斷,需要您提前做好準(zhǔn)備,并設(shè)置好程序的自動(dòng)重連,避免因?yàn)樯?jí)導(dǎo)致服務(wù)不可用。(對(duì)于RDS for MySQL實(shí)例,開啟透明切換可以減少95%的連接閃斷。)
(3)預(yù)防故障切換:
對(duì)于高可用版和金融版實(shí)例,當(dāng)主節(jié)點(diǎn)出現(xiàn)故障時(shí),RDS會(huì)在30秒內(nèi)切換到備節(jié)點(diǎn)。切換過程中有30秒左右的連接閃斷,需要您設(shè)置好程序的自動(dòng)重連,避免因?yàn)榍袚Q導(dǎo)致服務(wù)不可用。
(4)切換內(nèi)外網(wǎng)需要更新鏈接地址:
切換內(nèi)外網(wǎng)的過程中,服務(wù)器與RDS實(shí)例之間的連接會(huì)斷開,IP地址也會(huì)改變。切換完成以后請(qǐng)及時(shí)更新程序中的連接地址。
(5)數(shù)據(jù)恢復(fù)前備份好重要數(shù)據(jù):
建議您在數(shù)據(jù)恢復(fù)前備份好重要數(shù)據(jù),以免導(dǎo)致數(shù)據(jù)丟失。
(6)定期檢查實(shí)例存儲(chǔ)空間:
如果實(shí)例的存儲(chǔ)空間已滿,該實(shí)例會(huì)被自動(dòng)鎖定,變成只讀狀態(tài)。建議您定期檢查存儲(chǔ)空間的使用情況。如果存儲(chǔ)空間使用率過高,請(qǐng)參考解決方法進(jìn)行處理。
(7)請(qǐng)檢查性能優(yōu)化和連接數(shù):
請(qǐng)檢查RDS實(shí)例的CPU核數(shù)、內(nèi)存、IOPS、存儲(chǔ)空間和連接數(shù)是否足夠,如果不夠需要優(yōu)化或者升級(jí)。請(qǐng)檢查RDS實(shí)例是否存在性能問題,例如是否有大量的慢SQL、SQL語句是否需要優(yōu)化、是否有多余的索引或者缺失的索引等。
7、阿里云的rds怎么連接?
完成創(chuàng)建實(shí)例、設(shè)置白名單和創(chuàng)建賬號(hào)等操作后,您可以使用數(shù)據(jù)管理服務(wù)DMS(Data Management Service)或通用數(shù)據(jù)庫客戶端連接到RDS實(shí)例。(提示:連接操作前需要先在RDS實(shí)例設(shè)置賬號(hào)和密碼)
(1)使用DMS連接實(shí)例:DMS是阿里云提供的圖形化的數(shù)據(jù)管理工具,可用于管理關(guān)系型數(shù)據(jù)庫和NoSQL數(shù)據(jù)庫,支持?jǐn)?shù)據(jù)管理、結(jié)構(gòu)管理、用戶授權(quán)、安全審計(jì)、數(shù)據(jù)趨勢、數(shù)據(jù)追蹤、BI圖表、性能與優(yōu)化等功能。(具體操作請(qǐng)參見通過DMS登錄RDS數(shù)據(jù)庫)
(2)使用客戶端連接實(shí)例:由于RDS與原生的數(shù)據(jù)庫服務(wù)完全兼容,所以您可以使用任何通用的數(shù)據(jù)庫客戶端連接到RDS實(shí)例,且連接方法類似。
MongoDB是一個(gè)面向文檔的數(shù)據(jù)庫,屬于NoSQL數(shù)據(jù)庫,它使用類似JSON的文檔和schemata。
MongoDB的默認(rèn)接口是(CLI)命令行,新用戶很難像專業(yè)人員那樣處理數(shù)據(jù)庫。因此,有一些MongoDB管理工具來提供GUI界面以提高生產(chǎn)力。就像phpmyadmin為MySQL/MariaDB數(shù)據(jù)庫提供基于HTTP網(wǎng)絡(luò)的GUI界面一樣。但是,此處包含的所有工具都不是基于HTTP的,只有少數(shù)工具為MongoDB提供Web界面。以下是使用GUI的比較流行的MongoDB管理工具列表:
要從具有圖形用戶界面的MongoDB開始,MongoDB是最好的方法之一。MongoDB Compass Community由MongoDB開發(fā)人員開發(fā),這意味著更高的可靠性和兼容性。它為MongoDB提供GUI mongodb工具,以 探索 數(shù)據(jù)庫交互;具有完整的CRUD功能并提供可視方式。借助內(nèi)置模式可視化,用戶可以分析文檔并顯示豐富的結(jié)構(gòu)。為了監(jiān)控服務(wù)器的負(fù)載,它提供了數(shù)據(jù)庫操作的實(shí)時(shí)統(tǒng)計(jì)信息。就像MongoDB一樣,Compass也有兩個(gè)版本,一個(gè)是Enterprise(付費(fèi)),社區(qū)可以免費(fèi)使用。適用于Linux,Mac或Windows。
NoSQLBooster是MongoDB CLI界面中非常流行的GUI工具。它正式名稱為MongoBooster。NoSQLBooster是一個(gè)跨平臺(tái),它帶有一堆mongodb工具來管理數(shù)據(jù)庫和監(jiān)控服務(wù)器。這個(gè)Mongodb工具包括服務(wù)器監(jiān)控工具,Visual Explain Plan,查詢構(gòu)建器,SQL查詢,ES2017語法支持等等......它有免費(fèi),個(gè)人和商業(yè)版本,當(dāng)然,免費(fèi)版本有一些功能限制。NoSQLBooster也可用于Windows,MacOS和Linux。
ClusterControl是另一個(gè)MongoDB工具,具有管理數(shù)據(jù)庫基礎(chǔ)結(jié)構(gòu)的GUI。它還有兩個(gè)版本 - 社區(qū)和企業(yè)版。不用說,ClusterControl社區(qū)版可以免費(fèi)使用,而企業(yè)則是付費(fèi)的。它不僅限于MongoDB,還支持MySQL,MySQL復(fù)制,MySQL NDB集群,Galera集群,MariaDB,PostgreSQL,TimescaleDB,Docker和ProxySQL。
ClusterControl為數(shù)據(jù)庫基礎(chǔ)架構(gòu)提供全自動(dòng)安全性,該基礎(chǔ)架構(gòu)具有單個(gè)圖形用戶界面,可操作和自動(dòng)化MongoDB和MySQL數(shù)據(jù)庫環(huán)境。它可通過YUM/APT提供回購,適用于Linux平臺(tái)(RedHat,Centos,Ubuntu或Debian)。
Nosqlclient是一個(gè)免費(fèi)的開源MongoDB管理工具,基于Web的GUI意味著不再需要命令行來管理數(shù)據(jù)庫。我們可以使用Nosqlclient在MongoDB中插入,刪除或更新數(shù)據(jù),而無需使用查詢。它可作為桌面應(yīng)用程序,Docker和Web應(yīng)用程序使用。Web使用HTTP為MOngoDB提供基于瀏覽器的界面。
Robo 3T由MongoDB客戶端Studio 3T的開發(fā)人員維護(hù)和提供。以前,Robo 3T被稱為Robomongo。它也是適用于Windows,MacOS和Linux的跨平臺(tái)MongoDB GUI管理工具。它具有相同的引擎和環(huán)境,是MongoDB shell(3.2)的一部分。
上面提到的Robomong被3T收購并更名為Robot 3T;現(xiàn)在是Studio 3T的一部分。那么,Studio 3T是什么?與其他提到的MongoDB管理GUI工具一樣,Studio 3T也是一個(gè)基于GUI的工具,用于管理數(shù)據(jù)庫,但在付費(fèi)類別中。但是,此工具的30天免費(fèi)試用版允許用戶在投入資金之前使用并了解其功能。與免費(fèi)和開源Robot 3T相比,Studio 3T具有更多功能并提供企業(yè)支持。與Robo 3T相同,它也適用于Windows,Linux(Ubuntu和CentOS)和MacOS。
Mongo Management Studio是一個(gè)用于數(shù)據(jù)庫管理的免費(fèi)MongoDB GUI工具。它輕巧,界面清晰,易于開發(fā)基于MongoDB的項(xiàng)目。它使用nodeJs,Electron框架,MongoDB和AngularJs開發(fā)。MMS與MongoDB 3.0/3.2/3.4兼容。
與上述所有MongoDB管理工具一樣,用戶可以輕松安裝它,但免費(fèi)版僅適用于Windows;而企業(yè)和個(gè)人則適用于Linux,Windows和MacOS。企業(yè)版(Web服務(wù)器)支持MongoDB Web界面HTTP GUI,這意味著我們可以在主服務(wù)器上安裝,之后可以在本地或遠(yuǎn)程使用瀏覽器的任何系統(tǒng)上訪問。但是,個(gè)人版和免費(fèi)版只能在已安裝它們的本地系統(tǒng)上使用。
它是面向關(guān)系,NoSQL和云平臺(tái)的數(shù)據(jù)庫開發(fā)人員的通用集成開發(fā)環(huán)境(IDE)。因此,支持各種數(shù)據(jù)庫來開發(fā),訪問,管理和可視化分析數(shù)據(jù)。
對(duì)于MongoDB,Aqua Data Studio使用具有管理和數(shù)據(jù)庫查詢功能的圖形用戶界面作為管理工具。Aqua Data studio的Visual界面允許用戶瀏覽和修改數(shù)據(jù)庫結(jié)構(gòu),包括模式對(duì)象和集合,以及維護(hù)數(shù)據(jù)庫安全性。
它提供了一個(gè)MongoDB數(shù)據(jù)庫工具包,包括各種工具,如Visual Analytics,MongoSQL查詢參考,MongoJS查詢分析器,MongoShell MongoShell,F(xiàn)luidShell,查詢和分析工具,網(wǎng)格和數(shù)據(jù)透視圖,表數(shù)據(jù)編輯器,導(dǎo)入和導(dǎo)出工具,實(shí)體關(guān)系建模;Visual Query Builder;比較工具:架構(gòu)比較,文件比較;SQL 歷史 記錄,Open API腳本環(huán)境,集成安全Shell(SSH)和版本控制:Subversion(SVN),Git,CVS,Perforce。
MongoJS查詢分析器Javascript編輯器允許執(zhí)行JavaScript命令并支持自動(dòng)完成和語法突出顯示。結(jié)果可以在樹層次結(jié)構(gòu),網(wǎng)格結(jié)果和文本中看到。
作為付費(fèi)產(chǎn)品,Aqua Data Studio的試用版提供14天,具有所有企業(yè)功能。所以,如果你正在尋找一些付費(fèi)產(chǎn)品,那么你可以在花錢之前免費(fèi)試用它。它適用于Windows,Linux和MacOS。
這聽起來像phpMyAdmin工具。但是,phpMoAdmin也是PHP編寫的但是可用于MongoDB。它基于Vork PHP框架。很輕巧,易于安裝。它只有115KB的moadmin.php文件,用戶可以放在網(wǎng)站的任何地方開始工作。
它是一個(gè)跨平臺(tái)的MongoDB管理工具,在Open Source許可下發(fā)布,使用Electron框架和Angular JS構(gòu)建。可在GitHub上找到。
以上談到了Windows,Linux和MacOS MongoDB管理客戶端,所以那些正在尋找智能手機(jī)和平板電腦的用戶mongoDB管理可以試試Mongolime。它為MongoDB移動(dòng)客戶端提供了輕松連接和訪問MongoDB服務(wù)器的功能。它具有內(nèi)置的SSH隧道,可以通過SSL輕松驗(yàn)證和連接遠(yuǎn)程服務(wù)器。MongoLime是免費(fèi)增值MongoDB客戶端應(yīng)用程序,支持iOS和Android平臺(tái)。
使用Node.js,Express和Bootstrap3編寫的基于Web的MongoDB管理界面。它允許連接多個(gè)數(shù)據(jù)庫;查看/添加/刪除數(shù)據(jù)庫,集合和文檔;預(yù)覽音頻/視頻/圖像資產(chǎn);GridFS支持 - 添加/獲取/刪除難以置信的大文件;在文檔中使用BSON數(shù)據(jù)類型,Mobile / Responsive - Bootstrap以及更多功能。
1) MongoVUE 是一個(gè)windows平臺(tái)的桌面GUI。 他有一個(gè)簡單干凈的UI并且基本功能免費(fèi)。數(shù)據(jù)可以在文本視圖、樹狀視圖或者表格視圖中展示。也可以將查詢結(jié)果保存以備不時(shí)之需-我們發(fā)現(xiàn)這個(gè)非常方便。更多高級(jí)的功能需要你購買一個(gè)授權(quán)。整體來說,軟件看上去比較穩(wěn)定并且維護(hù)得很好。
2) MongoHub 是一個(gè)MongoDB的原生Mac GUI。從安全的角度,他為方便地通過SSH連接MongoDB服務(wù)器提供了一個(gè)選擇?!癝tatMonitor”功能可以現(xiàn)場展示統(tǒng)計(jì)信息,又名mongostat。查詢界面功能有一點(diǎn)有限,因?yàn)樗瓷先ブ恢С忠粋€(gè)樹狀視圖,此外,也無法保存查詢的結(jié)果。依我們的經(jīng)驗(yàn),軟件工作得相當(dāng)不錯(cuò),但是看上去沒有被好好的維護(hù),因此需要自己承擔(dān)使用風(fēng)險(xiǎn)。
3) RockMongo 是一個(gè)基于HTML的MongoDB GUI,他是用PHP寫的并且是開源的?;贖TML的方式的一個(gè)缺點(diǎn)是,要運(yùn)行這個(gè)GUI需要一個(gè)PHP服務(wù)器。你也可以選擇在本地運(yùn)行PHP服務(wù)器。這個(gè)UI沒有多余的裝飾,非常易用,并且支持處理集合、統(tǒng)計(jì)等所有常規(guī)操作。查詢界面只支持在一個(gè)表格/文本模型中展示數(shù)據(jù),因此當(dāng)處理多級(jí)文檔時(shí)這會(huì)是一個(gè)問題,此外,他看上去沒有太多的提交活動(dòng),所以我們懷疑該項(xiàng)目不是很活躍。
4)RoboMongo 是一個(gè)shell-centric的MongoDB的GUI,支持Windows、MacOS和Linux平臺(tái)。 RoboMongo仍然是一個(gè)早期的版本,它的最新版本號(hào)是0.8.4。它也是為數(shù)不多的支持MongoDB服務(wù)器SSL連接的GUI。RoboMongo也支持SSH隧道連接。查詢界面顯示了樹視圖、表格視圖和文本視圖中的數(shù)據(jù)。您還可以保存您的查詢以供以后使用。其中一個(gè)最棒的特點(diǎn)是它也支持shell,所以你仍然可以舒適的繼續(xù)使用shell命令。有一些奇怪的UI,我想會(huì)隨著時(shí)間的推移而改變。如果積極維護(hù),我想這可能是MongoDB最好的跨平臺(tái)GUI。
Membase
Membase 是 NoSQL 家族的一個(gè)新的重量級(jí)的成員。Membase是開源項(xiàng)目,源代碼采用了Apache2.0的使用許可。該項(xiàng)目托管在GitHub.Source tarballs上,可以下載beta版本的Linux二進(jìn)制包。該產(chǎn)品主要是由North Scale的memcached核心團(tuán)隊(duì)成員開發(fā)完成,其中還包括Zynga和NHN這兩個(gè)主要貢獻(xiàn)者的工程師,這兩個(gè)組織都是很大的在線游戲和社區(qū)網(wǎng)絡(luò)空間的供應(yīng)商。
Membase容易安裝、操作,可以從單節(jié)點(diǎn)方便的擴(kuò)展到集群,而且為memcached(有線協(xié)議的兼容性)實(shí)現(xiàn)了即插即用功能,在應(yīng)用方面為開發(fā)者和經(jīng)營者提供了一個(gè)比較低的門檻。做為緩存解決方案,Memcached已經(jīng)在不同類型的領(lǐng)域(特別是大容量的Web應(yīng)用)有了廣泛的使用,其中 Memcached的部分基礎(chǔ)代碼被直接應(yīng)用到了Membase服務(wù)器的前端。
通過兼容多種編程語言和框架,Membase具備了很好的復(fù)用性。在安裝和配置方面,Membase提供了有效的圖形化界面和編程接口,包括可配置 的告警信息。
Membase的目標(biāo)是提供對(duì)外的線性擴(kuò)展能力,包括為了增加集群容量,可以針對(duì)統(tǒng)一的節(jié)點(diǎn)進(jìn)行復(fù)制。 另外,對(duì)存儲(chǔ)的數(shù)據(jù)進(jìn)行再分配仍然是必要的。
這方面的一個(gè)有趣的特性是NoSQL解決方案所承諾的可預(yù)測的性能,類準(zhǔn)確性的延遲和吞吐量。通過如下方式可以獲得上面提到的特性:
◆ 自動(dòng)將在線數(shù)據(jù)遷移到低延遲的存儲(chǔ)介質(zhì)的技術(shù)(內(nèi)存,固態(tài)硬盤,磁盤)
◆ 可選的寫操作一一異步,同步(基于復(fù)制,持久化)
◆ 反向通道再平衡[未來考慮支持]
◆ 多線程低鎖爭用
◆ 盡可能使用異步處理
◆ 自動(dòng)實(shí)現(xiàn)重復(fù)數(shù)據(jù)刪除
◆ 動(dòng)態(tài)再平衡現(xiàn)有集群
◆ 通過把數(shù)據(jù)復(fù)制到多個(gè)集群單元和支持快速失敗轉(zhuǎn)移來提供系統(tǒng)的高可用性。
MongoDB
MongoDB是一個(gè)介于關(guān)系數(shù)據(jù)庫和非關(guān)系數(shù)據(jù)庫之間的產(chǎn)品,是非關(guān)系數(shù)據(jù)庫當(dāng)中功能最豐富,最像關(guān)系數(shù)據(jù)庫的。他支持的數(shù)據(jù)結(jié)構(gòu)非常松散,是類似json的bjson格式,因此可以存儲(chǔ)比較復(fù)雜的數(shù)據(jù)類型。Mongo最大的特點(diǎn)是他支持的查詢語言非常強(qiáng)大,其語法有點(diǎn)類似于面向?qū)ο蟮牟樵冋Z言,幾乎可以實(shí)現(xiàn)類似關(guān)系數(shù)據(jù)庫單表查詢的絕大部分功能,而且還支持對(duì)數(shù)據(jù)建立索引。它的特點(diǎn)是高性能、易部署、易使用,存儲(chǔ)數(shù)據(jù)非常方便。
主要功能特性:
◆ 面向集合存儲(chǔ),易存儲(chǔ)對(duì)象類型的數(shù)據(jù)
“面向集合”(Collenction-Oriented),意思是數(shù)據(jù)被分組存儲(chǔ)在數(shù)據(jù)集中,被稱為一個(gè)集合(Collenction)。每個(gè) 集合在數(shù)據(jù)庫中都有一個(gè)唯一的標(biāo)識(shí)名,并且可以包含無限數(shù)目的文檔。集合的概念類似關(guān)系型數(shù)據(jù)庫(RDBMS)里的表(table),不同的是它不需要定 義任何模式(schema)。
◆ 模式自由
模式自由(schema-free),意味著對(duì)于存儲(chǔ)在mongodb數(shù)據(jù)庫中的文件,我們不需要知道它的任何結(jié)構(gòu)定義。如果需要的話,你完全可以把不同結(jié)構(gòu)的文件存儲(chǔ)在同一個(gè)數(shù)據(jù)庫里。
◆支持動(dòng)態(tài)查詢
◆支持完全索引,包含內(nèi)部對(duì)象
◆支持查詢
◆支持復(fù)制和故障恢復(fù)
◆使用高效的二進(jìn)制數(shù)據(jù)存儲(chǔ),包括大型對(duì)象(如視頻等)
◆自動(dòng)處理碎片,以支持云計(jì)算層次的擴(kuò)展性
◆支持RUBY,PYTHON,JAVA,C++,PHP等多種語言
◆文件存儲(chǔ)格式為BSON(一種JSON的擴(kuò)展)
BSON(Binary Serialized document Format)存儲(chǔ)形式是指:存儲(chǔ)在集合中的文檔,被存儲(chǔ)為鍵-值對(duì)的形式。鍵用于唯一標(biāo)識(shí)一個(gè)文檔,為字符串類型,而值則可以是各種復(fù)雜的文件類型。
◆可通過網(wǎng)絡(luò)訪問
MongoDB服務(wù)端可運(yùn)行在Linux、Windows或OS X平臺(tái),支持32位和64位應(yīng)用,默認(rèn)端口為27017。推薦運(yùn)行在64位平臺(tái),因?yàn)镸ongoDB在32位模式運(yùn)行時(shí)支持的最大文件尺寸為2GB。
MongoDB把數(shù)據(jù)存儲(chǔ)在文件中(默認(rèn)路徑為:/data/db),為提高效率使用內(nèi)存映射文件進(jìn)行管理。
Hypertable
Hypertable是一個(gè)開源、高性能、可伸縮的數(shù)據(jù)庫,它采用與Google的Bigtable相似的模型。在過去數(shù)年中,Google為在PC集群 上運(yùn)行的可伸縮計(jì)算基礎(chǔ)設(shè)施設(shè)計(jì)建造了三個(gè)關(guān)鍵部分。第一個(gè)關(guān)鍵的基礎(chǔ)設(shè)施是Google File System(GFS),這是一個(gè)高可用的文件系統(tǒng),提供了一個(gè)全局的命名空間。它通過跨機(jī)器(和跨機(jī)架)的文件數(shù)據(jù)復(fù)制來達(dá)到高可用性,并因此免受傳統(tǒng) 文件存儲(chǔ)系統(tǒng)無法避免的許多失敗的影響,比如電源、內(nèi)存和網(wǎng)絡(luò)端口等失敗。第二個(gè)基礎(chǔ)設(shè)施是名為Map-Reduce的計(jì)算框架,它與GFS緊密協(xié)作,幫 助處理收集到的海量數(shù)據(jù)。第三個(gè)基礎(chǔ)設(shè)施是Bigtable,它是傳統(tǒng)數(shù)據(jù)庫的替代。Bigtable讓你可以通過一些主鍵來組織海量數(shù)據(jù),并實(shí)現(xiàn)高效的 查詢。Hypertable是Bigtable的一個(gè)開源實(shí)現(xiàn),并且根據(jù)我們的想法進(jìn)行了一些改進(jìn)。
Apache Cassandra
Apache Cassandra是一套開源分布式Key-Value存儲(chǔ)系統(tǒng)。它最初由Facebook開發(fā),用于儲(chǔ)存特別大的數(shù)據(jù)。Facebook在使用此系統(tǒng)。
主要特性:
◆ 分布式
◆ 基于column的結(jié)構(gòu)化
◆ 高伸展性
Cassandra的主要特點(diǎn)就是它不是一個(gè)數(shù)據(jù)庫,而是由一堆數(shù)據(jù)庫節(jié)點(diǎn)共同構(gòu)成的一個(gè)分布式網(wǎng)絡(luò)服務(wù),對(duì)Cassandra 的一個(gè)寫操作,會(huì)被復(fù)制到其他節(jié)點(diǎn)上去,對(duì)Cassandra的讀操作,也會(huì)被路由到某個(gè)節(jié)點(diǎn)上面去讀取。對(duì)于一個(gè)Cassandra群集來說,擴(kuò)展性能 是比較簡單的事情,只管在群集里面添加節(jié)點(diǎn)就可以了。
Cassandra是一個(gè)混合型的非關(guān)系的數(shù)據(jù)庫,類似于Google的BigTable。其主要功能比 Dynomite(分布式的Key-Value存 儲(chǔ)系統(tǒng))更豐富,但支持度卻不如文檔存儲(chǔ)MongoDB(介于關(guān)系數(shù)據(jù)庫和非關(guān)系數(shù)據(jù)庫之間的開源產(chǎn)品,是非關(guān)系數(shù)據(jù)庫當(dāng)中功能最豐富,最像關(guān)系數(shù)據(jù)庫 的。Cassandra最初由Facebook開發(fā),后轉(zhuǎn)變成了開源項(xiàng)目。它是一個(gè)網(wǎng)絡(luò)社交云計(jì)算方面理想的數(shù)據(jù)庫。以Amazon專有的完全分布式的Dynamo為基礎(chǔ),結(jié)合了Google BigTable基于列族(Column Family)的數(shù)據(jù)模型。P2P去中心化的存儲(chǔ)。很多方面都可以稱之為Dynamo 2.0。
CouchDB
所用語言: Erlang
特點(diǎn):DB一致性,易于使用
使用許可: Apache
協(xié)議: HTTP/REST
雙向數(shù)據(jù)復(fù)制,持續(xù)進(jìn)行或臨時(shí)處理,處理時(shí)帶沖突檢查,因此,采用的是master-master復(fù)制
MVCC – 寫操作不阻塞讀操作
可保存文件之前的版本
Crash-only(可靠的)設(shè)計(jì)
需要不時(shí)地進(jìn)行數(shù)據(jù)壓縮
視圖:嵌入式 映射/減少
格式化視圖:列表顯示
支持進(jìn)行服務(wù)器端文檔驗(yàn)證
支持認(rèn)證
根據(jù)變化實(shí)時(shí)更新
支持附件處理
因此, CouchApps(獨(dú)立的 js應(yīng)用程序)
需要 jQuery程序庫
最佳應(yīng)用場景:適用于數(shù)據(jù)變化較少,執(zhí)行預(yù)定義查詢,進(jìn)行數(shù)據(jù)統(tǒng)計(jì)的應(yīng)用程序。適用于需要提供數(shù)據(jù)版本支持的應(yīng)用程序。
例如:CRM、CMS系統(tǒng)。 master-master復(fù)制對(duì)于多站點(diǎn)部署是非常有用的。
和其他數(shù)據(jù)庫比較,其突出特點(diǎn)是:
◆ 模式靈活 :使用Cassandra,像文檔存儲(chǔ),你不必提前解決記錄中的字段。你可以在系統(tǒng)運(yùn)行時(shí)隨意的添加或移除字段。這是一個(gè)驚人的效率提升,特別是在大型部 署上。
◆ 真正的可擴(kuò)展性 :Cassandra是純粹意義上的水平擴(kuò)展。為給集群添加更多容量,可以指向另一臺(tái)電腦。你不必重啟任何進(jìn)程,改變應(yīng)用查詢,或手動(dòng)遷移任何數(shù)據(jù)。
◆ 多數(shù)據(jù)中心識(shí)別 :你可以調(diào)整你的節(jié)點(diǎn)布局來避免某一個(gè)數(shù)據(jù)中心起火,一個(gè)備用的數(shù)據(jù)中心將至少有每條記錄的完全復(fù)制。
◆ 范圍查詢 :如果你不喜歡全部的鍵值查詢,則可以設(shè)置鍵的范圍來查詢。
◆ 列表數(shù)據(jù)結(jié)構(gòu) :在混合模式可以將超級(jí)列添加到5維。對(duì)于每個(gè)用戶的索引,這是非常方便的。
◆ 分布式寫操作 :有可以在任何地方任何時(shí)間集中讀或?qū)懭魏螖?shù)據(jù)。并且不會(huì)有任何單點(diǎn)失敗。
問度娘,啥都有。
大數(shù)據(jù)的日益增長,給企業(yè)管理大量的數(shù)據(jù)帶來了挑戰(zhàn)的同時(shí)也帶來了一些機(jī)遇。下面是用于信息化管理的大數(shù)據(jù)工具列表:
1.ApacheHive
Hive是一個(gè)建立在hadoop上的開源數(shù)據(jù)倉庫基礎(chǔ)設(shè)施,通過Hive可以很容易的進(jìn)行數(shù)據(jù)的ETL,對(duì)數(shù)據(jù)進(jìn)行結(jié)構(gòu)化處理,并對(duì)Hadoop上大數(shù)據(jù)文件進(jìn)行查詢和處理等。Hive提供了一種簡單的類似SQL的查詢語言—HiveQL,這為熟悉SQL語言的用戶查詢數(shù)據(jù)提供了方便。
2JaspersoftBI套件
Jaspersoft包是一個(gè)通過數(shù)據(jù)庫列生成報(bào)表的開源軟件。行業(yè)領(lǐng)導(dǎo)者發(fā)現(xiàn)Jaspersoft軟件是一流的,許多企業(yè)已經(jīng)使用它來將SQL表轉(zhuǎn)化為pdf,,這使每個(gè)人都可以在會(huì)議上對(duì)其進(jìn)行審議。另外,JasperReports提供了一個(gè)連接配置單元來替代HBase。
3.1010data
1010data創(chuàng)立于2000年,是一個(gè)總部設(shè)在紐約的分析型云服務(wù),旨在為華爾街的客戶提供服務(wù),甚至包括NYSEEuronext、 游戲 和電信的客戶。它在設(shè)計(jì)上支持可伸縮性的大規(guī)模并行處理。它也有它自己的查詢語言,支持SQL函數(shù)和廣泛的查詢類型,包括圖和時(shí)間序列分析。這個(gè)私有云的方法減少了客戶在基礎(chǔ)設(shè)施管理和擴(kuò)展方面的壓力。
4.Actian
Actian之前的名字叫做IngresCorp,它擁有超過一萬客戶而且正在擴(kuò)增。它通過Vectorwise以及對(duì)ParAccel實(shí)現(xiàn)了擴(kuò)展。這些發(fā)展分別導(dǎo)致了ActianVector和ActianMatrix的創(chuàng)建。它有Apache,Cloudera,Hortonworks以及其他發(fā)行版本可供選擇。
5.PentahoBusinessAnalytics
從某種意義上說,Pentaho與Jaspersoft相比起來,盡管Pentaho開始于報(bào)告生成引擎,但它目前通過簡化新來源中獲取信息的過程來支持大數(shù)據(jù)處理。Pentaho的工具可以連接到NoSQL數(shù)據(jù)庫,例如MongoDB和Cassandra。PeterWayner指出,PentahoData(一個(gè)更有趣的圖形編程界面工具)有很多內(nèi)置模塊,你可以把它們拖放到一個(gè)圖片上,然后將它們連接起來。
6.KarmasphereStudioandAnalyst
KarsmasphereStudio是一組構(gòu)建在Eclipse上的插件,它是一個(gè)更易于創(chuàng)建和運(yùn)行Hadoop任務(wù)的專用IDE。在配置一個(gè)Hadoop工作時(shí),Karmasphere工具將引導(dǎo)您完成每個(gè)步驟并顯示部分結(jié)果。當(dāng)出現(xiàn)所有數(shù)據(jù)處于同一個(gè)Hadoop集群的情況時(shí),KarmaspehereAnalyst旨在簡化篩選的過程,。
7.Cloudera
Cloudera正在努力為開源Hadoop,提供支持,同時(shí)將數(shù)據(jù)處理框架延伸到一個(gè)全面的“企業(yè)數(shù)據(jù)中心”范疇,這個(gè)數(shù)據(jù)中心可以作為首選目標(biāo)和管理企業(yè)所有數(shù)據(jù)的中心點(diǎn)。Hadoop可以作為目標(biāo)數(shù)據(jù)倉庫,高效的數(shù)據(jù)平臺(tái),或現(xiàn)有數(shù)據(jù)倉庫的ETL來源。企業(yè)規(guī)??梢杂米骷蒆adoop與傳統(tǒng)數(shù)據(jù)倉庫的基礎(chǔ)。Cloudera致力于成為數(shù)據(jù)管理的“重心”。
8.HPVerticaAnalyticsPlatformVersion7
HP提供了用于加載Hadoop軟件發(fā)行版所需的參考硬件配置,因?yàn)樗旧聿]有自己的Hadoop版本。計(jì)算機(jī)行業(yè)領(lǐng)袖將其大數(shù)據(jù)平臺(tái)架構(gòu)命名為HAVEn(意為Hadoop,Autonomy,Vertica,EnterpriseSecurityand“n”applications)?;萜赵赩ertica7版本中增加了一個(gè)“FlexZone”,允許用戶在定義數(shù)據(jù)庫方案以及相關(guān)分析、報(bào)告之前 探索 大型數(shù)據(jù)集中的數(shù)據(jù)。這個(gè)版本通過使用HCatalog作為元數(shù)據(jù)存儲(chǔ),與Hadoop集成后為用戶提供了一種 探索 HDFS數(shù)據(jù)表格視圖的方法。
9.TalendOpenStudio
Talend’s工具用于協(xié)助進(jìn)行數(shù)據(jù)質(zhì)量、數(shù)據(jù)集成和數(shù)據(jù)管理等方面工作。Talend是一個(gè)統(tǒng)一的平臺(tái),它通過提供一個(gè)統(tǒng)一的,跨企業(yè)邊界生命周期管理的環(huán)境,使數(shù)據(jù)管理和應(yīng)用更簡單便捷。這種設(shè)計(jì)可以幫助企業(yè)構(gòu)建靈活、高性能的企業(yè)架構(gòu),在次架構(gòu)下,集成并啟用百分之百開源服務(wù)的分布式應(yīng)用程序變?yōu)榭赡堋?/p>
10.ApacheSpark
ApacheSpark是Hadoop開源生態(tài)系統(tǒng)的新成員。它提供了一個(gè)比Hive更快的查詢引擎,因?yàn)樗蕾囉谧约旱臄?shù)據(jù)處理框架而不是依靠Hadoop的HDFS服務(wù)。同時(shí),它還用于事件流處理、實(shí)時(shí)查詢和機(jī)器學(xué)習(xí)等方面。