首頁>Club>
為什麼sql處理資料比Java快,處理大量資料時,有時SQL不能完美的實現需求,用Java去處理速度又太慢
8
回覆列表
  • 1 # 資深IT老張

    JAVA 與 .NET等 程式語言

    它們是業務功能程式設計實現工具;

    處理業務邏輯有先天性優勢;

    程式語言類庫中擁有豐富的系統函式,開發效率高;

    尤其是在SOA專案,大型綜合系統的開發中處於有利地位;

    JAVA 與 .NET都提供了針對資料庫的驅動程式,他們操作資料庫是透過驅動程式中轉操作指令的,反應當然要慢一拍。

    SQL程式語言

    SQL server 與 MySQL,Oracle,MongoDB, Redis 等資料庫

    它們是資料庫

    前三個是關係型資料庫,一般用來儲存業務資料,提供讀寫功能;

    後2個是非關係型資料庫,人稱NoSQL資料庫,一般用來作為快取伺服器的軟體環境, 資料是以 JSON格式儲存的;

    大資料處理

    如果有這方面的業務,如果是 java方向,Hadoop, Spark, Hive 將是操作利器;

    如果是 .net 方向,則 SSIS, SSRS, SSAS 將是利刃。

    總體來說, 第一類 程式語言 好比 SUV,擅長於跑高速, 跑的又快又遠;第二類程式語言,好比 挖機,擅長於 挖地基,挖牆角,挖的深打的牢。

    當你要去外地娶親時,少不了 SUV; 當你要回老家做房子時,少不了 挖機。

    (結束)

  • 2 # ACME63610374577

    1.選擇了Java就不要考慮執行效率.

    2.SQL是描述...如果最終的執行者也是Java來執行那速度一樣慢...大部分資料庫都不是Java的...

    3.SQL背後有多少臺機器真的不好說...可能是資料庫叢集...可能是大資料叢集...

  • 3 # 三石科技觀察

    使用SQL處理資料時,資料會在資料庫內直接進行處理,而且sql處理本身可以對sql語句做最佳化,按照最優的策略自動執行。

    使用Java處理時,需要把資料從資料庫讀入到Java程式記憶體,其中有網路處理和資料封裝的操作,資料量比較大時,有一定的延遲,所以相對來說資料處理就慢一些。

    當然,這個只是大體示意圖,實際根據業務不同會更復雜。

    兩者側重的點不同,有各自適合的業務領域,需要根據實際情況選用合適的方式。

  • 4 # GeCoder

    因為sql是直接操作資料庫,java需要先與資料庫建立連線,在發指令到資料庫進行操作,因此速度肯定沒有sql快,但是sql不太擅長業務邏輯處理的操作,一般情況是用java來做業務邏輯的處理,然後呼叫sql對資料庫進行操作,或者透過nosql的技術來處理大資料高併發、大資料量的問題。

  • 中秋節和大豐收的關聯?
  • 雍正皇帝的猝死與呂四娘有關係嗎?