国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 學(xué)院 > 開發(fā)設(shè)計(jì) > 正文

ASP.NET+SqlSever大數(shù)據(jù)解決方案PKHADOOP

2019-11-14 14:32:43
字體:
供稿:網(wǎng)友

半個(gè)月前看到博客園有人說.NET不行那篇文章,我只想說你們有時(shí)間去抱怨不如多寫些實(shí)在的東西。

 

 1、SQLSERVER優(yōu)點(diǎn)和缺點(diǎn)?

     優(yōu)點(diǎn):支持索引、事務(wù)、安全性以及容錯(cuò)性高

     缺點(diǎn):數(shù)據(jù)量達(dá)到100萬以上就需要開始優(yōu)化了,一般我們會對 表進(jìn)行水平拆分,分表、分區(qū)和作業(yè)同步等,這樣做大大提高了邏輯的復(fù)雜性,難以維護(hù),只有群集容錯(cuò),沒有多庫負(fù)載均衡并行計(jì)算功能。

 

 2、SQLSERVER真的不能處理大數(shù)據(jù)?

   答案:當(dāng)然可以的,打個(gè)比方:操作單一數(shù)據(jù)庫稱為一維操作,如果操作相同結(jié)構(gòu),分布在多個(gè)服務(wù)器上的多個(gè)數(shù)據(jù)庫這個(gè)可以稱為二維操作。 我們只需要對這個(gè)二維操作進(jìn)行一層封裝,讓他支持并行運(yùn)算,把服務(wù)器壓力分散開,我們不需要寫太多東西,SQL已經(jīng)為我們封裝了很多,它就好比是一個(gè)巨人,而我們只需要站在他的肩膀上,就可以輕松實(shí)現(xiàn)針對WEB的大數(shù)據(jù)處理。

 

 3、hadoop適不適合.NET,他有哪些缺點(diǎn)?

   (1)、數(shù)據(jù)同步慢

   (2)、事務(wù)處理難

   (3)、異常捕獲難

   (4)、很難與asp.net結(jié)合,無論是學(xué)習(xí)學(xué)成本,還是自身的支持方面

   (5)、 需要安裝,適合離線大數(shù)據(jù)處理,但未必適合WEB

 

 4、什么是SqlSugar框架?

    SqlSugar是一款基于SqlSever的輕量級高性能ORM框架,除了具有和ADO.NET匹敵的性能外,現(xiàn)在已經(jīng)支持多庫并行計(jì)算。

 

     

    優(yōu)點(diǎn):  

   (1)、適合海量數(shù)據(jù)的無延遲查詢

   (2)、支持分布式事務(wù)

   (3)、讓JOIN飛起來,告別大數(shù)據(jù)NOJOIN

   (4)、C#.NET自家語法和大量封裝函數(shù)

   (5)、隨機(jī)存儲,也就是說可以存儲在任意一個(gè)節(jié)點(diǎn)數(shù)據(jù)庫,做到真正正的負(fù)載均衡,而不是以往主從模式的讀寫分離。

     

    缺點(diǎn):    SqlServer授權(quán)費(fèi)太貴,適合有錢的公司或者不交授權(quán)費(fèi)的創(chuàng)業(yè)小企業(yè) 

 

 

SqlSugar學(xué)習(xí)目錄

  0、功能更新

 1、SqlSugar基礎(chǔ)應(yīng)用

 2、使用SqlSugar處理大數(shù)據(jù)

 3、使用SqlSugar實(shí)現(xiàn)Join  待更新

 4、使用SqlSugar實(shí)現(xiàn)分頁+分組+多列排序 待更新

 5、節(jié)點(diǎn)故障如何進(jìn)行主從調(diào)換

 

