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

聊聊存儲(chǔ)過程的使用,你學(xué)會(huì)了嗎?

數(shù)據(jù)庫(kù) 其他數(shù)據(jù)庫(kù)
企業(yè)級(jí)關(guān)系型數(shù)據(jù)庫(kù)都有存儲(chǔ)過程這個(gè)功能,這個(gè)功能就是為了簡(jiǎn)化應(yīng)用開發(fā)難度,提高應(yīng)用效率的。在應(yīng)用中使用存儲(chǔ)過程是可以降低應(yīng)用軟件開發(fā)與維護(hù)成本,提高系統(tǒng)中批量處理業(yè)務(wù)的性能的。

受到互聯(lián)網(wǎng)企業(yè)的影響,這些年在企業(yè)級(jí)應(yīng)用開發(fā)中,存儲(chǔ)過程的使用受到了一定的限制,甚至有些企業(yè)明確在IT技術(shù)應(yīng)用規(guī)范中禁用存儲(chǔ)過程。實(shí)際上在二十多年前,使用存儲(chǔ)過程是Oracle數(shù)據(jù)庫(kù)優(yōu)化中的一個(gè)十分重要的技術(shù)手段,對(duì)于處理批量業(yè)務(wù)處理十分有幫助。因?yàn)楫?dāng)時(shí)的數(shù)據(jù)庫(kù)CPU、內(nèi)存、IO資源都相對(duì)緊張,網(wǎng)絡(luò)的帶寬和延時(shí)也存在諸多瓶頸。使用存儲(chǔ)過程可以將一些工作封裝在一個(gè)數(shù)據(jù)庫(kù)的內(nèi)部執(zhí)行單元中,減少前臺(tái)進(jìn)程與RDBMS內(nèi)核的交互,從而獲得更高的效率?;诖?,目前還有不少銀行還在大量使用存儲(chǔ)過程。

二十年前,華為的一個(gè)項(xiàng)目組為了實(shí)現(xiàn)應(yīng)用與數(shù)據(jù)庫(kù)無(wú)關(guān),對(duì)應(yīng)用進(jìn)行改造的時(shí)候去掉了所有的存儲(chǔ)過程,上線后發(fā)現(xiàn)改造后的應(yīng)用性能下降十分嚴(yán)重。我?guī)椭治龊蟀l(fā)現(xiàn)因?yàn)閿?shù)據(jù)庫(kù)與應(yīng)用模塊跨數(shù)據(jù)中心部署,因此SQL在網(wǎng)絡(luò)上的交互延時(shí)嚴(yán)重影響了性能。因此在當(dāng)時(shí)的條件下,他們很難放棄存儲(chǔ)過程,為此他們最終放棄了多數(shù)據(jù)庫(kù)支持而選擇了回歸存儲(chǔ)過程。

這些年隨著互聯(lián)網(wǎng)企業(yè)在IT上的成功,很多企業(yè)也在學(xué)習(xí)互聯(lián)網(wǎng)架構(gòu)。大量的應(yīng)用不再使用存儲(chǔ)過程,應(yīng)用的業(yè)務(wù)邏輯更多地被從數(shù)據(jù)庫(kù)中抽取出來,放到應(yīng)用系統(tǒng)中。應(yīng)用對(duì)數(shù)據(jù)庫(kù)的依賴就降低了,應(yīng)用在不同品種的數(shù)據(jù)庫(kù)之中的遷移也變得簡(jiǎn)單了。同時(shí)因?yàn)闃I(yè)務(wù)邏輯更多地遷移到應(yīng)用服務(wù)器上,數(shù)據(jù)庫(kù)服務(wù)器的資源消耗也下降了,數(shù)據(jù)庫(kù)服務(wù)器的瓶頸也得到了緩解。于是這些年應(yīng)用去存儲(chǔ)過程在很多企業(yè)里熱門起來,存儲(chǔ)過程的使用也大幅下降了。

不過也有一些企業(yè)發(fā)現(xiàn),去掉存儲(chǔ)過程,將業(yè)務(wù)邏輯放到應(yīng)用中去之后,應(yīng)用的質(zhì)量管控變得更加困難了。以前在一個(gè)研發(fā)隊(duì)伍中開發(fā)存儲(chǔ)過程的都是對(duì)業(yè)務(wù)邏輯理解十分深刻,數(shù)據(jù)庫(kù)功底比較好的老鳥,這些人寫出的存儲(chǔ)過程雖然復(fù)雜,不過質(zhì)量還是杠杠的。哪怕存在一些問題,優(yōu)化起來只要集中精力去優(yōu)化PL/SQL的代碼就可以了。而現(xiàn)在業(yè)務(wù)邏輯分散到應(yīng)用中,由水平差異較大的開發(fā)人員去開發(fā),應(yīng)用的質(zhì)量變得更難控制了,優(yōu)化的難度也變大了。

