{eval=Array;=+count(Array);}
使用SQL處理數據時,數據會在數據庫內直接進行處理,而且sql處理本身可以對sql語句做優(yōu)化,按照最優(yōu)的策略自動執(zhí)行。
使用Java處理時,需要把數據從數據庫讀入到Java程序內存,其中有網絡處理和數據封裝的操作,數據量比較大時,有一定的延遲,所以相對來說數據處理就慢一些。
當然,這個只是大體示意圖,實際根據業(yè)務不同會更復雜。
兩者側重的點不同,有各自適合的業(yè)務領域,需要根據實際情況選用合適的方式。
1.選擇了Java就不要考慮運行效率.
2.SQL是描述...如果最終的執(zhí)行者也是Java來運行那速度一樣慢...大部分數據庫都不是Java的...
3.SQL背后有多少臺機器真的不好說...可能是數據庫集群...可能是大數據集群...
它們是業(yè)務功能編程實現工具;
處理業(yè)務邏輯有先天性優(yōu)勢;
編程語言類庫中擁有豐富的系統(tǒng)函數,開發(fā)效率高;
尤其是在SOA項目,大型綜合系統(tǒng)的開發(fā)中處于有利地位;
JAVA 與 .NET都提供了針對數據庫的驅動程序,他們操作數據庫是通過驅動程序中轉操作指令的,反應當然要慢一拍。
SQL server 與 MySQL,Oracle,MongoDB, Redis 等數據庫
它們是數據庫
前三個是關系型數據庫,一般用來存儲業(yè)務數據,提供讀寫功能;
后2個是非關系型數據庫,人稱NoSQL數據庫,一般用來作為緩存服務器的軟件環(huán)境, 數據是以 JSON格式存儲的;
數據庫本質是提供了 增加,修改,刪除,查詢功能的一個載體,好比是一個智能存儲的倉庫
SQL腳本是專門針對數據庫操作的編程語言,本質上 提供4種操作引擎: 增加,修改,刪除,查詢
如果有這方面的業(yè)務,如果是 java方向,Hadoop, Spark, Hive 將是操作利器;
如果是 .net 方向,則 SSIS, SSRS, SSAS 將是利刃。
總體來說, 第一類 編程語言 好比 SUV,擅長于跑高速, 跑的又快又遠;第二類編程語言,好比 挖機,擅長于 挖地基,挖墻角,挖的深打的牢。
當你要去外地娶親時,少不了 SUV; 當你要回老家做房子時,少不了 挖機。
希望對你有所幫助. 謝謝.
(結束)
因為sql是直接操作數據庫,java需要先與數據庫建立連接,在發(fā)指令到數據庫進行操作,因此速度肯定沒有sql快,但是sql不太擅長業(yè)務邏輯處理的操作,一般情況是用java來做業(yè)務邏輯的處理,然后調用sql對數據庫進行操作,或者通過nosql的技術來處理大數據高并發(fā)、大數據量的問題。
0
回答0
回答0
回答0
回答10
回答0
回答10
回答0
回答0
回答0
回答