》》》》2、使用SqlSugar處理大數(shù)據(jù)《《《 

 

 1、SqlSugar的原理

      Insert: 隨機(jī)存儲到某個(gè)節(jié)點(diǎn)數(shù)據(jù)庫(每個(gè)節(jié)點(diǎn)可以配置處理的機(jī)率,如果設(shè)置為0表示該節(jié)點(diǎn)不會有新數(shù)據(jù)添加進(jìn)來)

      Update、Delete:異步請求所有數(shù)據(jù)庫節(jié)點(diǎn)同步匯總處理結(jié)果

      Search: 對分頁前X頁、后X頁和PageCount<1000(1000這個(gè)值可以在程序中設(shè)置)的數(shù)據(jù)進(jìn)行了特殊優(yōu)化,其它數(shù)據(jù)進(jìn)行了異步節(jié)點(diǎn)算法同步對結(jié)果進(jìn)行匯,性能在多服務(wù)器架構(gòu)中可以完美的體現(xiàn)出來,在單服務(wù)器架構(gòu)需要注意保證足夠IO,避免全表掃描,否則起不到優(yōu)化效果。

       1、單服務(wù)器、單硬盤、多庫架構(gòu):

         適合低并發(fā),數(shù)據(jù)量在1億以下,響應(yīng)速度有較高要求,建議數(shù)據(jù)量最好不要超過1000W,在查詢中避免全表掃描,充分利用io性能,讓異步的優(yōu)勢體現(xiàn)出來。

        如圖:

        對部署在同一臺PC機(jī)上的10個(gè)同結(jié)構(gòu)庫進(jìn)行了模糊搜索

        name建了全文索引,id和num建立了復(fù)合索引

        十個(gè)庫加起來總共有540萬條數(shù)據(jù) ,普通機(jī)械硬盤 只用了0.3秒的時(shí)間。

       2、單服務(wù)器、多硬盤或陣列:

        可以使用LIKE等進(jìn)行全表掃描,性能有明顯的提升

     

       3、多服務(wù)器、多庫架構(gòu)

  

             就按單臺PC機(jī)10個(gè)庫540萬0.3秒的來算,如果有10臺PC機(jī)那就可以處理5000萬,時(shí)間預(yù)算在0.3秒-0.5秒之間。

             這10臺PC換成10臺服務(wù)器又能處理多少呢?

             總結(jié):節(jié)點(diǎn)越多、服務(wù)器越多處理能力就越強(qiáng)。

        

                     Landa

 

     

 2、用法

       1、引用SqlSugar.dll

       2、配置連接字符串

            其中rate是Insert時(shí)存儲到某節(jié)點(diǎn)的機(jī)率,0表示不會有新數(shù)據(jù)添加到該節(jié)點(diǎn),下面設(shè)置都為1表示我一點(diǎn)都不偏心

        

       3、添、刪、改用法

       

       4、啟用分布式事務(wù)

                 服務(wù)器需要開啟MSDTC等服務(wù)

                    

 

 

       5、Taskable是所有分布式計(jì)算的底層核心

                 分頁、分組等復(fù)雜的查詢都從這里展開,支持DataTable、T:Class、值類型 三種類型,能夠方便的把多庫的結(jié)果同步匯總到一個(gè)容器中。

                 使用Taskable需要注意每個(gè)節(jié)點(diǎn)獲取的數(shù)據(jù)量都不能很大,通過少取,內(nèi)存運(yùn)算,在取在運(yùn)算的方式處理復(fù)雜數(shù)據(jù)的查詢。

              

 

       6、使用Taskable進(jìn)行分組查詢

                統(tǒng)計(jì)類報(bào)表類的查詢,查詢結(jié)果集不會太大,完全可使用Taskable進(jìn)行處理,Merge方法能夠?qū)⑺袔觳樵兊慕Y(jié)果集合并到一個(gè)新的集合

                      

       

 

       7、使用Taskable擴(kuò)展函數(shù),讓你處理多庫運(yùn)算更加方便。

          

 

 

       8、分布式分頁

               考慮了分庫機(jī)制,主鍵建議使用GUID來保證獨(dú)一,只有主鍵唯一才可以使用該分頁函數(shù)

          

 

             分頁是通過 節(jié)點(diǎn)數(shù) 每頁顯示條數(shù) 當(dāng)前頁碼 等算出一個(gè)初步的索引,然后取出這個(gè)索引位置所在的數(shù)據(jù),在算出這個(gè)數(shù)據(jù)的真實(shí)索引 與 page begin比較在算出一個(gè)新的索引直到找到精準(zhǔn)位置在把數(shù)據(jù)讀出來。原理是這樣子的。

 

 

 

至于原理我就不多講了,一個(gè)貼子也說不完,有幸趣的朋友可以加群: 225982985 討論

源碼地址:https://github.com/sunkaixuan/SqlSugar

 


哈哈  我已經(jīng)盡力了, 不管好壞為了給個(gè)贊哈

 


發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 大连市| 方山县| 平湖市| 伊宁市| 永定县| 聂拉木县| 海口市| 屏东县| 平果县| 漯河市| 陈巴尔虎旗| 黑水县| 永善县| 吐鲁番市| 来安县| 沙洋县| 上思县| 吴旗县| 花莲县| 万盛区| 衡水市| 仁布县| 闽侯县| 桐乡市| 万山特区| 六安市| 桃园县| 乐平市| 沙坪坝区| 隆化县| 怀远县| 江口县| 沙湾县| 普格县| 平江县| 绥化市| 澄城县| 阳曲县| 胶州市| 陕西省| 车险|