實(shí)際上絕大多數(shù)傳統(tǒng)行業(yè)企業(yè)是缺乏互聯(lián)網(wǎng)基因的,互聯(lián)網(wǎng)企業(yè)與傳統(tǒng)企業(yè)最大的區(qū)別是在IT上的投入的區(qū)別。互聯(lián)網(wǎng)企業(yè)能把所有邏輯放到應(yīng)用上,并不是互聯(lián)網(wǎng)企業(yè)的架構(gòu)有多優(yōu)秀,而是互聯(lián)網(wǎng)企業(yè)能夠在IT上投入巨資,由大量?jī)?yōu)秀的開發(fā)人員來完成這項(xiàng)工作。而傳統(tǒng)行業(yè)企業(yè)的IT投入與互聯(lián)網(wǎng)企業(yè)無(wú)法相比,IT員工工資收入要低得多,IT部門人員的素質(zhì)肯定也要遠(yuǎn)遠(yuǎn)低于互聯(lián)網(wǎng)企業(yè)。在這種情況下,研發(fā)團(tuán)隊(duì)往往是很難駕馭好互聯(lián)網(wǎng)架構(gòu)的應(yīng)用的。

企業(yè)級(jí)關(guān)系型數(shù)據(jù)庫(kù)都有存儲(chǔ)過程這個(gè)功能,這個(gè)功能就是為了簡(jiǎn)化應(yīng)用開發(fā)難度,提高應(yīng)用效率的。在應(yīng)用中使用存儲(chǔ)過程是可以降低應(yīng)用軟件開發(fā)與維護(hù)成本,提高系統(tǒng)中批量處理業(yè)務(wù)的性能的。近來企業(yè)應(yīng)用中使用較少除了受到互聯(lián)網(wǎng)企業(yè)的引導(dǎo)之外,還有一個(gè)因素是減少對(duì)某個(gè)數(shù)據(jù)庫(kù)的依賴。其實(shí)在前些年去IOE的過程中,很多企業(yè)已經(jīng)感受到了數(shù)據(jù)庫(kù)遷移帶來的痛苦,以及被Oracle數(shù)據(jù)庫(kù)綁定后不斷上升的數(shù)據(jù)庫(kù)使用成本的困擾。

當(dāng)年很多企業(yè)決定借鑒互聯(lián)網(wǎng)架構(gòu)的另外一個(gè)原因是因?yàn)楹芏鄳?yīng)用開發(fā)以數(shù)據(jù)庫(kù)為核心,而數(shù)據(jù)庫(kù)在橫向擴(kuò)展方面的能力不足,因此數(shù)據(jù)庫(kù)往往會(huì)成為應(yīng)用系統(tǒng)中最大的瓶頸。與其擴(kuò)容昂貴的小型機(jī),還不如將部分應(yīng)用負(fù)載轉(zhuǎn)移到相對(duì)便宜、比較容易橫向擴(kuò)展的應(yīng)用服務(wù)器上。

有些企業(yè)在應(yīng)用架構(gòu)轉(zhuǎn)型中獲得了成功,不過很多企業(yè)轉(zhuǎn)型后雖然解決了數(shù)據(jù)庫(kù)服務(wù)器瓶頸的問題,但是遇到了新的挑戰(zhàn)-應(yīng)用開發(fā)的成本太高了。與傳統(tǒng)的IOE架構(gòu)相比,現(xiàn)在的應(yīng)用架構(gòu)中引入了太多復(fù)雜的組件,應(yīng)用開發(fā)成本增大,開發(fā)周期變長(zhǎng),運(yùn)維難度也大幅上升。有些企業(yè)甚至已經(jīng)在反思是不是每個(gè)系統(tǒng)都需要采用如此復(fù)雜的架構(gòu)。

在數(shù)據(jù)庫(kù)國(guó)產(chǎn)化替代的今天,我看到了一個(gè)十分有趣的現(xiàn)象,那就是國(guó)產(chǎn)數(shù)據(jù)庫(kù)大多數(shù)都提供了比較好的Oracle PL/SQL的兼容支持。而且大多數(shù)國(guó)產(chǎn)數(shù)據(jù)庫(kù)支持的PL/SQL語(yǔ)法肯定都不全面,不過因?yàn)镻L/SQL中較為容易實(shí)現(xiàn)的部分都被國(guó)產(chǎn)數(shù)據(jù)庫(kù)所支持了,所以目前國(guó)產(chǎn)數(shù)據(jù)庫(kù)的PL/SQL語(yǔ)法反而是比較接近的。在國(guó)產(chǎn)數(shù)據(jù)庫(kù)之間遷移PL/SQL存儲(chǔ)過程的難度很低。使用國(guó)產(chǎn)數(shù)據(jù)庫(kù)后,如果想要換另外一個(gè)國(guó)產(chǎn)數(shù)據(jù)庫(kù),基本上可以平替。

