① 如何選擇合適的資料庫
如何選擇資料庫
一般來講,數據分析的查詢不會直接從生產環境的資料庫來讀取數據,一方面是影響線上性能,另一方面是OLTP的表結構設計更多的是面向插入,而不是讀取。如何來選擇合適的資料庫做數據分析呢?本文給出了四方面的考量,拋磚引玉。
1. 客戶要分析什麼樣的數據
2. 客戶分析的數據量是多少
3. 客戶工程師團隊技術背景,運維能力
4. 預期的數據分析的響應時間
客戶要分析什麼樣的數據
上文已簡單介紹了關系型資料庫和非關系型資料庫的區別,這里就不再贅述。下圖是一個簡單的分類。
② MongoDB與Mysql:如何選擇
MongoDB和MySQL分別是領先的開源NoSQL和關系資料庫。哪個最適合您的應用程序?
在1990年代的互聯網泡沫時期,用於Web應用程序的一種通用軟體堆棧是LAMP,它最初代表Linux(OS),Apache(Web伺服器),MySQL(關系資料庫)和PHP(伺服器編程語言)。MySQL是首選的資料庫,主要是因為它是免費的開源代碼,並且具有良好的讀取性能,非常適合從資料庫動態生成網站的「 Web 2.0」應用程序。
之後,代表MongoDB(文檔資料庫),Express(Web伺服器),AngularJS(前端框架)和Node.js(後端JavaScript運行時)的MEAN堆棧開始流行。除其他原因外,MEAN堆棧很有吸引力,因為您需要了解的唯一語言是JavaScript。與等效的LAMP堆棧相比,它還需要更少的RAM。
MySQL AB的Monty Widenius和David Axmark最初於1994年開始開發MySQL。產品名稱中的「 My」是指Widenius的女兒,而不是英語單詞「 my」。MySQL旨在與mSQL(又名Mini)兼容。 SQL),並添加了SQL查詢層和開放源代碼許可(實際上是專有和GPL雙重許可)。MySQL的公共發行版於1996年底開始,並且每年或每兩年持續發行一次。MySQL是當前最受歡迎的關系資料庫。
Sun Microsystems於2008年以10億美元的價格收購了MySQL AB,Oracle於2010年收購了Sun。在Oracle收購MySQL的廣泛關注中,Widenius在收購Oracle之前就將MySQL 5.5合並到了MariaDB中。MariaDB努力維護與Oracle MySQL版本的兼容性。
與功能更強大的商業關系資料庫(例如Oracle資料庫,IBM DB / 2和Microsoft SQL Server)相比,MySQL最初是一個相當低端的關系資料庫,盡管它足以成為動態網站的後備存儲。多年來,它增加了您希望從關系資料庫獲得的大多數功能,包括事務,參照完整性約束,存儲過程,游標,全文索引和搜索,地理索引和搜索以及群集。
盡管MySQL現在支持「大資料庫」功能,例如主從部署,與Memcached一起使用以及水平分片,但它仍通常用於中小型部署。將MySQL擴展到多個從屬伺服器可以提高讀取性能,但是只有主伺服器才能接受寫請求。
AWS提供了兩種形式的MySQL即服務,即Amazon RDS和Amazon Aurora。後者具有更高的性能,可以處理TB級的數據,更新副本的延遲時間更短,並且可以直接與Oracle資料庫和SQL Server競爭。
MongoDB是高度可伸縮的操作文檔資料庫,可在開源版本和商業企業版本中使用,它可以在本地運行或作為託管雲服務運行。託管雲服務稱為MongoDB Atlas。
MongoDB無疑是NoSQL資料庫中最受歡迎的資料庫。它的文檔數據模型為開發人員提供了極大的靈活性,而其分布式體系結構則提供了很好的可伸縮性。因此,通常選擇MongoDB用於必須管理大量數據,得益於水平可伸縮性並處理不適合關系模型的數據結構的應用程序。
MongoDB是一個基於文檔的存儲,在其之上還具有一個基於圖形的存儲。MongoDB實際上並不存儲JSON:它存儲BSON(二進制JSON),該擴展了JSON表示(字元串)以包括其他類型,例如int,long,date,浮點,decimal128和地理空間坐標。
MongoDB可以使用數據的類型生成正確的索引類型,從而在數據的單個副本上生成多模式圖形,地理空間,B樹和全文本索引。MongoDB使您可以在任何文檔欄位上創建索引。MongoDB 4具有多文檔事務,這意味著即使必須標准化數據設計,您仍然可以獲得ACID屬性。
默認情況下,MongoDB使用動態模式,有時稱為無模式。單個集合中的文檔不需要具有相同的欄位集,並且欄位的數據類型可以在集合中的不同文檔之間有所不同。您可以隨時使用動態模式更改文檔結構。
但是,可以使用架構治理。從MongoDB 3.6開始,MongoDB支持JSON模式驗證,您可以在驗證器表達式中將其打開。
在LAMP和MEAN堆棧上存在很多變化。例如,您可以在Windows(WAMP)或MacOS(MAMP)上運行而不是Linux OS。您可以運行IIS(WIMP),而不是Windows上的Apache Web伺服器。
您可以運行PostgreSQL或SQL Server,而不是LAMP堆棧中的MySQL關系資料庫。如果您需要全球分布,則可以運行CockroachDB或Google Cloud Spanner。可以使用Perl或Python代替PHP語言。如果要使用Java或C#進行編碼,則需要考慮單獨的堆棧系列。
您可以運行Couchbase或Azure Cosmos DB以獲得更好的全局分布,而不是MEAN堆棧中的MongoDB文檔資料庫。可以使用十二個Node.js Web伺服器框架中的任何一個來代替Express 。除了AngularJS前端框架,您還可以運行Angular 2或React。
選擇資料庫時要問的最重要的問題是:
這些問題中的幾個會趨於縮小資料庫的選擇范圍,但是與制定LAMP堆棧時相比,我們有更多選擇。如果您要構建一個應用程序,並且該應用程序必須在99.999%的時間內對全世界的用戶都具有高度的一致性,那麼只有少數幾個資料庫適合您。如果您的應用程序將在工作日的上午9點至下午6點在一個國家/地區使用,並且可以容忍最終的一致性,那麼幾乎所有資料庫都可以使用,盡管某些資料庫對於開發人員和操作員而言更容易,而某些資料庫則可以為您的主要使用場景提供更好的性能。
雖然LAMP和MEAN堆棧一次是Web應用程序的良好解決方案,但現在都不是最佳選擇。而不是盲目採用任何一種,您應該仔細考慮用例,並找到一種可在可預見的將來為您的應用程序服務的體系結構。
您什麼時候需要關系資料庫(例如MySQL)用於新應用程序?除了對標准SQL的明顯支持外,關系資料庫本身將數據強制為具有一致的強類型欄位的表格模式,並且只要您利用規范化就可以幫助您避免數據重復。
另一方面,如果您還需要偶爾的自由格式文檔,則MySQL和許多其他關系資料庫也支持RFC 7159定義的JSON數據。如果您還想使用XML文檔和XPath或XSLT,則大多數關系資料庫都可以提供這種能力。
您何時需要像MongoDB這樣的文檔資料庫?如果您的主要用例需要允許使用自由格式的數據,在文檔之間更改類型的欄位,隨時間變化的架構或嵌套的文檔,則NoSQL資料庫將滿足要求。另外,如果您的應用程序是用JavaScript編寫的,那麼文檔資料庫的JSON格式將很自然。
作者: Martin Heller是InfoWorld的特約編輯和審稿人。他曾擔任Web和Windows編程顧問,從1986年至2010年開發資料庫,軟體和網站。最近,他擔任Alpha Software技術和教育副總裁以及Tubifi董事長兼首席執行官。
③ 如何使用mysql連接資料庫
如何使用PLSQL連接伺服器上的資料庫,開發初學者都需要會這個問題。下面說一下步驟,幫助大家配置host並成功查詢數據。
1、首先滑鼠右鍵PLSQL,選擇屬性,打開PLSQL所在文件夾位置。
④ mysql怎麼用語句選擇一個資料庫
在已經連接資料庫的情況下,執行:use database(資料庫名)。
⑤ mysql 命令怎麼選擇資料庫
如果你是在cmd命令行下:use 資料庫名;
如果你是在PHP中選擇資料庫: mysqli_select_db(連接數據返回的資源變數,'資料庫名');
⑥ 如何選擇簡單易用的資料庫
1.數據量太大,比如上億,就用oracle,優點上億數據對Oracle來說輕飄飄的,也不用太多優化配置,缺點安裝比較麻煩,上手比較慢。
2.數據量較大,比如千萬級,用postgresql,它號稱對標Oracle,處理千萬級數據還是可以的,也是易學易用。
3.數據量一般,比如百萬級,用mysql,這個級別的數據量mysql處理還是比較快的。
4.數據量較小,比如十萬以下,sqlite、access都可以。
上面是基於單表操作的數據量,你看著選。
簡單易用的資料庫哪個比較好?這個要具體看你的用途,如果數據量比較少(10萬左右),追求簡約簡單,免費開源的sqlite就行,如果數據量比較多,考慮到高並發、分布式,可以使用專業的mysql、postgresql,下面我分別簡單介紹一下,感興趣的朋友可以嘗試一下:
小巧靈活sqlite這是基於c語言開發的一個輕量級關系型資料庫,短小精悍、免費開源,個人使用無需繁瑣的配置,只需一個簡單的運行庫便可直接使用,針對各種編程語言都提供了豐富的API介面, java、 python、c#等都可輕松操作,如果你存儲數據量不多,只是本地簡單的操作(讀多寫少),可以使用一下這個資料庫,佔用內存非常少,輕便靈活,當然,在高並發、數據量大的情況下就不合適了:
專業強大mysql
這是目前應該廣泛使用的一個關系型資料庫,免費開源跨平台,在信息系統開發方面一直占據著主力位置,如果你從事於web開發或者網站後台建設,那麼這個資料庫一定非常熟悉,支持高並發、分布式,存儲數據量相對於sqlite來說,更多也更安全,索引、觸發器、存儲過程等功能非常不錯,支持數據導入導出、恢復備份,只要你熟悉一下基本使用過程,很快就能掌握和運用:
免費開源postgresql
這是加州大學計算機系開發的一個對象-關系型資料庫(自由軟體),免費、開源、跨平台,支持流計算、全文檢索、圖式搜索、並行計算、存儲過程、空間數據、K-V類型,相比較mysql來說,在復雜查詢、高並發下更穩定、性能更優越,可擴展性、可維護性非常不錯,但也有劣勢,例如新舊版本不分離存儲,沒有Coverage index scan等,總體使用效果來說還不錯:
當然,除了以上3個資料庫,還有許多其他資料庫,像mssql、oracle等也都非常不錯,對於存儲和處理數據來說綽綽有餘,只要你熟悉一下基本使用過程,很快就能入門的,網上也有相關教程和資料,介紹的非常詳細,感興趣的話,可以搜一下,希望以上分享的內容能對你有所幫助吧,也歡迎大家評論、留言進行補充。
最符合初學者理解和入門的是Access,因為它和Excel本來就是一個套件,相互轉化容易,復制粘貼即可,非常好理解庫、表、欄位、鍵的概念。
如果數據量不大,強烈推薦試試Filemaker,腳本化編程,自由定製輸入界面、工作流程,非常便捷高效。
最近殺出來的airtable,更是簡單高效,界面美觀,操作與電子表格相當,發展勢頭也非常迅猛。
二者側重點有所不同,用戶可根據需要選擇
作為一個軟體開發人員,長期需要和資料庫打交道,個人更加青睞於MySQL。雖然可能基於你的Excel原因,有些人會建議你使用Access資料庫,但是基於我個人的 意見,我並不建議你那樣做。採用MySql的具體理由如下:
1.MySQL具有普遍性,在國內的環境中,絕大多數的互聯網企業採用的是MySQL。有了廣大的用戶基礎後,針對於各種問題網上也能更好地找到解決方案。
2.MySQL相對於Oracle而言,更加輕量化,針對於從Excel量級的數據,沒必要使用Oracle。同時MySQL是完全免費的,不用擔心版權及費用問題,無論對個人還是對預算有限的企業而言都是很好的選擇。
3.MySQL高度兼容標准SQL,這對於以後遷移到其他資料庫而言,也能很大程度地降低學習成本。
希望我的回答能夠對你有所幫助!!![耶][耶][耶]
Excel辦公確實便利,可以做一些簡單的數據分析,但涉及大量復雜的數據運算,就會遇到和題主一樣的問題,運算速度慢,如果主機性能不是很好,還有可能面臨電腦死機,數據丟失等問題。
遇到這種情況,我們該如何解決呢?資料庫的重要性顯而易見!
現在, 我將用3分鍾的時間,與您探討該選擇何種資料庫,以及選擇它的理由,是否有更優的解決方案呢?
MySQL資料庫,90%的企業都會選擇它資料庫選得好,企業的數據安全,資產安全,也就得到了保障。那麼該如何選擇資料庫呢?這個跟你的業務量和業務服務行業,密不可分。
如果你只是上班打卡,用SQL server就可以了;
如果你要儲存會話信息,用戶配置信息,購物車數據,建議使用NoSQL資料庫;
不過90%的企業或個人,首選資料庫都是MySQL資料庫。
為什麼這么說?因為,它集 低成本、高可用、可靠性強、易用性強、體積小、速度快開放源碼 等特性於一身,所以在金融、財務、網站、 數據處理 等應用領域,它占據著獨一無二的優勢。
這也是幾乎所有企業都選擇它,來存儲數據的原因。
加之MySQL資料庫,支持多種存儲引擎,支持大型資料庫,可以處理成千上萬條記錄,還提供用於管理、檢查、優化資料庫操作的工具。
因而,MySQL尤其受個人,以及中小企業的推崇。
雖然MySQL資料庫簡單易用,但我還是不會部署該怎麼辦?別擔心,現在市面上已經出現了,一種自帶資料庫的新型辦公軟體。
比如說,雲表企業應用平台,一款兼容excel功能,但功能更為強大的辦公軟體,它就內嵌了MySQL資料庫。 (文末有免費獲取方式)
雲表內嵌的MySQL資料庫,有何優點?1. 性能更加優化,更加兼容系統。因為雲表的研發人員,時刻更新維護MySQL資料庫。
2. 省去自己手動部署的麻煩。但如果你熟悉部署資料庫,想把資料庫改成Oracle或SQL server等資料庫,也可以設置。(不過,我建議IT小白還是 「拿來即用」 就好)
3. 快速實時計算。數據分析實時交互,完全滿足管理決策中的臨時性分析,多變的業務需求,以及頻繁的結果刷新。
4. 通過自帶的內存計算引擎,無需事先建立CUBE,IT部門將告別報表延時報表分析,億級數據秒級響應。
內嵌的MySQL資料庫是否可靠雲表不僅是一款辦公軟體,同時還是一款開發工具。
通過它,你將解決以下問題:
復雜的數據運算,精確到行列的許可權管控,以及工作流,海量用戶同時在線辦公,數據透視,製作像銷售單,洽談合同等表單報表,一份製作,即可重復錄用......
你還可以通過它,與電子稱、地磅等進行對接,與用友金蝶等三方系統集成,生成條形碼,掃碼出入庫,生成移動端APP...... 基本上業務所需的功能,你都可以放心交給它做。
它最大的亮點就是,你可以 用使用excel的手法,用它來開發業務應用。
而且,可視化的 拖拉拽 之後,開發出來的ERP、WMS、OA、進銷存等業務應用,還秉承了MySQL資料庫增刪改查的功能特性。
沒錯,用雲表開發出來的業務應用,是允許二次開發的,而且功能可以隨時增刪改查,輕松滿足大集團精細化的數據控制需求。
不過,大家最關心的應該是數據安全問題吧。
數據存放在雲表內嵌的MySQL資料庫,是安全不丟失的,它提供了多種數據存儲的方式,本地部署,雲端部署,混合部署,任君挑選!
正因如此,像 恆逸石化、許繼電氣、航天科工委、中鐵、中冶、雲南小松 等大型集團,才鼓勵內部員工去學習雲表。
篇幅所限,只說到這里,說太多你也不會看。
免費 的軟獲取方式在下方:
資料庫的用處可大著呢,不僅可以實現數據共享,減少數據冗餘度,還能實現對數據的集中控制,保持數據的一致性和可維護性。選取簡單易用的資料庫,你有什麼好的建議呢,留言讓我們看到噢!
題主強調了簡單易用。所以推薦最簡單三個。
1.Access。
2.Excel。
3.飛書文檔、騰訊文檔、石墨文檔等的表格。
如果要做分析,數據量才比較大,建議Access,還是專業的更好一些。網上教程也很多,比較容易學。而且建議用早一點的版本,比如2003或者2007,Access這些年微軟一直想從office里去掉,奈何用的人還是很多,所以不敢去掉,但是採取了一種比較惡心的方法讓用戶放棄,就是每發布一個新版本,就去掉一些好用的功能,所以說Access是越早的功能越強。
還一個推薦就是Sql Server Express版本,是SQL Server的免費版本,不要錢,基本功能都有,要比sqllite等強大的多
這要結合你個人實際情況來定,有計算機基礎,懂一點資料庫的話那麼市場上的那些軟體都可以用,常用有oracle,sqlserver,mysql等,要上手快還是sqlserver比較快,界面操作也比較直觀;如果一點基礎都沒有,但是又要分析數據的話可以用微軟自帶的一個access,這個上手比較快。決定用哪一種之後還是要買點教材看,簡單的sql查詢要會,熟練之後也能提高工作效率。
個人使用資料庫的話,只存數據不做分析,SQLite就足夠了。
⑦ mysql 怎麼選擇database
在你連接到 MySQL 資料庫後,可能有多個可以操作的資料庫,所以你需要選擇你要操作的資料庫。
從命令提示窗口中選擇MySQL資料庫:
在 mysql> 提示窗口中可以很簡單的選擇特定的資料庫。你可以使用SQL命令來選擇指定的資料庫。
實例:
以下實例選取了資料庫 shulanxt:
-from 樹懶學堂
執行以上命令後,你就已經成功選擇了 shulanxt 資料庫,在後續的操作中都會在 shulanxt 資料庫中執行。
注意:所有的資料庫名,表名,表欄位都是區分大小寫的。所以你在使用SQL命令時需要輸入正確的名稱。