標籤: 網頁設計公司推薦

  • 斷電惹民怨 南非拚能源轉型

    摘錄自2020年2月16日聯合新聞網報導

    南非總統拉瑪佛沙日前表示,大量依賴煤炭的南非將會轉型使用更多再生能源,減少嚴重衝擊重建經濟努力的斷電現象。不過,他也警告,近期可能會有更多斷電發生。

    南非民眾對今年盛夏分區斷電感到憤怒,投資人也感到擔憂。根據南非能源部,南非約77%電力依賴燃煤火力發電,部分民眾對於官員將停電歸咎於「濕煤」覺得傻眼。

    拉瑪佛沙警告,停電將會持續,電力公司Eskom正在進行必要的改變,包括拖延已久的維修。他說,「在未來幾個月,隨著Eskom努力恢復其運營能力,我們將採取措施,從根本上改變我國能源生產軌跡」。

    南非政府的解決辦法之一是,允許商業和工業用戶自行發電,並且允許地方政府向獨立發電商購買電力。南非也將向現有的風力和太陽能發電廠購買更多能源。

    本站聲明:網站內容來源環境資訊中心https://e-info.org.tw/,如有侵權,請聯繫我們,我們將及時處理

    【其他文章推薦】

    台北網頁設計公司這麼多,該如何挑選?? 網頁設計報價省錢懶人包"嚨底家"

    網頁設計公司推薦更多不同的設計風格,搶佔消費者視覺第一線

    ※想知道購買電動車哪裡補助最多?台中電動車補助資訊懶人包彙整

    南投搬家費用,距離,噸數怎麼算?達人教你簡易估價知識!

  • 美國全市5大區 免費發放環保袋

    摘錄自2020年02月15日世界新聞網美國報導

    因應3月1日將生效的禁塑令,代表曼哈頓華埠、多年來一直積極推動禁塑令的市議員陳倩雯,15日在曼哈頓集市公園(Washington Market Park),向民眾免費發放可重複使用的環保袋;此外,民眾還可通過填寫網路表格或參加社區活動,免費領取市清潔局(DSNY)的環保袋。

    當日發放的環保袋包含90%的可回收材料,袋面為鮮豔橙色,印有「零垃圾填埋」(Zero Waste to Landfills)的大字標語,環保袋可多次摺疊,並由附贈的登山扣扣起,更易隨身攜帶出行;民眾可通過參加市清潔局之後將在全是五區舉辦的各類社區活動,或填寫「零浪費承諾」(Take the Zero Waste Pledge)表格,免費獲得可重複使用的購物袋。

    對於華裔耆老習慣使用塑料袋並將塑料袋作為垃圾袋,陳倩雯則表示,耆老們仍可攜帶塑料袋前往超市購物,超市散裝水果的連卷塑料袋,未在禁塑範圍,耆老也可二次使用這些塑袋,裝載輕型垃圾。

    本站聲明:網站內容來源環境資訊中心https://e-info.org.tw/,如有侵權,請聯繫我們,我們將及時處理

    【其他文章推薦】

    網頁設計公司推薦更多不同的設計風格,搶佔消費者視覺第一線

    ※廣告預算用在刀口上,網站設計公司幫您達到更多曝光效益

    ※自行創業 缺乏曝光? 下一步"網站設計"幫您第一時間規劃公司的門面形象

    南投搬家前需注意的眉眉角角,別等搬了再說!

  • 德國計畫為電動車及插電式混合動力車車主提供5500美元補貼

    據報導,德國政府官員與汽車行業高管擬協商為電動車及插電式混合動力車購買者提供5,000歐元(約合5,500美元)的補貼。

    德國聯邦政府曾計畫到2020年實現電動車保有量達百萬輛的目標,然而到目前為止在鼓勵消費者從購買廉價汽油及柴油車轉為購買更為清潔的電動車方面沒有獲得太大進展。

    德國政府正在探討能否與汽車製造商達成融資協議,共同為消費者提供電動車購買補貼,德國總理安格拉•默克爾(AngelaMerkel)將與車企高管們就這個問題進行討論。德國經濟部發言人則表示,德國政府內部已經進行了建設性的討論,希望達成一致的解決方案,幫助德國實現百萬輛電動車保有量的目標。

    貝爾吉•施格拉德巴赫(BergischGladbach)汽車管理中心專家StefanBratzel透露,2015年,德國電動車及插電式混合動力車銷量達23,500輛,其中僅12,300輛為純電動汽車。

    本站聲明:網站內容來源於EnergyTrend https://www.energytrend.com.tw/ev/,如有侵權,請聯繫我們,我們將及時處理

    【其他文章推薦】

    台北網頁設計公司這麼多,該如何挑選?? 網頁設計報價省錢懶人包"嚨底家"

    網頁設計公司推薦更多不同的設計風格,搶佔消費者視覺第一線

    ※想知道購買電動車哪裡補助最多?台中電動車補助資訊懶人包彙整

    南投搬家費用,距離,噸數怎麼算?達人教你簡易估價知識!

  • 新車新規定,台、日分別推出電動車輛相關新法規

    電動車輛日益興盛,意味著相關的交通法規也需進行修訂。日本與台灣近日分別針對電動車與電動機車、自行車提出新的法令規章,主要的目的是保護用路人安全。

    日本:電動車需有警示音

    日本國土交通省於2月1日宣布新法規,要求電動車、混和動力汽車、燃料電池車等行駛聲音較小的電動車輛在生產階段就需安裝車輛接近告知裝置,以避免行人沒有注意到車輛靠近而造成交通事故。告知裝置的音量將採用聯合國即將於三月公布的標準。2018年上路的汽車就須加裝相關設備。

    為強化新法規的強制性,日本也將修改道路運輸安全標準,未符合告知裝置音量標準的車輛,將無法在日本國內出售。

    台灣:電動自行車需配戴安全帽

    而向來以機車與自行車為電動車輛主流的台灣,也針對愈來愈普及的電動自行車提出新規定。交通部指出,未來電動自行車騎士比照電動機車與一般機車,必須配戴合格安全帽;未配合規定者將課處新台幣300~600元的罰金。今年7月1日起開始勸導,預計最快在明年正式開罰。

    目前台灣有18萬輛領牌的電動自行車,車速規定限於25km/hr以下,但經調整後時速往往可來到30~40km/hr,危險性增加。加上電動自行車不受一般機車與電動機車法規限制,且不須駕照就能騎乘,交通部認為有管制漏洞,已著手修正道路交通安全規則,並預計在7月1日起勸導電動自行車騎士佩戴安全帽。

    此外,交通部也將針對改車問題修正「電動輔助自行車及電動自行車形式安全審驗管理辦法」,明文規定禁止改變速率控制器,將速度限制在25km/hr以內。同時,電動自行車之車款外裝、功能、尺寸等,也將制定標準並發給合格標章,供合格車款張貼;7月1日起,未貼合格標章的電動自行車不可上路,舊車則將鼓勵申請更換新標章。

    本站聲明:網站內容來源於EnergyTrend https://www.energytrend.com.tw/ev/,如有侵權,請聯繫我們,我們將及時處理

    【其他文章推薦】

    網頁設計公司推薦更多不同的設計風格,搶佔消費者視覺第一線

    ※廣告預算用在刀口上,網站設計公司幫您達到更多曝光效益

    ※自行創業 缺乏曝光? 下一步"網站設計"幫您第一時間規劃公司的門面形象

    南投搬家前需注意的眉眉角角,別等搬了再說!

  • 產品標示碳足跡、限制肉類消費好不好? 英辦氣候公民大會徵詢民眾意見

    環境資訊中心綜合外電;姜唯 編譯;林大利 審校

    本站聲明:網站內容來源環境資訊中心https://e-info.org.tw/,如有侵權,請聯繫我們,我們將及時處理

    【其他文章推薦】

    台北網頁設計公司這麼多,該如何挑選?? 網頁設計報價省錢懶人包”嚨底家”

    網頁設計公司推薦更多不同的設計風格,搶佔消費者視覺第一線

    ※想知道購買電動車哪裡補助最多?台中電動車補助資訊懶人包彙整

    小三通海運與一般國際貿易有何不同?

    小三通快遞通關作業有哪些?

  • 程序員修神之路–有狀態的服務其實可以做更多的事情

    程序員修神之路–有狀態的服務其實可以做更多的事情

    菜菜哥,你換形象啦?


    這麼巧,你也換啦!聽說是不會畫畫的菜嫂經過九牛二虎之力的功勞哦!鼓掌……


    前幾天我出去面試了,面試官問我微服務的知識,我回答的可好了


    看來微服務你真的下功夫研究了呀


    是呀是呀,但是碰到一個問題,有狀態的服務是什麼意思呢?


    看來你又掛在這個問題上了,且聽這次分解


    簡介

    對於初學者,心裏對“有狀態服務”的理解可能比較模糊,但是從面向對象編程思想的角度去理解也許會明朗很多。面向對象編程思想提倡的是用編程語言去描述世間萬物,所以面向對象編程的語言都會提供描述對象的容器以及對象行為的表達方式。舉一個很簡單的栗子,在c#或者java中,表達對象的容器就是class,對象的行為通過一系列的接口或者函數來表達。更進一步,對象抽象出來之後,大多數對象都有自己的內部狀態,體現到代碼上也就是常見的類的屬性。

    面向對象編程的基本思想本質上是對現實世界的一種抽象,萬物皆可抽象。

    根據業務把對象抽象出來之後,每一個實例化的對象其實都可以有自己的狀態,比如:在最常見的遊戲場景中,每一個玩家都是“玩家”這類對象的一個實例,每一個玩家都有自己的名字,性別,等級,HP等屬性,這些屬性本質上就是玩家的狀態,隨着時間的推移,每個玩家的HP,等級等屬性會隨之變化,這些變化其實就是這個玩家狀態的變化。對應到有狀態的服務也是如此,之所以稱之為有狀態,是因為服務內部的對象狀態會隨着業務有着對應的變動,而這些變動只發生在這個服務內部,在外界看來,這個服務好像是有狀態的。

    有狀態的服務本質上是一些有狀態對象的集合,這些對象狀態的變化只發生在當前服務進程中

    優勢和劣勢

    有狀態服務之所以被稱為有狀態,一個很大的原因是它可以追溯狀態的變化過程,也就是說一個有狀態的服務保存着狀態變化的記錄,並可以根據這些歷史記錄恢復到指定的狀態,這在很多場景下非常有用。舉一個很簡單的栗子:我們平時玩的斗地主遊戲,三個玩家,當有一個玩家因為網絡原因掉線,經過一段時間,這個玩家又重新上線,需要根據某些記錄來恢復玩家掉線期間系統自動出牌的記錄,這些出牌記錄在這個業務中其實就是這個玩家的狀態變化記錄。在有狀態的服務中,很容易做到這一點。

    其實實際開發中很多場景不需要記錄每個狀態的變化,只保留最新狀態即可,不單單是因為保存每個狀態的變化需要大量的存儲和架構設計,更因為是很多業務根本不需要這些狀態變化記錄,業務需要的只是最新的狀態,所以大部分有狀態的服務只保存着最新的狀態。

    有狀態的服務在設計難度上比無狀態的服務要大很多,不僅僅是因為開發設計人員需要更好的抽象能力,更多的是一致性的設計問題。現代的分佈式系統,都是由多個服務器組成一個集群來對外提供服務,當一個對象在服務器A產生之後,如果請求被分配到了服務器B上,這種情況下有狀態的服務毫無意義,為什麼呢?當一個相同的業務對象存在於不同的服務器上的時候,本質上就違背了現實世界的規則,你能說一個人,即出生在中國,又出生在美國嗎? 所以有狀態的服務對於一致性問題有着天然的要求,這種思想和微服務設計理想不謀而合,舉個栗子:一個用戶信息的服務,對外提供查詢修改能力,凡是用戶信息的業務必須通過這個服務來實現。同理,一個對象狀態的查詢修改以及這個對象的行為,必須由這個對象的服務來完成。

    有狀態的服務要求相同業務對象的請求必須被路由到同一個服務進程。

    因此,有狀態的服務對於同一個對象的橫向擴容是做不到的,就算是做的到,多個相同對象之間的狀態同步工作也必然會花費更多的資源。在很多場景下,有狀態的服務要注意熱點問題,例如最常見的秒殺,這裏並非是說有狀態服務不適合大併發的場景,反而在高併發的場景下,有狀態的服務往往表現的比無狀態服務更加出色。

    Actor模型

    在眾多的併發模型中,最適合有狀態服務設計的莫過於Actor模型了,如果你對actor模型還不熟悉,可以擼一遍菜菜之前的文章:https://mp.weixin.qq.com/s/eEiypRysw5jsC7iYUp_yAg  actor模型天生就具備了一致性這種特點,讓我們在對業務進行抽象的時候,不必考慮一致性的問題,而且每一個請求都是異步模式,在對象內部修改對象的狀態不必加鎖,這在傳統的架構中是做不到的。

    基於actor模型,系統設計的難點在於抽象業務模型,一旦業務模型穩定,我們完全可以用內存方式來保存對象狀態(也可以定時去持久化),內存方式比用其他網絡存儲(例如redis)要快上幾個量級,菜菜也有一篇文章大家可以去擼一下:https://mp.weixin.qq.com/s/6YL3SnSriKEnpCyB5qkk0g  ,既滿足了一致性,又可以利用進程內對象狀態來應對高併發業務場景,何樂而不為呢?

    有不少同學問過我,actor模型要避免出現熱點問題,就算有內存狀態為其加速,那併發數還是超過actor的處理能力怎麼辦呢? 其實和傳統做法類似,所有的高併發系統設計無非就是“分”一個字,無論是簡單的負載均衡,還是複雜的分庫分表策略,都是分治的一種體現。一台服務器不夠,我就上十台,百台…..

    所有的高併發系統設計都是基於分治思想,把每一台服務器的能力發揮到極致,難度最大的還是其中的調度算法。

    用actor模型來應對高併發,我們可以採用讀寫分離的思想,主actor負責寫請求,並利用某種通信機制把狀態的變化通知到多個從actor,從actor負責對外的讀請求,這個DB的讀寫分離思想一致,其中最難的當屬actor的狀態同步問題了,解決問題的方式千百種,總有一種適合你,歡迎你留言寫下你認為最好的解決方案。

    案例(玩家信息服務)

    由於菜菜是c#出身,對c#的Actor服務框架Orleans比較熟悉,這裏就以Orleans為例,其他語言的coder不要見怪,Orleans是一個非常優秀的Actor模型框架,而且支持最新的netcore 3.0版本,地址為:https://github.com/dotnet/orleans  有興趣的同學可以去看一下,而且分佈式事物已經出正式版,非常給力。其他語言的也非常出色java:https://github.com/akka/akka

    golang:

    1. 首先我們定義玩家的狀態信息

    //玩家的信息,其實也就是玩家的狀態信息
        public class Player {
            /// <summary>
            /// 玩家id,同時也是玩家這個服務的主鍵
            /// </summary>
            public long Id { getset; }
            /// <summary>
            /// 玩家姓名
            /// </summary>
            public string Name { getset; }
            /// <summary>
            /// 玩家等級
            /// </summary>
            public int Level { getset; }
        }

    2. 接下來定義玩家的服務接口

     /// <summary>
        /// 玩家的服務接口
        /// </summary>
        interface IPlayerService: Orleans.IGrainWithIntegerKey
        {
            //獲取玩家名稱
            Task<string> GetName();
            //獲取玩家等級
            Task<int> GetLevel();
            //設置玩家等級,這個操作會改變玩家的狀態
            Task<int> SetLevel(int newLevel);
        }

    3. 接下來實現玩家服務的接口

    public class PlayerService : GrainIPlayerService
        {
            //這裏可以用玩家的信息來代表玩家的狀態信息,而且這個狀態信息又充當了進程內緩存的作用
            Player playerInfo;
            public async Task<intGetLevel()
            
    {
                return (await LoadPlayer()).Level;
            }

            public async Task<stringGetName()
            
    {
                return (await LoadPlayer()).Name;
            }

            public async Task<intSetLevel(int newLevel)
            
    {
                var playerInfo =await LoadPlayer();
                if (playerInfo != null)
                {
                    //先進行數據庫的更新,然後在更新緩存的狀態, 進程內緩存更新失敗的幾率幾乎為0
                    playerInfo.Level = newLevel;                
                }
                return 1;
            }

            private async Task< Player> LoadPlayer()
            {
                if (playerInfo == null)
                {
                    var id = this.GetPrimaryKeyLong();
                    //這裏模擬的信息,真實環境完全可以從持久化設備進行讀取
                    playerInfo= new Player() { Id = id, Name = "玩家姓名", Level = 1 };
                }
                return playerInfo;
            }
        }

    以上只是一個簡單案例,有狀態的服務還有更多的設計方案,以上只供參考

    本站聲明:網站內容來源於博客園,如有侵權,請聯繫我們,我們將及時處理
    【其他文章推薦】

    台北網頁設計公司這麼多,該如何挑選?? 網頁設計報價省錢懶人包”嚨底家”

    網頁設計公司推薦更多不同的設計風格,搶佔消費者視覺第一線

    ※想知道購買電動車哪裡補助最多?台中電動車補助資訊懶人包彙整

    小三通海運與一般國際貿易有何不同?

    小三通快遞通關作業有哪些?

  • 數據中台的“自動化數據治理”時代已來

    數據中台的“自動化數據治理”時代已來

     

    中台,我理解是能力的下沉,數據處理能力下沉為加工平台,數據處理結果下沉為數據資產。那麼數據治理能否下沉?可以下沉出什麼東西?

    ——宜信數據中台負責人 盧山巍

    本文來源:宜信數據中台負責人盧山巍在億歐產業互聯網頻道“数字中台創新”沙龍的分享實錄

    原文首發:億歐

    億歐產業互聯網頻道10月24日在上海InnoSpace落地“数字中台創新”沙龍,活動匯聚了良品鋪子電商技術中心總監羅軼群、愛馳汽車科技信息總監杭瑜峰、宜信數據中台負責人盧山巍、ThoughtWorks首席諮詢師及極客時間《說透中台》專欄作者王健、億歐華東負責人繆國成、億歐產業互聯網頻道副主編黃志磊、億歐產業互聯網頻道作者龔晨霞參与分享,就数字中台話題展開深度討論。

    宜信是一家成立於2006年從事普惠金融和財富管理業務的金融科技企業,2018年基於四大開源平台和中間件等技術,開始研發數據中台,並在宜信內部推廣使用。目前,宜信的中台部門一共分為兩大板塊:數據中台和AI中台。 

    以下是盧山巍演講觀點梳理:

    1、宜信數據中台指導思維:統一建設、敏捷開發

    2、從開源到中台,關鍵詞是自助化

    3、數據治理,更依賴人治還是自治? 

    以下是演講速記實錄,經億歐產業互聯網頻道整理,供行業人士參考。

    大家下午好,我叫盧山巍,來自宜信。剛才聽羅總高屋建瓴地介紹了中台的概念和應用,受益匪淺。我的分享會不太一樣:第一,我有一個限定詞是“數據”。羅總的分享對業務中台、組織中台、技術中台都有探討,而我本身是做數據的,所以我只介紹數據中台。第二,我個人是從純粹技術路線走上來的,分享的內容會比較具體而微 。

    我今天分享的話題是《宜信數據中台建設三部曲》,內容將按照時間發展故事線來展開。分別是:「敏捷使者」— ABD時代(2015年-2018年) ;「自助奇兵」— ADX時代(2018年-2019年); 「自治歸來」— ADG時代(2019年-)。

    2015年加入宜信之前,我在上海張江的eBay研發中心工作,當時的主要方向是大數據架構和研發,在付費廣告組做大數據相關的事情。由於我個人的關注點比較下沉,對平台技術更感興趣,因此總想在技術領域中做出一些框架和平台類的東西。 

    1、宜信數據中台指導思維:統一建設、敏捷開發

    2015年宜信找到我,說公司內部沒有數據平台,希望我能夠去帶領建設數據平台,於是我加入了宜信。

    其實說“公司沒有數據平台”是不準確的,更準確地說應該是“公司沒有統一的數據平台”,因為公司很多業務線都有自己所謂的數據平台,有的做得好一點,有的是純粹的定製化,談不上平台化,因為公司規模很大,很多是自下而上地建設,不像銀行是自上而下去推動做這個事情。當時也沒有數據中台這個概念,只是說要做一個好的數據平台,感覺有點無從下手,很有挑戰,因此着手做了很多公司內部的調研和訪談,用幾張圖來展現當時的現狀。

    左上角的圖表達的是業務的豎井,從前台到業務開發端,到數據端,甚至有的數據庫都沒打通。通常好的數據中台,要有好的業務中台配合,在業務豎井嚴重的現狀下,想在數據層融合打通是挺難的事。

    左下角表達的是在2015年的時候,很多企業都面臨的兩個慢的問題,即:時效慢、實施慢。

    一方面,那時比較主流的還是T+1批處理,很多企業沒有完善的流式處理平台,不像現在有很多成熟的選擇。一般來講都是只能滿足T+1時效的數據需求。

    另一方面,因為沒有很好的自助平台給大家使用,就變成了需求提給特定的BI團隊,BI團隊接了這個需求,需求多了忙不過來,就開始排期,可能要1-2個月甚至以上的時間才能響應和處理這個需求。

    有的業務部門比較有實力,擁有不少大數據工程師,使用了很多技術選型,比如MongoDB、ES、HBase、Cassandra、Phoenix、Presto、Spark、Hive、Impala等等各種技術選型都有,沒有統一的技術選型標準。而公司需求又是多樣化的,像上圖右邊的自助查詢、360全景分析、實時處理、多維分析、數據湖等等,使得大數據架構變得越來越複雜和臃腫,越來越難以建設和維護,再加上圖下方的數據治理、數據質量、數據安全等切面課題,當時面臨的就是這樣一個比較複雜的現狀。

    在這樣的現狀之下思考整個問題,找尋解決方案。本身我個人是比較倡導敏捷開發思想的,敏捷開發更多是在業務開發方面的實踐經驗,大數據比較笨重,怎麼才能讓大象奔跑起來?我認為要用敏捷化思想去建設數據平台。經過調研和思考,形成了一系列大數據敏捷思想框架、實踐和方法論,更重要的是我們要落地一些中間件去驅動敏捷化實踐。

    接下來我們先後自研了四个中間件平台:DBus、Wormhole、Moonbox、Davinci。既然用了這麼多的技術選型,又很難快速將它們統一到一套技術選型,還要能夠去統一收口管控關鍵節點,最好的辦法就是利用中間件思想去適配已有的選型,然後再去簡化整個架構。

    下面這個圖就比較技術視角了,展示了整個數據處理的鏈路,從左到右,分為數據源層、數據集成層、數據總線層、數據處理層、數據存儲層、數據服務層和數據應用層 。其中數據源層,天然有各種各樣的選型,這是業務需要;數據存儲層,出於不同目的有了眾多技術選型,這個也沒法很快統一,而且本身也很難找到一個大數據存儲選型,能夠解決所有的存儲問題和計算問題,所以不得不面對多個存儲和計算的整合問題。

    在應用端,需求場景驅動也是很難整合統一的。能夠整合收口的是數據集成層、數據總線層、數據處理層和數據服務層 。整個數據鏈路梳理完之後,是一種“開放+統一”的架構,有些層面是開放包容的,而有些層面是要統一收口管控的。

    當然,上圖灰色的切面課題也是應該關注和支持的,因為我們當時的策略是做四个中間件工具DBus、Wormhole、Moonbox、Davinci,因此沒有太關注這些切面課題 。

    下面分別介紹這些中間件工具:

    • DBus,能夠實時將數據抽取出來,可以對接多個數據庫和日誌,既可以實時抽取增量數據,也支持抽取全量數據,並與增量數據保持一致性id體系,以支持後續冪等入庫。
    • Wormhole,負責流式作業開發和管理,可以不用編寫代碼,只通過配置和SQL方式即可支持實時同步和流上處理邏輯。這也體現出敏捷性:一是中間件統一了通用技術實現,不用重複開發;二是不斷地降低數據項目實施成本,實施人員盡量關注業務邏輯本身,簡單培訓即可自助完成項目,這些都是敏捷思想的體現。舉個例子,從使用體驗上看,比如增量數據從Oracle實時出來,希望實時寫到MySQL里去,只要簡單配置一下就可以了,如果還需要有一些實時處理邏輯,比如流上增量數據去Lookup外面的Redis,只要寫一個SQL即可 。另外,因為我們做中間件而不重造引擎,所以Wormhole是基於主流流式計算引擎Spark和Flink開發的,用戶可以自行選擇希望的計算引擎。Flink還支持CEP操作,所以Wormhole也支持CEP規則配置。
    • Moonbox,異構系統混算服務,假設數據因為各種原因存放在各個不同的地方,但又希望能夠混算這些數據,你可以當Moonbox是一個“虛擬數據庫”來使用。比如A表在Oracle里,B表在MongoDB里,C表在ES里,一個完整的SQL發給Moonbox,會自動將結果混算出來並返回結果數據;同時,Moonbox還能有效利用各個存儲的計算優勢,將更多算子下推計算,以整體提高運算性能。
    • Davinci,可視化平台,一般可視化平台具備的功能Davinci基本都具備,並且支持豐富的可視化應用和系統整合能力,力圖解決“大數據最後十公里問題”。

    這些中間件做出來后帶來了什麼效果?比如某條業務線2-3個數據相關人員,對業務非常了解,但沒有大數據技術開發背景,經過一兩周的培訓,就可以自助地、快速地完成各種實時數倉、實時報表、實時應用的端到端項目。這在以前是不可想象的,以前要做一個實時項目,需要有大數據技術開發背景的團隊來支持,而現在哪怕不是IT背景的人,培訓一下就可以做這個事情了,這就是敏捷中間件工具帶來的效率提升和成本減低。 

    接下來更深入地介紹一下Wormhole。

    除了上面說到的配置化和SQL化開發流式應用這些好處,從內部技術實現角度來看,很多流式開發要注意的典型問題也都被中間件屏蔽了,這些對用戶來說是透明支持的。 

    • 冪等Sink,流上的增量數據不保證強有序,但是落Sink的時候要做到最終一致性。Wormhole已經內置了這個處理邏輯,用戶只管寫好流上邏輯SQL就可以 。
    • HDFS小文件,做大數據大家都知道這個問題,Wormhole也內置了解決方案。
    • 多Flow支持,這是我們獨創的功能,如果做過Spark開發,會知道寫一個Spark程序,它起來後會一直占固定內存跑一個作業,而我們認為Spark streaming應該是物理資源管道,裏面的流上邏輯應該和物理資源解藕,所以我們設計開發了Flow的概念。Flow的定義就是從哪兒來,到哪兒去,在流上做什麼處理邏輯。解耦帶來的效果是一個Spark streaming物理管道可以跑多個邏輯Flow,比如說公司有1萬張表,需要同步到2萬個目標端,可能在以前開發需要起兩萬個Spark streaming作業,現在只需要起一個Spark streaming作業就可以了,比如設置50G內存,在裏面跑2萬個同步Flow工作,相當於做了邏輯層管道支持,這個還是比較獨創的,目前只有我們在這麼做。
    • 動態指令,這個是和運維相關的,我不希望每次改流式處理邏輯的時候都要去重啟這個流,而是能夠在線更改、實時生效。
    • 業務時間策略,以前Spark streaming是默認基於Process time去做計算的,現在流式引擎很成熟了,引擎內部支持基於Event time計算,但當時Spark streaming還沒有支持,所以這塊我們也做了相應的支持。
    • Flow漂移,這個也是運維相關,比如說,我們起了5個物理的Spark streaming管道,每個裡面跑10個Flow,某天某個業務線增量數據量激增,某個Stream資源不夠用了,Flow漂移能力就可以將這個邏輯Flow漂到其他空閑的Spark streaming物理管道里。這就是在不斷地降低流式處理運維開發的門檻,盡量做到敏捷化,也就是說我可以寫一個自動化小程序,定時檢測哪一個Spark streaming資源不夠,哪一個閑置,然後自動漂一個Flow,這樣可以做到流式處理的自動化運維。這個課題大家也在探索,批量作業相對很好運維,出了問題自動重啟就可以了,但流式處理的話就比較難運維了,包括資源大小、重啟Offset等等,我們在上面都做了很多的工作。所以我們不是簡單地包裝Spark,而是做了很多深入的東西的。

    關於開源,我以前就職於eBay,eBay出了幾個Apache頂級開源項目,對我們也是很有影響的,所以我在宜信設計做這四個工具的時候,一開始就是朝着通用化開源工具的方向進行的。不知道在座大家有沒有聽說過這幾個工具,其中Davinci在社區是很火的,很多公司都有在用。

    至此,第一階段工作趨於穩定,解決了公司內部很多的問題,開源的幾個工具不光是在公司內部得到很好的應用,在技術社區也賦能了很多其他企業。

    第二階段是從去年下半年開始的。2017年我參加了杭州雲棲大會,聽過阿里分享的數據中台,那時“中台”這個詞還沒有流行起來。到了2018年初,我就在思考,認為數據中台是當下公司需要做的東西,於是跟CTO建議,他也很支持我們,之後沒幾個月,數據中台開始流行起來,所以我們也相當於趕上風口了。

    2、從開源到中台,關鍵詞是自助化

    ABD時代已經做得不錯了,為什麼還要再往上做數據中台?除了前面提到的業務線多、技術選型多、需求多等這些大家都知道的問題之外,從數據管理層面來看,如數據治理、數據資產等都還沒有涉及,還有很多切面上的課題也沒有過多考慮。之前因為開源也和一些社區、公司做過線下交流,都表示“你們的開源工具做得很好,但是離我們業務需求想要的中間感覺還差一塊”,其實差的就是一個類似數據中台的東西。

    不管數據中台如何定義,企業需要一個能夠更加直接賦能業務的平台,因此我們可以在業務需求和中間件工具之間再提升一個層次,構建一個一體化、標準化、一站式的自助平台。

    進入第二個時代,敏捷數據中台ADX。下圖大三角中的藍色三角,數據平台引擎,從技術層面來講,我們首先要基於之前的開源工具建設一個好用的自助平台。但是單單一個好的自助數據平台,不等同於數據中台。參考了很多數據中台文章和定義后,我們總結出數據中台還應該包括其他三塊。 

    • 一塊是數據資產體系,數據資產是好的數據信息的沉澱和復用,數據中台一定要將數據資產建設納入其中,具體方式比如將數據模型方法論固化並下沉系統化,這樣能夠更加規範化、標準化地支持沉澱數據資產。
    • 有了數據資產,有了好的平台,但如果壺很大、口很小,數據價值賦能業務帶寬不足,業務部門可能直觀感受會覺得好像只能看報表,會造成數據賦能能力不夠。所以對接前台業務不光要能提供報表,還需要能夠提供數據產品、數據API、自助分析等,這些都可以更好地賦能業務。
    • 有了這些,數據中台能不能真正運轉起來,還要看公司的流程制度和運營機制。比如我有好的數據資產,卻沒有數據運營機制保障,其他業務團隊也不會敢用,如果要復用的話我要對其負責,這些都是數據運營的考慮範疇。這些方面都做好之後,才有可能把數據中台做好並運作好。

    數據中台的價值體現,在上圖右側也有展示,簡單來說就是“更省更快更准”,或者換個說法是“降本增效提質”,這就是數據中台的價值本質。

    下面這張圖是ADX上一個大致的使用體驗,在自助化數據中台上,整個數據中台研發團隊就成為在其背後的IT團隊了。用戶不必和我們直接打交道,在平台上可以自助地申請資源、申請庫表,自助開發、自助運維、查看監控 、設置報警、診斷問題、上線下線等,我們只要做好平台設計、研發和運維,這是我們想達到的效果,更加全面徹底的自助化、平民化。

    數據中台是基於模塊化思想建設的,拆分為眾多子模塊,之間關係是分層和聯合的。比如統一的數據歸集、數據加工、數據模型、監控預警等,這些和其他公司思路都差不多;右側的數據管理、中台管理,都是在解決切面的課題;上面部分是貼近業務使用的模塊。模塊很多這裏不一一展開介紹。

    值得一提的是,主要核心模塊都不是從零開發,而是基於ABD開源工具整合打通構建的,所以ADX不是推翻了以前的ABD,而是基於ABD更加抽象、更模式化、更面向業務去做上層建築。

    現在處於ADX時代,下圖就有所變化了。DataHub整合了數據集成和數據總線層,以前DBus只支持流式歸集和分發,而DataHub不管是流式還是批量都可以支持。DataWorks之於Wormhole也是如此,相當於ABD功能的擴展外延。

    下層的切面課題,也都有相應的模塊對應解決。所以說ADX更加平台化,不像以前我們做了幾個比較好的開源工具,然後大家自己DIY組合去解決各種場景項目,現在是基於一站式自助平台,用戶可以在其上完成各種各樣的日常數據處理工作。

    再提一下DataHub,這個模塊當時做的時候沒覺得怎樣,做出來以後大家都覺得真的很方便,很強大。

    下圖從DataHub這個模塊外面站在黑盒的角度去看,可以想要什麼數據就能得到什麼數據:比如我想要某張表的每天T+1快照,它會返給我;我想要這張表的任何一個歷史時刻的精確快照,它也能返給我;我想要這張表的實時流數據,它還能返給我。之所以能做到這點,因為我們把所有表的全量+增量數據都實時落入數據湖,並基於ABD開源工具的整合模式提供各種各樣的所需數據形態,因此從數據層面來看,理論上你想要什麼,DataHub都可以提供。我們也了解了社區一些類似的數據整合方案,大部分都是提供單純工具層面的功能,而沒有內置實時數據湖。DataHub包含了一個數據湖,全公司所有的數據都可以實時地統一地歸集和維護進來,所有的數據使用方,想要什麼就可以返回什麼,這是非常方便和徹底的使用體驗。

    第二個時代ADX時代,從開發到上線到現在大規模應用,有一年多的時間,基本能力都已具備。到了第三個時代,我們更關注數據資產能力和數據治理能力建設,沒有數據資產就談不上數據中台,而數據治理是確保數據資產有效沉澱和賦能業務的重要保障。

    數據治理這個課題,在數據鏈路每一層都有對應可能存在的問題,這些問題有些可以在系統層面解決,但更多的是依賴於人去治、依賴於組織去治,且依然不容易得到完美的解決。在這個課題上我們也在思考和摸索中,以下僅限於探討。

    3、數據治理,更依賴人治還是自治?

    下面是我們的一些思考。“自治”包含兩層含義:自動化治理和自助化治理。

    中台,我理解是能力的下沉,數據處理能力下沉為加工平台,數據處理結果下沉為數據資產。那麼數據治理能否下沉?可以下沉出什麼東西?

    一類是下沉出一些平台工具,比如元數據管理、數據質量管理,這些可以做得很通用化、工具化;一類是下沉出一些方法論的系統化,比如阿里的OneData,是一套內部打磨出來的本地化的方法論,落地為一套系統體系,這套體系和方法論不一定適合於每家公司,但我覺得這個思路每家公司都可以借鑒,打磨適合本企業業務體系的方法論,然後將之系統化,更好地約束和規範化企業內的數據治理管理和數據資產建設。

    對於“自動化”數據治理,以上兩類依然不能覆蓋所有問題,比如企業有很多遺留系統、遺留流程,無法在短時間內進行大規模的、統一的改造和遷移,那麼怎樣去管控它、治理它?這依然是一個難題。RPA是一個比較新興的思路,可以很好地處理遺留系統的問題,這一點和數據治理也許可以找到很好的交叉點,比如可以利用流程編排、自動執行的思想,應對一些遺留系統、遺留環境的數據治理問題。

    關於“自助化”數據治理,數據治理和數據處理不太一樣,比如流式處理,這是一個業務能夠直觀感受到的剛需,不管什麼業務都會有很強的需求。而數據治理不同,從業務角度來看,數據治理雖然就長期而言可以為整個企業和業務發展帶來堅實的正面影響,但短期內可能會限制業務快速發展的速度,所以業務方可能不會有特別大的動力去主動支持和配合數據治理。

    有些企業會自上而下強制推行數據治理的管理和實踐,這是需要管理層有這個意識和決心的。我們公司不太一樣,數據治理需要向業務快速迭代和需求快速變更妥協,無法做到自上而下強推,但又不能不治,因此我們考慮能不能自助化地做數據治理。比如業務線可以建立自己的私有數據資產,如果希望升級成公有數據資產,可以進行申請審核,當然這要可以為業務線帶來好處,要和KPI綁定,這樣一來,數據資產的運營能力可以下放,讓大家主動共同參与到數據治理中來,這種柔性數據治理推廣方式可能會更有效,這也是我們在嘗試的工作。

    上圖只是一個粗略的概念架構圖,還不是特別成熟,這也是我們現在在思考的一些思路。如果可以把公司所有的元數據歸集起來,形成一個企業級元數據全景圖譜的話,我們就具備了數據知識;因為我們有Moonbox,我們就具備了各種數據操作能力;基於數據知識能力和數據操作能力,就可以根據數據治理的經驗、規則和現狀的流程梳理,進行數據治理動作的可視化編排,最終形成一個自動化數據治理的體系和框架。

    數據治理純靠人的話,不確定性因素太大,相對來說我更相信工具,相信通過不斷的抽象、下沉和驗證,可以找到一套更系統化的流程方式和配套工具去做得更好。

    以上就是我們四年來數據中台建設的三個時代走過的歷程,前路依然任重道遠,還需繼續摸索沉澱,希望可以和大家多多交流探討,感謝大家的聆聽!

    本站聲明:網站內容來源於博客園,如有侵權,請聯繫我們,我們將及時處理

    【其他文章推薦】

    網頁設計公司推薦更多不同的設計風格,搶佔消費者視覺第一線

    ※廣告預算用在刀口上,網站設計公司幫您達到更多曝光效益

    ※自行創業 缺乏曝光? 下一步"網站設計"幫您第一時間規劃公司的門面形象

    台灣寄大陸海運貨物規則及重量限制?

    大陸寄台灣海運費用試算一覽表

    南投搬家前需注意的眉眉角角,別等搬了再說!

  • 臉書前主管成立氣候組織 助員工施壓企業拚永續

    摘錄自2020年2月24日中央社報導

    臉書(Facebook)前永續部門主管魏爾(Bill Weihl)宣布創立新組織「氣候之聲」(ClimateVoice),協助大企業員工對老闆施壓,以拿出更積極的政策對抗氣候變遷。

    2018年離開臉書的魏爾說:「當一個議題對社會整體可能很重要、卻未直接影響到企業時,基本上大多數企業多數時間都會保持沈默。」

    「氣候之聲」一開始將以志工方式運作,但希望不久後能募得資金並雇用員工。魏爾表示,「氣候之聲」將推動科技業員工組織並強化氣候變遷倡議運動,以施壓公司高層對相關立法進行遊說。

    本站聲明:網站內容來源環境資訊中心https://e-info.org.tw/,如有侵權,請聯繫我們,我們將及時處理

    【其他文章推薦】

    台北網頁設計公司這麼多,該如何挑選?? 網頁設計報價省錢懶人包”嚨底家”

    網頁設計公司推薦更多不同的設計風格,搶佔消費者視覺第一線

    ※想知道購買電動車哪裡補助最多?台中電動車補助資訊懶人包彙整

    小三通海運與一般國際貿易有何不同?

    小三通快遞通關作業有哪些?

  • 環團踢爆義政府 縱放有害物至馬國

    摘錄自2020年2月19日台灣醒報報導

    根據《半島新聞台》報導,環保組織綠色和平踢爆,義大利多間公司利用法律漏洞,違法出口工業廢棄物,將大量不可回收及含有傷害環境的化學物質非法出口至馬來西亞堆積,對環境造成嚴重危害。

    依照歐盟規定,其成員國若要出口廢棄物至非歐盟國家進行處理,必須要符合「可回收」的特點,接收方也必須要有能力處理這些回收物質。然而義大利看中歐盟未落實管制的漏洞,去年共出口逾2880噸的廢棄物至馬來西亞,其中超過半數無法回收,甚至包含苯聚合物等對環境造成危害的化學物質。

    據《衛報》報導,中國政府2018年宣佈禁止進口廢棄物處理產業後,馬來西亞便成為世界上最大的廢棄物進口處理國,據統計,回收業每年約有500億美元的驚人產值。

    然而,與這些義大利公司合作的馬來西亞工廠不但是違法設立,連處理量能都嚴重不足,多出來的廢棄物就直接堆積在工廠周遭。坐擁許多廢棄物處理廠的馬來西亞城市雙溪大年,2019年感染疾病的人數更因此遽增3成。

    本站聲明:網站內容來源環境資訊中心https://e-info.org.tw/,如有侵權,請聯繫我們,我們將及時處理

    【其他文章推薦】

    網頁設計公司推薦更多不同的設計風格,搶佔消費者視覺第一線

    ※廣告預算用在刀口上,網站設計公司幫您達到更多曝光效益

    ※自行創業 缺乏曝光? 下一步"網站設計"幫您第一時間規劃公司的門面形象

    台灣寄大陸海運貨物規則及重量限制?

    大陸寄台灣海運費用試算一覽表

    南投搬家前需注意的眉眉角角,別等搬了再說!

  • 南極洲熱浪來襲九天 鷹島融化約20%積雪

    摘錄自2020年2月25日中央社報導

    南極洲這個月初遭為期九天的熱浪侵襲,位於南極洲東北端的鷹島(Eagle Island)約20%積雪融化,這是日益加劇的氣候危機所帶來的普遍徵兆。

    NASA地球觀測站表示,僅一週左右時間,鷹島的積雪就融化4英吋(約10公分),大約占該島季節性積雪總量的20%。

    麻薩諸塞州尼柯斯學院(Nichols College)地理學家裴爾托(Mauri Pelto)告訴NASA觀測站:「我從未看過南極洲冰雪融化形成水池的速度如此之快。你可以在阿拉斯加和格陵蘭看到這樣的融冰現象,但南極洲很罕見。」

    氣候學家費特韋斯(Xavier Fettweis)繪出從南極半島流入海水的融冰量,並指出熱浪是造成今夏海平面上升的最大主因。

    本站聲明:網站內容來源環境資訊中心https://e-info.org.tw/,如有侵權,請聯繫我們,我們將及時處理

    【其他文章推薦】

    台北網頁設計公司這麼多,該如何挑選?? 網頁設計報價省錢懶人包”嚨底家”

    網頁設計公司推薦更多不同的設計風格,搶佔消費者視覺第一線

    ※想知道購買電動車哪裡補助最多?台中電動車補助資訊懶人包彙整

    小三通海運與一般國際貿易有何不同?

    小三通快遞通關作業有哪些?