前幾天和一個(gè)國(guó)產(chǎn)數(shù)據(jù)庫(kù)廠商談到這方面的問題的時(shí)候,突然想到,國(guó)產(chǎn)數(shù)據(jù)庫(kù)時(shí)代,是不是可以回歸大量使用存儲(chǔ)過程,從而降低應(yīng)用研發(fā)與應(yīng)用維護(hù)的成本呢?似乎這是可行的,當(dāng)年JAVA剛剛流行,替代C的時(shí)候就是如此。因?yàn)榇鎯?chǔ)過程這個(gè)大殺器的存在,讓企業(yè)使用熟悉業(yè)務(wù)邏輯與數(shù)據(jù)庫(kù)架構(gòu)的高手將核心業(yè)務(wù)邏輯封裝在存儲(chǔ)過程中,再安排大量技術(shù)水平一般的JAVA程序員去解決前端應(yīng)用易用性的問題,從而讓信息系統(tǒng)開發(fā)的門檻一下子降低了幾個(gè)數(shù)量級(jí)。

已經(jīng)脫離開發(fā)多年了,不太清楚目前應(yīng)用架構(gòu)師關(guān)注的是什么。我做應(yīng)用架構(gòu)師的時(shí)候,總是在追求化繁為簡(jiǎn),盡可能讓一線開發(fā)人員變成工具人,而似乎現(xiàn)在的風(fēng)向有些變化,應(yīng)用開發(fā)已經(jīng)變得相當(dāng)復(fù)雜了。而讓部分企業(yè)級(jí)應(yīng)用回歸到以數(shù)據(jù)庫(kù)為核心,對(duì)于國(guó)產(chǎn)數(shù)據(jù)庫(kù)而言也是一個(gè)巨大的挑戰(zhàn),只有國(guó)產(chǎn)數(shù)據(jù)庫(kù)真的能打了,這個(gè)愿望才能實(shí)現(xiàn)。不過對(duì)于企業(yè)級(jí)應(yīng)用而言,適當(dāng)回歸存儲(chǔ)過程的使用,可能能夠解決目前的一些問題。

今天就聊到這里吧,明天我們來分析分析,國(guó)產(chǎn)數(shù)據(jù)庫(kù)的PL/SQL兼容能力,需要在哪些地方發(fā)力,或者說用戶選型數(shù)據(jù)庫(kù)的時(shí)候從哪些角度來看存儲(chǔ)過程的兼容性。

責(zé)任編輯:武曉燕 來源: 白鱔的洞穴
相關(guān)推薦

2022-12-08 10:49:43

2022-03-05 23:29:18

LibuvwatchdogNode.js

2022-12-14 08:31:43

#error編譯命令

2024-06-12 08:36:25

2024-03-05 10:09:16

restfulHTTPAPI

2022-12-26 07:48:04

敏捷項(xiàng)目

2023-07-10 08:36:21

工具pptword

2023-01-29 08:08:34

并發(fā)庫(kù)conc通用庫(kù)

2022-09-26 08:49:11

Java架構(gòu)CPU

2022-04-13 09:01:45

SASSCSS處理器

2022-07-11 09:00:37

依賴配置文件Mybati

2024-02-02 11:03:11

React數(shù)據(jù)Ref

2024-03-04 07:41:18

SpringAOPOOP?

2022-12-27 08:45:00

繪制菜單符號(hào)

2024-04-29 06:55:34

RustMIDI應(yīng)用程序

2023-03-07 07:50:15

Transactio事務(wù)代碼

2024-11-08 08:56:01

2023-06-05 08:36:04

SQL函數(shù)RANK()

2025-01-02 10:02:44

2022-10-11 08:48:08

HTTP狀態(tài)碼瀏覽器
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 狠狠综合久久av一区二区老牛 | 天天搞天天搞 | 99爱视频 | 国产福利在线 | 超碰av人人 | 国产91在线播放 | av先锋资源 | 精品一区二区三区四区外站 | 日韩欧美国产精品一区二区三区 | 午夜免费观看网站 | 国产第二页 | 一区二区三区国产好的精 | 国产一区二区久久 | 欧美一区日韩一区 | 午夜影院网站 | 狠狠干美女 | 色精品视频 | 祝你幸福电影在线观看 | 亚洲欧美v | av天天操 | 欧美精品一区在线 | 国产精品国产三级国产aⅴ中文 | 欧美高清hd| 国产四区 | 黄色大片免费观看 | 国产中文| 国产日产精品一区二区三区四区 | 一级片在线观看 | 亚洲a在线观看 | 99久久婷婷国产综合精品电影 | 久久i| 欧美在线视频一区二区 | 自拍偷拍亚洲一区 | 日韩国产专区 | 精品久久精品 | 国产欧美精品 | 亚洲精品久久嫩草网站秘色 | 国产一区二区电影网 | 国产一区不卡在线观看 | 在线观看av中文字幕 | 欧美三级电影在线播放 |