最近中文字幕2019高清,亚洲人成高清在线播放,男生淦哭男生图片动漫有字,国产亚洲精品九九久在线观看,无码av专区丝袜专区

文章實(shí)時(shí)采集

文章實(shí)時(shí)采集

匯總:文章實(shí)時(shí)采集,按下表計算:就是視頻流

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 81 次瀏覽 ? 2022-12-01 14:28 ? 來(lái)自相關(guān)話(huà)題

  匯總:文章實(shí)時(shí)采集,按下表計算:就是視頻流
  文章實(shí)時(shí)采集,按下表計算:flv,就是視頻流。2000即為1024-1,2000視頻為1k,人人都有好幾個(gè)qq號。另外,分包時(shí)候的實(shí)時(shí)計算要考慮壓縮比,不然,容易視頻變模糊。所以,實(shí)時(shí)渲染的意義,就是方便快速的加載視頻流到vuivr里面去。1024-1=20,2000即為1024-1。容易出現帶寬緊張,導致vuivr部分壓縮的視頻格式?jīng)]有完全從4k清晰的流中獲取到文件大小,在最終pc端,部分大小需要裁剪出來(lái)重壓縮。
  等效于1000m,百分之10的比特率和百分之20的壓縮率,自然是比特率更高的比壓縮率更低的文件要大。當然,后者確實(shí)更大。當然,反過(guò)來(lái)說(shuō),視頻的大小主要取決于清晰度。清晰度越高,其大小也是越大的。
  
  那個(gè)應該是約小,畢竟音頻需要一些濾波器做不同方向的放大,自然就會(huì )增加一些信息量,除了帶寬的問(wèn)題還要考慮芯片和接口帶寬,
  發(fā)個(gè)視頻看看壓縮率怎么樣。
  
  1、本質(zhì)上應該是大小,是1024k,也就是1024分鐘內圖片的size會(huì )是1024x2000,若是壓縮一下圖片2、我們能很容易想到如果1000兆的文件就要翻4倍多的量了,特別是1gb空間的圖片。
  有的時(shí)候平方率高的視頻比平方率低的大。
  500m一部劇片單人1g級別的音頻音樂(lè )一般要用超線(xiàn)程的處理器了, 查看全部

  匯總:文章實(shí)時(shí)采集,按下表計算:就是視頻流
  文章實(shí)時(shí)采集,按下表計算:flv,就是視頻流。2000即為1024-1,2000視頻為1k,人人都有好幾個(gè)qq號。另外,分包時(shí)候的實(shí)時(shí)計算要考慮壓縮比,不然,容易視頻變模糊。所以,實(shí)時(shí)渲染的意義,就是方便快速的加載視頻流到vuivr里面去。1024-1=20,2000即為1024-1。容易出現帶寬緊張,導致vuivr部分壓縮的視頻格式?jīng)]有完全從4k清晰的流中獲取到文件大小,在最終pc端,部分大小需要裁剪出來(lái)重壓縮。
  等效于1000m,百分之10的比特率和百分之20的壓縮率,自然是比特率更高的比壓縮率更低的文件要大。當然,后者確實(shí)更大。當然,反過(guò)來(lái)說(shuō),視頻的大小主要取決于清晰度。清晰度越高,其大小也是越大的。
  
  那個(gè)應該是約小,畢竟音頻需要一些濾波器做不同方向的放大,自然就會(huì )增加一些信息量,除了帶寬的問(wèn)題還要考慮芯片和接口帶寬,
  發(fā)個(gè)視頻看看壓縮率怎么樣。
  
  1、本質(zhì)上應該是大小,是1024k,也就是1024分鐘內圖片的size會(huì )是1024x2000,若是壓縮一下圖片2、我們能很容易想到如果1000兆的文件就要翻4倍多的量了,特別是1gb空間的圖片。
  有的時(shí)候平方率高的視頻比平方率低的大。
  500m一部劇片單人1g級別的音頻音樂(lè )一般要用超線(xiàn)程的處理器了,

分享文章:個(gè)人博客開(kāi)發(fā)系列:文章實(shí)時(shí)保存

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 130 次瀏覽 ? 2022-11-30 16:12 ? 來(lái)自相關(guān)話(huà)題

  分享文章:個(gè)人博客開(kāi)發(fā)系列:文章實(shí)時(shí)保存
  摘要:前言 一般用來(lái)寫(xiě)東西的網(wǎng)站都會(huì )有實(shí)時(shí)編輯保存的功能。文章保存時(shí),實(shí)時(shí)保存的數據會(huì )被清空。源碼顯示該功能只在個(gè)人博客后臺使用,并沒(méi)有多賬號系統,所以在雙方合眾都保存了一條記錄。
  前言
  一般用來(lái)寫(xiě)東西的網(wǎng)站都會(huì )有實(shí)時(shí)編輯保存的功能。對于用戶(hù)來(lái)說(shuō)是非常實(shí)用的功能。作為個(gè)人博客,雖然用處不是那么明顯,但還是想實(shí)現這個(gè)功能,只是作為練習。
  實(shí)施思路
  使用WebSocket實(shí)現瀏覽器與服務(wù)器的實(shí)時(shí)通信;
  服務(wù)端使用Redis緩存實(shí)時(shí)編輯的文章(編輯時(shí)文章變化頻繁,頻繁的讀寫(xiě)數據庫操作不是很好的解決方案);
  服務(wù)器使用定時(shí)任務(wù)(比如每天凌晨3:00)將Redis緩存數據存儲到MySQL數據庫中;
  瀏覽器首次進(jìn)入新增文章頁(yè)面時(shí),使用WebSocket從服務(wù)器獲取數據(先從Redis中查找,如果沒(méi)有再從MySQL數據庫中查找);
  瀏覽器首次進(jìn)入文章編輯頁(yè)面時(shí),不需要從服務(wù)器獲取數據;
  使用Vue.js的watch監聽(tīng)文章的變化,變化時(shí)使用WebSocket向服務(wù)器傳輸數據。
  文章保存時(shí)清空Redis和MySQL中實(shí)時(shí)保存的數據。
  源代碼
  談話(huà)很便宜。給我看代碼。
  
  闡明
  
<p>本功能只是個(gè)人博客后臺使用,沒(méi)有多賬戶(hù)體系,所以Redis和MySQL中都是保存一條記錄。如果需要按不同用戶(hù)來(lái)保存的話(huà),需要自行開(kāi)發(fā)。
  代碼比較多,具體的代碼就不貼了,有興趣的可以去我的GitHub上查看源碼。這里只說(shuō)明一下各個(gè)文件中代碼的用處。
</p>
  1. /server/util/draft-socketio.js
  服務(wù)器端 WebSocket 服務(wù)使用 socket.io 庫。
  2./server/util/draft-redis.js
  Redis 的 set 和 get 公共方法。
  3./server/util/redis-mysql.js
  redisToMysqlTask??:定時(shí)同步Redis數據到MySQL數據的方法,使用node-schedule庫。
  getDraftPostFromMysql:當Redis中不存在數據時(shí),查詢(xún)MySQL中的數據。
  clearDraftPostOfMysql:從MySQL中刪除數據(文章保存后操作)。
  
  4. /src/main.js
  瀏覽器首先引入 socket.io,使用 vue-socket.io 和 socket.io-client 庫。
  import VueSocketio from "vue-socket.io";
import socketio from "socket.io-client";
Vue.use(VueSocketio, socketio("http://localhost:9000", {
path: "/testsocketiopath"
}));
  5. /src/pages/Edit.vue
  使用WebSocket從服務(wù)器獲取數據,并將數據實(shí)時(shí)傳輸到服務(wù)器進(jìn)行存儲。
  總結
  整個(gè)功能其實(shí)就是WebSocket、Redis、MySQL的使用,之前都用過(guò),所以開(kāi)發(fā)起來(lái)還是比較容易的。最重要的是先想好解決辦法。
  最后,像往常一樣索取 fork 和 star。
  分享文章:微信公眾號文章采集
  采集
網(wǎng)站:
  使用功能點(diǎn):
  網(wǎng)址
  尋呼列表信息采集
  搜狗微信搜搜:搜狗微信搜索是搜狗于2014年6月9日推出的微信公眾平臺?!拔⑿潘阉鳌敝С炙阉魑⑿殴娞柡臀⑿盼恼?。您可以使用關(guān)鍵詞搜索相關(guān)微信公眾號或微信公眾號推送的文章。不僅在PC端,搜狗手機搜索客戶(hù)端也會(huì )推薦相關(guān)的微信公眾號。
  搜狗微信文章采集數據說(shuō)明:本文采集搜狗微信-搜索-優(yōu)采云
大數據中的所有文章信息。本文僅以“搜狗微信-搜索-優(yōu)采云
所有文章信息大數據采集”為例。在實(shí)際操作過(guò)程中,您可以根據自己的數據采集需要,更改搜狗微信的搜索詞。
  搜狗微信文章采集
詳細采集
字段說(shuō)明:微信文章標題、微信文章關(guān)鍵詞、微信文章摘要、微信公眾號名稱(chēng)、微信文章發(fā)布時(shí)間、微信文章地址。
  第一步:創(chuàng )建采集任務(wù)
  1)進(jìn)入主界面,選擇“自定義模式”
  2) 將要采集的網(wǎng)址復制粘貼到網(wǎng)址輸入框中,點(diǎn)擊“保存網(wǎng)址”
  第 2 步:創(chuàng )建翻頁(yè)循環(huán)
  
  1)打開(kāi)右上角的“進(jìn)程”。點(diǎn)擊頁(yè)面文章搜索框,在右側的操作提示框中選擇“輸入文字”
  2)輸入要搜索的文章信息,這里以搜索“優(yōu)采云
大數據”為例,輸入完成后點(diǎn)擊“確定”按鈕
  3)“優(yōu)采云
大數據”會(huì )自動(dòng)填入搜索框,點(diǎn)擊“搜索文章”按鈕,在操作提示框中選擇“點(diǎn)擊此按鈕”
  4) 頁(yè)面出現“優(yōu)采云
大數據”的文章搜索結果。將結果頁(yè)面下拉至最下方,點(diǎn)擊“下一頁(yè)”按鈕,在右側的操作提示框中選擇“循環(huán)點(diǎn)擊下一頁(yè)”
  第 3 步:創(chuàng )建列表循環(huán)并提取數據
  1) 移動(dòng)鼠標選中頁(yè)面第一篇文章區塊。系統會(huì )識別出該塊中的子元素,在操作提示框中選擇“選擇子元素”
  2)繼續選擇頁(yè)面中第二篇文章的區塊,系統會(huì )自動(dòng)選擇第二篇文章中的子元素,并識別出頁(yè)面中其他10組相似元素,在操作提示框中選擇“全選” “
  
  3)我們可以看到頁(yè)面上article block中的所有元素都被選中了,變成了綠色。在右側的操作提示框中,出現字段預覽表,將鼠標移至表頭,點(diǎn)擊垃圾桶圖標即可刪除不需要的字段。選擇字段后,選擇“采集
以下數據”
  4)由于我們還要采集
每篇文章的url,所以還需要提取一個(gè)字段。點(diǎn)擊第一篇文章鏈接,再點(diǎn)擊第二篇文章鏈接,系統會(huì )自動(dòng)選擇頁(yè)面上的一組文章鏈接。在右側的操作提示框中,選擇“采集
以下鏈接地址”
  5) 字段選擇完成后,選擇對應的字段,自定義字段的命名。完成后點(diǎn)擊左上角“保存并開(kāi)始”開(kāi)始采集任務(wù)
  6)選擇“開(kāi)始本地采集

  第四步:數據采集與導出
  1)采集完成后,會(huì )彈出提示,選擇“導出數據”,選擇“合適的導出方式”,將采集到的搜狗微信文章數據導出
  2)這里我們選擇excel作為導出格式,數據導出如下圖 查看全部

  分享文章:個(gè)人博客開(kāi)發(fā)系列:文章實(shí)時(shí)保存
  摘要:前言 一般用來(lái)寫(xiě)東西的網(wǎng)站都會(huì )有實(shí)時(shí)編輯保存的功能。文章保存時(shí),實(shí)時(shí)保存的數據會(huì )被清空。源碼顯示該功能只在個(gè)人博客后臺使用,并沒(méi)有多賬號系統,所以在雙方合眾都保存了一條記錄。
  前言
  一般用來(lái)寫(xiě)東西的網(wǎng)站都會(huì )有實(shí)時(shí)編輯保存的功能。對于用戶(hù)來(lái)說(shuō)是非常實(shí)用的功能。作為個(gè)人博客,雖然用處不是那么明顯,但還是想實(shí)現這個(gè)功能,只是作為練習。
  實(shí)施思路
  使用WebSocket實(shí)現瀏覽器與服務(wù)器的實(shí)時(shí)通信;
  服務(wù)端使用Redis緩存實(shí)時(shí)編輯的文章(編輯時(shí)文章變化頻繁,頻繁的讀寫(xiě)數據庫操作不是很好的解決方案);
  服務(wù)器使用定時(shí)任務(wù)(比如每天凌晨3:00)將Redis緩存數據存儲到MySQL數據庫中;
  瀏覽器首次進(jìn)入新增文章頁(yè)面時(shí),使用WebSocket從服務(wù)器獲取數據(先從Redis中查找,如果沒(méi)有再從MySQL數據庫中查找);
  瀏覽器首次進(jìn)入文章編輯頁(yè)面時(shí),不需要從服務(wù)器獲取數據;
  使用Vue.js的watch監聽(tīng)文章的變化,變化時(shí)使用WebSocket向服務(wù)器傳輸數據。
  文章保存時(shí)清空Redis和MySQL中實(shí)時(shí)保存的數據。
  源代碼
  談話(huà)很便宜。給我看代碼。
  
  闡明
  
<p>本功能只是個(gè)人博客后臺使用,沒(méi)有多賬戶(hù)體系,所以RedisMySQL中都是保存一條記錄。如果需要按不同用戶(hù)來(lái)保存的話(huà),需要自行開(kāi)發(fā)。
  代碼比較多,具體的代碼就不貼了,有興趣的可以去我的GitHub上查看源碼。這里只說(shuō)明一下各個(gè)文件中代碼的用處。
</p>
  1. /server/util/draft-socketio.js
  服務(wù)器端 WebSocket 服務(wù)使用 socket.io 庫。
  2./server/util/draft-redis.js
  Redis 的 set 和 get 公共方法。
  3./server/util/redis-mysql.js
  redisToMysqlTask??:定時(shí)同步Redis數據到MySQL數據的方法,使用node-schedule庫。
  getDraftPostFromMysql:當Redis中不存在數據時(shí),查詢(xún)MySQL中的數據。
  clearDraftPostOfMysql:從MySQL中刪除數據(文章保存后操作)。
  
  4. /src/main.js
  瀏覽器首先引入 socket.io,使用 vue-socket.io 和 socket.io-client 庫。
  import VueSocketio from "vue-socket.io";
import socketio from "socket.io-client";
Vue.use(VueSocketio, socketio("http://localhost:9000", {
path: "/testsocketiopath"
}));
  5. /src/pages/Edit.vue
  使用WebSocket從服務(wù)器獲取數據,并將數據實(shí)時(shí)傳輸到服務(wù)器進(jìn)行存儲。
  總結
  整個(gè)功能其實(shí)就是WebSocket、Redis、MySQL的使用,之前都用過(guò),所以開(kāi)發(fā)起來(lái)還是比較容易的。最重要的是先想好解決辦法。
  最后,像往常一樣索取 fork 和 star。
  分享文章:微信公眾號文章采集
  采集
網(wǎng)站:
  使用功能點(diǎn):
  網(wǎng)址
  尋呼列表信息采集
  搜狗微信搜搜:搜狗微信搜索是搜狗于2014年6月9日推出的微信公眾平臺?!拔⑿潘阉鳌敝С炙阉魑⑿殴娞柡臀⑿盼恼?。您可以使用關(guān)鍵詞搜索相關(guān)微信公眾號或微信公眾號推送的文章。不僅在PC端,搜狗手機搜索客戶(hù)端也會(huì )推薦相關(guān)的微信公眾號。
  搜狗微信文章采集數據說(shuō)明:本文采集搜狗微信-搜索-優(yōu)采云
大數據中的所有文章信息。本文僅以“搜狗微信-搜索-優(yōu)采云
所有文章信息大數據采集”為例。在實(shí)際操作過(guò)程中,您可以根據自己的數據采集需要,更改搜狗微信的搜索詞。
  搜狗微信文章采集
詳細采集
字段說(shuō)明:微信文章標題、微信文章關(guān)鍵詞、微信文章摘要、微信公眾號名稱(chēng)、微信文章發(fā)布時(shí)間、微信文章地址。
  第一步:創(chuàng )建采集任務(wù)
  1)進(jìn)入主界面,選擇“自定義模式”
  2) 將要采集的網(wǎng)址復制粘貼到網(wǎng)址輸入框中,點(diǎn)擊“保存網(wǎng)址”
  第 2 步:創(chuàng )建翻頁(yè)循環(huán)
  
  1)打開(kāi)右上角的“進(jìn)程”。點(diǎn)擊頁(yè)面文章搜索框,在右側的操作提示框中選擇“輸入文字”
  2)輸入要搜索的文章信息,這里以搜索“優(yōu)采云
大數據”為例,輸入完成后點(diǎn)擊“確定”按鈕
  3)“優(yōu)采云
大數據”會(huì )自動(dòng)填入搜索框,點(diǎn)擊“搜索文章”按鈕,在操作提示框中選擇“點(diǎn)擊此按鈕”
  4) 頁(yè)面出現“優(yōu)采云
大數據”的文章搜索結果。將結果頁(yè)面下拉至最下方,點(diǎn)擊“下一頁(yè)”按鈕,在右側的操作提示框中選擇“循環(huán)點(diǎn)擊下一頁(yè)”
  第 3 步:創(chuàng )建列表循環(huán)并提取數據
  1) 移動(dòng)鼠標選中頁(yè)面第一篇文章區塊。系統會(huì )識別出該塊中的子元素,在操作提示框中選擇“選擇子元素”
  2)繼續選擇頁(yè)面中第二篇文章的區塊,系統會(huì )自動(dòng)選擇第二篇文章中的子元素,并識別出頁(yè)面中其他10組相似元素,在操作提示框中選擇“全選” “
  
  3)我們可以看到頁(yè)面上article block中的所有元素都被選中了,變成了綠色。在右側的操作提示框中,出現字段預覽表,將鼠標移至表頭,點(diǎn)擊垃圾桶圖標即可刪除不需要的字段。選擇字段后,選擇“采集
以下數據”
  4)由于我們還要采集
每篇文章的url,所以還需要提取一個(gè)字段。點(diǎn)擊第一篇文章鏈接,再點(diǎn)擊第二篇文章鏈接,系統會(huì )自動(dòng)選擇頁(yè)面上的一組文章鏈接。在右側的操作提示框中,選擇“采集
以下鏈接地址”
  5) 字段選擇完成后,選擇對應的字段,自定義字段的命名。完成后點(diǎn)擊左上角“保存并開(kāi)始”開(kāi)始采集任務(wù)
  6)選擇“開(kāi)始本地采集

  第四步:數據采集與導出
  1)采集完成后,會(huì )彈出提示,選擇“導出數據”,選擇“合適的導出方式”,將采集到的搜狗微信文章數據導出
  2)這里我們選擇excel作為導出格式,數據導出如下圖

解決方案:目標檢測數據標注項目分析-產(chǎn)品缺陷檢測

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 191 次瀏覽 ? 2022-11-30 08:53 ? 來(lái)自相關(guān)話(huà)題

  解決方案:目標檢測數據標注項目分析-產(chǎn)品缺陷檢測
  什么是生產(chǎn)過(guò)程中的產(chǎn)品缺陷檢測?
  生產(chǎn)過(guò)程中的缺陷檢測是保證產(chǎn)品質(zhì)量的重要環(huán)節。通過(guò)及時(shí)發(fā)現故障或缺陷并采取適當的措施,我們可以降低與運營(yíng)和質(zhì)量相關(guān)的風(fēng)險。但是在一般的視覺(jué)系統中,每個(gè)缺陷都必須經(jīng)過(guò)檢查和預處理才能被檢測出來(lái),這可能會(huì )非常昂貴。
  在制造業(yè)中,使用攝像頭進(jìn)行缺陷檢測的解決方案數不勝數,但使用人工智能和圖像處理的方案遠勝于攝像頭。
  一種算法可以做很多事情:AI可以快速了解產(chǎn)品的外觀(guān)并實(shí)時(shí)獨立捕捉問(wèn)題,節省資金、返工,并防止消費者收到有缺陷的產(chǎn)品。
  人工智能如何用于缺陷檢測?
  圖像處理是將所有圖像數據采集
到云端數據庫中,通過(guò)幾十到上百種機器學(xué)習算法進(jìn)行評估,檢查缺陷,并提供糾正措施。評估結果可用于整個(gè)生產(chǎn)過(guò)程的風(fēng)險預測。產(chǎn)品投產(chǎn)時(shí)可規避潛在風(fēng)險。當產(chǎn)品正式投產(chǎn)后,AI缺陷檢測功能會(huì )持續監控產(chǎn)線(xiàn),將有缺陷的產(chǎn)品轉移到指定地點(diǎn)進(jìn)行后續修復。
  機器學(xué)習的應用
  
  首先,我們需要給算法一個(gè)準確的樣本。項目工程師創(chuàng )建圖像處理框架,包括要檢查的關(guān)鍵區域。算法可以專(zhuān)注于某個(gè)區域中的對象,并識別任何看起來(lái)與樣本示例不同的對象。與任何習得的技能一樣,算法會(huì )隨著(zhù)時(shí)間的推移而改進(jìn),并且同一個(gè)算法可以發(fā)現多個(gè)缺陷。
  分享一個(gè)缺陷檢測和標注項目
  1 板材會(huì )出現裂紋/凹陷等缺陷,屬于肉眼可見(jiàn)的異常,需要識別和標記
  2 最小標簽對象:5*5像素
  3 需要對所有異常情況進(jìn)行分類(lèi)(17)標簽,包括生銹、輪紋、裂紋等。
  4 種標注類(lèi)別:多邊形、點(diǎn)、折線(xiàn)
  5畫(huà)面像素:6000*6000像素
  
  我們制定了系統審查和治理流程。所有數據在發(fā)貨前都需要經(jīng)過(guò)兩次全質(zhì)檢和一次抽檢。數據可以分批下發(fā)。
  ByteBridge是一個(gè)為人工智能企業(yè)提供數據處理服務(wù)的數據標注和采集平臺
  您專(zhuān)注于產(chǎn)品,我們專(zhuān)注于您的數據
  我們提供試投標和試采服務(wù),請聯(lián)系我們
  郵箱:support@bytebridge.io
  官網(wǎng)鏈接
  解決方案:批量獲取行業(yè)關(guān)鍵詞(批量獲取行程卡數據獲?。?br />   目錄:
  1. 關(guān)鍵詞批量采集工具
  關(guān)鍵詞挖掘是我們SEO的一項重要工作,我們離不開(kāi)關(guān)鍵詞挖掘,無(wú)論是媒體還是網(wǎng)站,每個(gè)行業(yè)都有自己的行業(yè)特定詞匯對于行業(yè)關(guān)鍵詞挖掘更多長(cháng)尾關(guān)鍵詞及相關(guān)詞是我們從眾多競爭對手中脫穎而出的保證。
  2.關(guān)鍵詞軟件自動(dòng)解壓
  如何挖掘行業(yè)關(guān)鍵詞,行業(yè)關(guān)鍵詞是否準確,關(guān)鍵詞的熱度指數直接影響到我們的流量效果,今天給大家分享挖掘行業(yè)關(guān)鍵詞的方法關(guān)鍵詞: 1、百度關(guān)鍵詞相關(guān)工具 1.百度搜索下拉框 2.百度搜索結果底部相關(guān)推薦
  3. 快速提取 關(guān)鍵詞
  3.百度指數 打開(kāi)百度指數,進(jìn)入主關(guān)鍵詞,可以看到相關(guān)的熱門(mén)關(guān)鍵詞 4.百度知道 百度知道是一個(gè)問(wèn)答平臺,是最好的挖掘途徑長(cháng)尾關(guān)鍵詞 同時(shí),百度知乎也體現了對目標流量和搜索方式的關(guān)注。
  4.關(guān)鍵詞批量查詢(xún)
  
  我們可以在前兩頁(yè)找到問(wèn)答題,采集
為網(wǎng)站長(cháng)尾關(guān)鍵詞
  5. 關(guān)鍵詞批量排名
  5、百度推廣助手 百度推廣助手擁有大量精準長(cháng)尾關(guān)鍵詞,并且有更詳細的統計標簽,如高轉化率或高潛力。我們在后臺打開(kāi)百度關(guān)鍵詞工具,然后輸入主關(guān)鍵詞,系統會(huì )自動(dòng)匹配相關(guān)詞,大家可以根據需要一一篩選!.
  6.關(guān)鍵詞自動(dòng)采集軟件
  第二,搜索引擎在不同的搜索引擎中搜索我們的核心關(guān)鍵詞,通過(guò)下拉框和相關(guān)推薦,我們可以梳理出很多競爭少的好的長(cháng)尾關(guān)鍵詞。
  7. 關(guān)鍵詞 爬蟲(chóng)是什么?
  3、輸入法輸入法具有智能聯(lián)想功能。當我們輸入自己的核心詞時(shí),我們可以看到排在前面的長(cháng)尾詞,也可以為我們提供很多有用的詞。我們也可以使用容易出現錯別字的輸入法 關(guān)鍵詞 因為輸入法獨特的識別和糾錯功能,我們可以正常顯示結果。
  
  8. 關(guān)鍵詞如何獲取大數據
  但是我們可以采集
這些容易出錯的關(guān)鍵詞,利用網(wǎng)友經(jīng)常搜索的錯別字關(guān)鍵詞,優(yōu)化長(cháng)尾詞,讓我們輕松排在首頁(yè)第四,通過(guò)確定長(cháng)尾詞反義詞關(guān)鍵詞用反義詞分析來(lái)分析這個(gè)長(cháng)尾巴關(guān)鍵詞!這個(gè)也很好理解,比如:SEO成功案例和SEO失敗案例的反義詞。
  9.自動(dòng)提取關(guān)鍵詞
  就加一個(gè)與之相關(guān)的關(guān)鍵詞,形成組合,形成長(cháng)尾關(guān)鍵詞
  10.提取關(guān)鍵詞軟件
  Verb(動(dòng)詞的縮寫(xiě))競爭對手網(wǎng)站分析 最后,我們還可以使用站長(cháng)工具來(lái)分析競爭對手網(wǎng)站。在詞庫欄中,我們可以找到那些有搜索索引的詞,展開(kāi)這些詞可以得到更多的關(guān)鍵詞!
  綜上所述,我們知道如何挖掘長(cháng)尾關(guān)鍵詞,然后我們就可以根據自己網(wǎng)站的情況選擇合適的長(cháng)尾關(guān)鍵詞,循序漸進(jìn)!業(yè)界的關(guān)鍵詞優(yōu)化不能急功近利,也不能單純?yōu)榱岁P(guān)鍵詞優(yōu)化而優(yōu)化,一定要以用戶(hù)體驗為中心。 查看全部

  解決方案:目標檢測數據標注項目分析-產(chǎn)品缺陷檢測
  什么是生產(chǎn)過(guò)程中的產(chǎn)品缺陷檢測?
  生產(chǎn)過(guò)程中的缺陷檢測是保證產(chǎn)品質(zhì)量的重要環(huán)節。通過(guò)及時(shí)發(fā)現故障或缺陷并采取適當的措施,我們可以降低與運營(yíng)和質(zhì)量相關(guān)的風(fēng)險。但是在一般的視覺(jué)系統中,每個(gè)缺陷都必須經(jīng)過(guò)檢查和預處理才能被檢測出來(lái),這可能會(huì )非常昂貴。
  在制造業(yè)中,使用攝像頭進(jìn)行缺陷檢測的解決方案數不勝數,但使用人工智能和圖像處理的方案遠勝于攝像頭。
  一種算法可以做很多事情:AI可以快速了解產(chǎn)品的外觀(guān)并實(shí)時(shí)獨立捕捉問(wèn)題,節省資金、返工,并防止消費者收到有缺陷的產(chǎn)品。
  人工智能如何用于缺陷檢測?
  圖像處理是將所有圖像數據采集
到云端數據庫中,通過(guò)幾十到上百種機器學(xué)習算法進(jìn)行評估,檢查缺陷,并提供糾正措施。評估結果可用于整個(gè)生產(chǎn)過(guò)程的風(fēng)險預測。產(chǎn)品投產(chǎn)時(shí)可規避潛在風(fēng)險。當產(chǎn)品正式投產(chǎn)后,AI缺陷檢測功能會(huì )持續監控產(chǎn)線(xiàn),將有缺陷的產(chǎn)品轉移到指定地點(diǎn)進(jìn)行后續修復。
  機器學(xué)習的應用
  
  首先,我們需要給算法一個(gè)準確的樣本。項目工程師創(chuàng )建圖像處理框架,包括要檢查的關(guān)鍵區域。算法可以專(zhuān)注于某個(gè)區域中的對象,并識別任何看起來(lái)與樣本示例不同的對象。與任何習得的技能一樣,算法會(huì )隨著(zhù)時(shí)間的推移而改進(jìn),并且同一個(gè)算法可以發(fā)現多個(gè)缺陷。
  分享一個(gè)缺陷檢測和標注項目
  1 板材會(huì )出現裂紋/凹陷等缺陷,屬于肉眼可見(jiàn)的異常,需要識別和標記
  2 最小標簽對象:5*5像素
  3 需要對所有異常情況進(jìn)行分類(lèi)(17)標簽,包括生銹、輪紋、裂紋等。
  4 種標注類(lèi)別:多邊形、點(diǎn)、折線(xiàn)
  5畫(huà)面像素:6000*6000像素
  
  我們制定了系統審查和治理流程。所有數據在發(fā)貨前都需要經(jīng)過(guò)兩次全質(zhì)檢和一次抽檢。數據可以分批下發(fā)。
  ByteBridge是一個(gè)為人工智能企業(yè)提供數據處理服務(wù)的數據標注和采集平臺
  您專(zhuān)注于產(chǎn)品,我們專(zhuān)注于您的數據
  我們提供試投標和試采服務(wù),請聯(lián)系我們
  郵箱:support@bytebridge.io
  官網(wǎng)鏈接
  解決方案:批量獲取行業(yè)關(guān)鍵詞(批量獲取行程卡數據獲?。?br />   目錄:
  1. 關(guān)鍵詞批量采集工具
  關(guān)鍵詞挖掘是我們SEO的一項重要工作,我們離不開(kāi)關(guān)鍵詞挖掘,無(wú)論是媒體還是網(wǎng)站,每個(gè)行業(yè)都有自己的行業(yè)特定詞匯對于行業(yè)關(guān)鍵詞挖掘更多長(cháng)尾關(guān)鍵詞及相關(guān)詞是我們從眾多競爭對手中脫穎而出的保證。
  2.關(guān)鍵詞軟件自動(dòng)解壓
  如何挖掘行業(yè)關(guān)鍵詞,行業(yè)關(guān)鍵詞是否準確,關(guān)鍵詞的熱度指數直接影響到我們的流量效果,今天給大家分享挖掘行業(yè)關(guān)鍵詞的方法關(guān)鍵詞: 1、百度關(guān)鍵詞相關(guān)工具 1.百度搜索下拉框 2.百度搜索結果底部相關(guān)推薦
  3. 快速提取 關(guān)鍵詞
  3.百度指數 打開(kāi)百度指數,進(jìn)入主關(guān)鍵詞,可以看到相關(guān)的熱門(mén)關(guān)鍵詞 4.百度知道 百度知道是一個(gè)問(wèn)答平臺,是最好的挖掘途徑長(cháng)尾關(guān)鍵詞 同時(shí),百度知乎也體現了對目標流量和搜索方式的關(guān)注。
  4.關(guān)鍵詞批量查詢(xún)
  
  我們可以在前兩頁(yè)找到問(wèn)答題,采集
為網(wǎng)站長(cháng)尾關(guān)鍵詞
  5. 關(guān)鍵詞批量排名
  5、百度推廣助手 百度推廣助手擁有大量精準長(cháng)尾關(guān)鍵詞,并且有更詳細的統計標簽,如高轉化率或高潛力。我們在后臺打開(kāi)百度關(guān)鍵詞工具,然后輸入主關(guān)鍵詞,系統會(huì )自動(dòng)匹配相關(guān)詞,大家可以根據需要一一篩選!.
  6.關(guān)鍵詞自動(dòng)采集軟件
  第二,搜索引擎在不同的搜索引擎中搜索我們的核心關(guān)鍵詞,通過(guò)下拉框和相關(guān)推薦,我們可以梳理出很多競爭少的好的長(cháng)尾關(guān)鍵詞。
  7. 關(guān)鍵詞 爬蟲(chóng)是什么?
  3、輸入法輸入法具有智能聯(lián)想功能。當我們輸入自己的核心詞時(shí),我們可以看到排在前面的長(cháng)尾詞,也可以為我們提供很多有用的詞。我們也可以使用容易出現錯別字的輸入法 關(guān)鍵詞 因為輸入法獨特的識別和糾錯功能,我們可以正常顯示結果。
  
  8. 關(guān)鍵詞如何獲取大數據
  但是我們可以采集
這些容易出錯的關(guān)鍵詞,利用網(wǎng)友經(jīng)常搜索的錯別字關(guān)鍵詞,優(yōu)化長(cháng)尾詞,讓我們輕松排在首頁(yè)第四,通過(guò)確定長(cháng)尾詞反義詞關(guān)鍵詞用反義詞分析來(lái)分析這個(gè)長(cháng)尾巴關(guān)鍵詞!這個(gè)也很好理解,比如:SEO成功案例和SEO失敗案例的反義詞。
  9.自動(dòng)提取關(guān)鍵詞
  就加一個(gè)與之相關(guān)的關(guān)鍵詞,形成組合,形成長(cháng)尾關(guān)鍵詞
  10.提取關(guān)鍵詞軟件
  Verb(動(dòng)詞的縮寫(xiě))競爭對手網(wǎng)站分析 最后,我們還可以使用站長(cháng)工具來(lái)分析競爭對手網(wǎng)站。在詞庫欄中,我們可以找到那些有搜索索引的詞,展開(kāi)這些詞可以得到更多的關(guān)鍵詞!
  綜上所述,我們知道如何挖掘長(cháng)尾關(guān)鍵詞,然后我們就可以根據自己網(wǎng)站的情況選擇合適的長(cháng)尾關(guān)鍵詞,循序漸進(jìn)!業(yè)界的關(guān)鍵詞優(yōu)化不能急功近利,也不能單純?yōu)榱岁P(guān)鍵詞優(yōu)化而優(yōu)化,一定要以用戶(hù)體驗為中心。

解決方案:小程序云開(kāi)發(fā)之--微信公眾號文章采集篇

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 115 次瀏覽 ? 2022-11-30 03:11 ? 來(lái)自相關(guān)話(huà)題

  解決方案:小程序云開(kāi)發(fā)之--微信公眾號文章采集篇
  小程序云開(kāi)發(fā)-微信公眾號文章合集
  相信很多小伙伴都想過(guò)自己制作小程序,但是苦于沒(méi)有服務(wù)器、備案域名、網(wǎng)站ssl證書(shū)等。作為前后端的微信小程序,有很多Spring全家桶等小程序。收到后臺返回的值后,需要在小程序中添加一個(gè)合法的域名(域名備案和https協(xié)議)
  直接去這里上課
  公眾號有專(zhuān)門(mén)的接口(也有專(zhuān)門(mén)的文檔),那么如何采集
小程序的文章供自己使用呢?
  第一步:獲取access_token
  從文檔中可以看出獲取這個(gè)access_token需要以下三個(gè)參數
  grant_type的值為client_credential,用于獲取access_token
  Appid和secret可以在公眾號中找到
  完成以上配置后,就可以采集
文章了。
  我們可以手動(dòng)訪(fǎng)問(wèn)獲取token或者postman等。
  有了token之后,采集
文章就很方便了。讓我們開(kāi)始操作
  從官方文檔中我們可以看到,提供的接口還是蠻多的。
  這里以草稿箱為例。圖文、視頻等其他素材的采集方法同上。
  我們已經(jīng)有了第一個(gè) token,接下來(lái)是 offset 和 count。最后一個(gè)參數是可選的。
  獲取文章數據
  拿到材料后打印結果
  意思是我的草稿箱里有三條數據,確實(shí)只有三條數據
  文章數據處理
  我們需要獲取我們需要的參數,并添加到數據庫中
  注意??這里有個(gè)問(wèn)題,如果文章已經(jīng)被采集
了,那我們就跳過(guò)。如果所有數據都存在,則打印的文章已經(jīng)存在
  最后將數據庫沒(méi)有的數據放入數據庫。
  以下是測試結果
  如果所有數據都存在
  博客小程序:萬(wàn)神資源棧
  輸入一些代碼:
  /**
* 獲取公眾號文章信息
* @param {*} accessToken
*/
async function getWechatPosts(accessToken, offset, count) {
let url = `https://api.weixin.qq.com/cgi- ... en%3D${accessToken}`
var options = {
method: &#39;POST&#39;,
json: true,
<p>
uri: url,
body: {
"type": "news",
"offset": offset,
"count": count
}
}
const result = await rp(options)
let rbody = (typeof result === &#39;object&#39;) ? result : JSON.parse(result);
return rbody;
}
/**
* 同步文章的小程序碼
*/
async function syncPostQrCode() {
let configData = await getConfigInfo("syncPostQrCode");
if (configData == null) {
console.info("未獲取相應的配置")
return;
}
console.info(configData)
let page = parseInt(configData.value.currentOffset);
let maxCount = parseInt(configData.value.maxSyncCount);
let isContinue = true;
while (isContinue) {
let posts = await db.collection(&#39;mini_posts&#39;)
.orderBy(&#39;timestamp&#39;, &#39;asc&#39;)
.skip(page * 10)
.limit(10)
.field({
_id: true,
qrCode: true,
timestamp: true
}).get()
console.info(posts)
if (posts.data.length == 0) {
isContinue = false;
break;
  
}
for (var index in posts.data) {
if (posts.data[index].qrCode != null) {
continue
}
let scene = &#39;timestamp=&#39; + posts.data[index].timestamp;
let result = await cloud.openapi.wxacode.getUnlimited({
scene: scene,
page: &#39;pages/detail/detail&#39;
})
if (result.errCode === 0) {
const upload = await cloud.uploadFile({
cloudPath: posts.data[index]._id + &#39;.png&#39;,
fileContent: result.buffer,
})
await db.collection("mini_posts").doc(posts.data[index]._id).update({
data: {
qrCode: upload.fileID
}
});
}
}
if ((page - parseInt(configData.value.currentOffset)) * 10 > maxCount) {
isContinue = false;
}
else {
page++
}
}
let data = { currentOffset: page - 1, maxSyncCount: 100 }
await db.collection("mini_config").doc(configData._id).update({
data: {
value: data
}
});
}
</p>
  分享:樂(lè )了!文章采集神軟件現在另有這么的認知形式!
  看到本文內容不要驚訝,因為本文由考拉SEO平臺批量編輯,僅用于SEO引流。使用Kaola SEO,輕輕松松一天產(chǎn)出幾萬(wàn)篇優(yōu)質(zhì)SEO文章!如果您還需要批量編輯SEO文章,可以進(jìn)入平臺用戶(hù)中心試用!
  非常抱歉,當您瀏覽當前網(wǎng)頁(yè)時(shí),您可能獲得的內容可能不包括文章采集軟件的相關(guān)內容,因為本文案為本平臺自動(dòng)撰寫(xiě)的網(wǎng)站文章。如果你對這款批量編輯軟件的資料感興趣,不妨先把文章收錄神軟件擱置一旁,讓小編帶你體驗一下如何使用該軟件一天寫(xiě)出10000個(gè)優(yōu)秀的搜索登陸頁(yè)吧!很多用戶(hù)來(lái)到小編的介紹都會(huì )覺(jué)得這是一個(gè)偽原創(chuàng )平臺,大錯特錯!本站本質(zhì)上是一個(gè)智能寫(xiě)作工具,文字和模板都是大家一起寫(xiě)的。在網(wǎng)上很難看到類(lèi)似生成文章的內容。這個(gè)平臺是如何設計的?下面小編就為大家仔細解讀一下!
  
  想要分析文章集大神軟件的小伙伴們,你們心中急切關(guān)心的就是上面討論的內容。其實(shí)寫(xiě)一篇可讀性強的SEO落地文章很簡(jiǎn)單,但是一篇SEO文案產(chǎn)生的流量幾乎是微乎其微。如果要通過(guò)新聞頁(yè)面的設計來(lái)達到流量的目的,最重要的一點(diǎn)就是量化!一篇網(wǎng)頁(yè)文章可以獲得1次訪(fǎng)問(wèn)(一天)。如果你能生產(chǎn)10000篇文章,每天的訪(fǎng)問(wèn)量可以增加幾千。但簡(jiǎn)單來(lái)說(shuō),真正的寫(xiě)作,一個(gè)人一天只能寫(xiě)40多篇,寫(xiě)累了也就60篇左右。如果用偽原創(chuàng )軟件,很多就只有一百篇!看完這篇文章,
  什么是百度認可的真人編輯?原創(chuàng )內容并不一定代表每段原創(chuàng )輸出!在各種搜索引擎的算法詞典中,原創(chuàng )并不意味著(zhù)沒(méi)有重復的段落。按道理來(lái)說(shuō),只要你的文章和其他網(wǎng)頁(yè)的內容不完全一樣,被收錄的可能性就會(huì )大大增加。一篇優(yōu)秀的文章,充滿(mǎn)吸睛度的關(guān)鍵詞,核心思想保持不變,只要保證不重復段落,就意味著(zhù)文章還是很有可能被抓取,甚至成為好文章排水用品。比如下一篇文章,我們大概通過(guò)神馬搜索文章采集
神器軟件,然后點(diǎn)擊瀏覽。實(shí)際上,
  
  這個(gè)系統的自動(dòng)寫(xiě)文章工具,準確的說(shuō)應該叫批量寫(xiě)文章系統,可以在24小時(shí)內產(chǎn)出數萬(wàn)篇高質(zhì)量的優(yōu)化文章。只要大家的頁(yè)面質(zhì)量足夠高,收錄率至少可以達到66%。具體的應用步驟,在用戶(hù)中心有視頻展示和新手引導,大家不妨稍微測試一下!很抱歉沒(méi)有給大家帶來(lái)文章集神軟件的詳細信息,可能導致大家看了這樣的廢話(huà)。但是如果我們喜歡智能寫(xiě)文章的工具,我們可以進(jìn)入菜單欄,讓我們的頁(yè)面每天增加幾百個(gè)UV,是不是很酷? 查看全部

  解決方案:小程序云開(kāi)發(fā)之--微信公眾號文章采集
  小程序云開(kāi)發(fā)-微信公眾號文章合集
  相信很多小伙伴都想過(guò)自己制作小程序,但是苦于沒(méi)有服務(wù)器、備案域名、網(wǎng)站ssl證書(shū)等。作為前后端的微信小程序,有很多Spring全家桶等小程序。收到后臺返回的值后,需要在小程序中添加一個(gè)合法的域名(域名備案和https協(xié)議)
  直接去這里上課
  公眾號有專(zhuān)門(mén)的接口(也有專(zhuān)門(mén)的文檔),那么如何采集
小程序的文章供自己使用呢?
  第一步:獲取access_token
  從文檔中可以看出獲取這個(gè)access_token需要以下三個(gè)參數
  grant_type的值為client_credential,用于獲取access_token
  Appid和secret可以在公眾號中找到
  完成以上配置后,就可以采集
文章了。
  我們可以手動(dòng)訪(fǎng)問(wèn)獲取token或者postman等。
  有了token之后,采集
文章就很方便了。讓我們開(kāi)始操作
  從官方文檔中我們可以看到,提供的接口還是蠻多的。
  這里以草稿箱為例。圖文、視頻等其他素材的采集方法同上。
  我們已經(jīng)有了第一個(gè) token,接下來(lái)是 offset 和 count。最后一個(gè)參數是可選的。
  獲取文章數據
  拿到材料后打印結果
  意思是我的草稿箱里有三條數據,確實(shí)只有三條數據
  文章數據處理
  我們需要獲取我們需要的參數,并添加到數據庫中
  注意??這里有個(gè)問(wèn)題,如果文章已經(jīng)被采集
了,那我們就跳過(guò)。如果所有數據都存在,則打印的文章已經(jīng)存在
  最后將數據庫沒(méi)有的數據放入數據庫。
  以下是測試結果
  如果所有數據都存在
  博客小程序:萬(wàn)神資源棧
  輸入一些代碼:
  /**
* 獲取公眾號文章信息
* @param {*} accessToken
*/
async function getWechatPosts(accessToken, offset, count) {
let url = `https://api.weixin.qq.com/cgi- ... en%3D${accessToken}`
var options = {
method: &#39;POST&#39;,
json: true,
<p>
uri: url,
body: {
"type": "news",
"offset": offset,
"count": count
}
}
const result = await rp(options)
let rbody = (typeof result === &#39;object&#39;) ? result : JSON.parse(result);
return rbody;
}
/**
* 同步文章的小程序碼
*/
async function syncPostQrCode() {
let configData = await getConfigInfo("syncPostQrCode");
if (configData == null) {
console.info("未獲取相應的配置")
return;
}
console.info(configData)
let page = parseInt(configData.value.currentOffset);
let maxCount = parseInt(configData.value.maxSyncCount);
let isContinue = true;
while (isContinue) {
let posts = await db.collection(&#39;mini_posts&#39;)
.orderBy(&#39;timestamp&#39;, &#39;asc&#39;)
.skip(page * 10)
.limit(10)
.field({
_id: true,
qrCode: true,
timestamp: true
}).get()
console.info(posts)
if (posts.data.length == 0) {
isContinue = false;
break;
  
}
for (var index in posts.data) {
if (posts.data[index].qrCode != null) {
continue
}
let scene = &#39;timestamp=&#39; + posts.data[index].timestamp;
let result = await cloud.openapi.wxacode.getUnlimited({
scene: scene,
page: &#39;pages/detail/detail&#39;
})
if (result.errCode === 0) {
const upload = await cloud.uploadFile({
cloudPath: posts.data[index]._id + &#39;.png&#39;,
fileContent: result.buffer,
})
await db.collection("mini_posts").doc(posts.data[index]._id).update({
data: {
qrCode: upload.fileID
}
});
}
}
if ((page - parseInt(configData.value.currentOffset)) * 10 > maxCount) {
isContinue = false;
}
else {
page++
}
}
let data = { currentOffset: page - 1, maxSyncCount: 100 }
await db.collection("mini_config").doc(configData._id).update({
data: {
value: data
}
});
}
</p>
  分享:樂(lè )了!文章采集神軟件現在另有這么的認知形式!
  看到本文內容不要驚訝,因為本文由考拉SEO平臺批量編輯,僅用于SEO引流。使用Kaola SEO,輕輕松松一天產(chǎn)出幾萬(wàn)篇優(yōu)質(zhì)SEO文章!如果您還需要批量編輯SEO文章,可以進(jìn)入平臺用戶(hù)中心試用!
  非常抱歉,當您瀏覽當前網(wǎng)頁(yè)時(shí),您可能獲得的內容可能不包括文章采集軟件的相關(guān)內容,因為本文案為本平臺自動(dòng)撰寫(xiě)的網(wǎng)站文章。如果你對這款批量編輯軟件的資料感興趣,不妨先把文章收錄神軟件擱置一旁,讓小編帶你體驗一下如何使用該軟件一天寫(xiě)出10000個(gè)優(yōu)秀的搜索登陸頁(yè)吧!很多用戶(hù)來(lái)到小編的介紹都會(huì )覺(jué)得這是一個(gè)偽原創(chuàng )平臺,大錯特錯!本站本質(zhì)上是一個(gè)智能寫(xiě)作工具,文字和模板都是大家一起寫(xiě)的。在網(wǎng)上很難看到類(lèi)似生成文章的內容。這個(gè)平臺是如何設計的?下面小編就為大家仔細解讀一下!
  
  想要分析文章集大神軟件的小伙伴們,你們心中急切關(guān)心的就是上面討論的內容。其實(shí)寫(xiě)一篇可讀性強的SEO落地文章很簡(jiǎn)單,但是一篇SEO文案產(chǎn)生的流量幾乎是微乎其微。如果要通過(guò)新聞頁(yè)面的設計來(lái)達到流量的目的,最重要的一點(diǎn)就是量化!一篇網(wǎng)頁(yè)文章可以獲得1次訪(fǎng)問(wèn)(一天)。如果你能生產(chǎn)10000篇文章,每天的訪(fǎng)問(wèn)量可以增加幾千。但簡(jiǎn)單來(lái)說(shuō),真正的寫(xiě)作,一個(gè)人一天只能寫(xiě)40多篇,寫(xiě)累了也就60篇左右。如果用偽原創(chuàng )軟件,很多就只有一百篇!看完這篇文章,
  什么是百度認可的真人編輯?原創(chuàng )內容并不一定代表每段原創(chuàng )輸出!在各種搜索引擎的算法詞典中,原創(chuàng )并不意味著(zhù)沒(méi)有重復的段落。按道理來(lái)說(shuō),只要你的文章和其他網(wǎng)頁(yè)的內容不完全一樣,被收錄的可能性就會(huì )大大增加。一篇優(yōu)秀的文章,充滿(mǎn)吸睛度的關(guān)鍵詞,核心思想保持不變,只要保證不重復段落,就意味著(zhù)文章還是很有可能被抓取,甚至成為好文章排水用品。比如下一篇文章,我們大概通過(guò)神馬搜索文章采集
神器軟件,然后點(diǎn)擊瀏覽。實(shí)際上,
  
  這個(gè)系統的自動(dòng)寫(xiě)文章工具,準確的說(shuō)應該叫批量寫(xiě)文章系統,可以在24小時(shí)內產(chǎn)出數萬(wàn)篇高質(zhì)量的優(yōu)化文章。只要大家的頁(yè)面質(zhì)量足夠高,收錄率至少可以達到66%。具體的應用步驟,在用戶(hù)中心有視頻展示和新手引導,大家不妨稍微測試一下!很抱歉沒(méi)有給大家帶來(lái)文章集神軟件的詳細信息,可能導致大家看了這樣的廢話(huà)。但是如果我們喜歡智能寫(xiě)文章的工具,我們可以進(jìn)入菜單欄,讓我們的頁(yè)面每天增加幾百個(gè)UV,是不是很酷?

解決方案:文章實(shí)時(shí)采集平臺的流程(組圖)互聯(lián)網(wǎng)+

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 103 次瀏覽 ? 2022-11-29 20:19 ? 來(lái)自相關(guān)話(huà)題

  解決方案:文章實(shí)時(shí)采集平臺的流程(組圖)互聯(lián)網(wǎng)+
  文章實(shí)時(shí)采集平臺是指在監管、社會(huì )保障等方面對農民收入、城鎮化進(jìn)程、結構調整、工業(yè)化等進(jìn)行管理、預測與經(jīng)驗分享的公共服務(wù)平臺,提供市場(chǎng)經(jīng)濟新的公共服務(wù)和信息資源。這類(lèi)平臺將傳統的在線(xiàn)信息交流擴展到以互聯(lián)網(wǎng)為基礎,向公眾開(kāi)放的新型交流模式。實(shí)時(shí)采集平臺的流程工業(yè)互聯(lián)網(wǎng)“三產(chǎn)融合”是指:“產(chǎn)業(yè)”指制造業(yè)和工業(yè)(即生產(chǎn)環(huán)節),“互聯(lián)網(wǎng)”指互聯(lián)網(wǎng)+、人工智能、大數據等,“工業(yè)互聯(lián)網(wǎng)”是指工業(yè)模式與工業(yè)應用相結合。
  
  農村電子商務(wù)試點(diǎn)城市,每?jì)赡陼?huì )有1家工業(yè)互聯(lián)網(wǎng)或者工業(yè)機器人相關(guān)企業(yè),到2018年有2家工業(yè)互聯(lián)網(wǎng)或者工業(yè)機器人相關(guān)企業(yè),是指這些企業(yè)首先從制造業(yè)電子商務(wù)和工業(yè)電子商務(wù)著(zhù)手,來(lái)引導市場(chǎng)對工業(yè)產(chǎn)品定價(jià)、品牌服務(wù)、價(jià)格策略、企業(yè)服務(wù)等的關(guān)注?!半娮由虅?wù)模式推進(jìn)轉型升級,創(chuàng )新消費形態(tài)發(fā)展”,是指當今時(shí)代,電子商務(wù)越來(lái)越多被認為是消費形態(tài)的轉變,是消費者或者商家成功與消費者、與市場(chǎng)、與企業(yè)溝通的一種有效渠道。
  據了解,目前,發(fā)達國家及發(fā)展中國家制造業(yè)工業(yè)轉型升級的各類(lèi)指標都進(jìn)入到最佳狀態(tài):工業(yè)增加值年均增長(cháng)率超過(guò)10%,有效投資、投資項目成績(jì)也不俗,多數企業(yè)實(shí)現收入增長(cháng),制造業(yè)企業(yè)實(shí)現貿易順差和外貿結構調整,制造業(yè)總體形勢好轉。如何促進(jìn)制造業(yè)工業(yè)轉型升級,實(shí)現新一輪增長(cháng)?工業(yè)互聯(lián)網(wǎng)或許可以幫助到這一切。實(shí)時(shí)采集平臺就是其中一個(gè)。
  
  如何為工業(yè)互聯(lián)網(wǎng)的各個(gè)環(huán)節提供服務(wù)?將應用場(chǎng)景劃分為產(chǎn)業(yè)供應鏈、產(chǎn)業(yè)全流程、產(chǎn)業(yè)生產(chǎn)過(guò)程三個(gè)層次,并推出相應的解決方案。產(chǎn)業(yè)供應鏈層次作為制造企業(yè)唯一能夠獲取信息的入口,通過(guò)實(shí)時(shí)采集平臺及其智能的運算模式,為制造企業(yè)提供產(chǎn)業(yè)鏈、鏈條中不同環(huán)節的數據實(shí)時(shí)采集,驅動(dòng)企業(yè)提升運營(yíng)水平和效率。產(chǎn)業(yè)全流程層次通過(guò)實(shí)時(shí)采集平臺的多路視頻,為制造企業(yè)提供制造全流程的物流、零售、服務(wù)、網(wǎng)絡(luò )、智能化等完整業(yè)務(wù)流程情況的數據實(shí)時(shí)采集。
  產(chǎn)業(yè)生產(chǎn)過(guò)程層次通過(guò)實(shí)時(shí)采集平臺提供的制造車(chē)間、生產(chǎn)線(xiàn)、廠(chǎng)區、制造設備等視頻,為制造企業(yè)提供實(shí)時(shí)庫存視頻、生產(chǎn)成本、生產(chǎn)、生產(chǎn)過(guò)程精準分析等實(shí)時(shí)信息。實(shí)時(shí)采集平臺聯(lián)合中國工程院院士張裕春教授等共同創(chuàng )辦,在平臺上首次嘗試實(shí)時(shí)采集探針技術(shù)。應用可以是簡(jiǎn)單在線(xiàn)觀(guān)看,也可以是單方面的導航。涉及的各方關(guān)系一般分為“系統”和“設備”。
  “系統”是不同環(huán)節實(shí)時(shí)采集的指標,被落地于自治機構、設備廠(chǎng)商、工程院等各個(gè)業(yè)務(wù)方,成為定制化應用,并被聯(lián)動(dòng)。后期可以成為流量入口,讓用戶(hù)在訂閱后實(shí)時(shí)采集以應對后續需求的變化?!霸O備”。 查看全部

  解決方案:文章實(shí)時(shí)采集平臺的流程(組圖)互聯(lián)網(wǎng)+
  文章實(shí)時(shí)采集平臺是指在監管、社會(huì )保障等方面對農民收入、城鎮化進(jìn)程、結構調整、工業(yè)化等進(jìn)行管理、預測與經(jīng)驗分享的公共服務(wù)平臺,提供市場(chǎng)經(jīng)濟新的公共服務(wù)和信息資源。這類(lèi)平臺將傳統的在線(xiàn)信息交流擴展到以互聯(lián)網(wǎng)為基礎,向公眾開(kāi)放的新型交流模式。實(shí)時(shí)采集平臺的流程工業(yè)互聯(lián)網(wǎng)“三產(chǎn)融合”是指:“產(chǎn)業(yè)”指制造業(yè)和工業(yè)(即生產(chǎn)環(huán)節),“互聯(lián)網(wǎng)”指互聯(lián)網(wǎng)+、人工智能、大數據等,“工業(yè)互聯(lián)網(wǎng)”是指工業(yè)模式與工業(yè)應用相結合。
  
  農村電子商務(wù)試點(diǎn)城市,每?jì)赡陼?huì )有1家工業(yè)互聯(lián)網(wǎng)或者工業(yè)機器人相關(guān)企業(yè),到2018年有2家工業(yè)互聯(lián)網(wǎng)或者工業(yè)機器人相關(guān)企業(yè),是指這些企業(yè)首先從制造業(yè)電子商務(wù)和工業(yè)電子商務(wù)著(zhù)手,來(lái)引導市場(chǎng)對工業(yè)產(chǎn)品定價(jià)、品牌服務(wù)、價(jià)格策略、企業(yè)服務(wù)等的關(guān)注?!半娮由虅?wù)模式推進(jìn)轉型升級,創(chuàng )新消費形態(tài)發(fā)展”,是指當今時(shí)代,電子商務(wù)越來(lái)越多被認為是消費形態(tài)的轉變,是消費者或者商家成功與消費者、與市場(chǎng)、與企業(yè)溝通的一種有效渠道。
  據了解,目前,發(fā)達國家及發(fā)展中國家制造業(yè)工業(yè)轉型升級的各類(lèi)指標都進(jìn)入到最佳狀態(tài):工業(yè)增加值年均增長(cháng)率超過(guò)10%,有效投資、投資項目成績(jì)也不俗,多數企業(yè)實(shí)現收入增長(cháng),制造業(yè)企業(yè)實(shí)現貿易順差和外貿結構調整,制造業(yè)總體形勢好轉。如何促進(jìn)制造業(yè)工業(yè)轉型升級,實(shí)現新一輪增長(cháng)?工業(yè)互聯(lián)網(wǎng)或許可以幫助到這一切。實(shí)時(shí)采集平臺就是其中一個(gè)。
  
  如何為工業(yè)互聯(lián)網(wǎng)的各個(gè)環(huán)節提供服務(wù)?將應用場(chǎng)景劃分為產(chǎn)業(yè)供應鏈、產(chǎn)業(yè)全流程、產(chǎn)業(yè)生產(chǎn)過(guò)程三個(gè)層次,并推出相應的解決方案。產(chǎn)業(yè)供應鏈層次作為制造企業(yè)唯一能夠獲取信息的入口,通過(guò)實(shí)時(shí)采集平臺及其智能的運算模式,為制造企業(yè)提供產(chǎn)業(yè)鏈、鏈條中不同環(huán)節的數據實(shí)時(shí)采集,驅動(dòng)企業(yè)提升運營(yíng)水平和效率。產(chǎn)業(yè)全流程層次通過(guò)實(shí)時(shí)采集平臺的多路視頻,為制造企業(yè)提供制造全流程的物流、零售、服務(wù)、網(wǎng)絡(luò )、智能化等完整業(yè)務(wù)流程情況的數據實(shí)時(shí)采集。
  產(chǎn)業(yè)生產(chǎn)過(guò)程層次通過(guò)實(shí)時(shí)采集平臺提供的制造車(chē)間、生產(chǎn)線(xiàn)、廠(chǎng)區、制造設備等視頻,為制造企業(yè)提供實(shí)時(shí)庫存視頻、生產(chǎn)成本、生產(chǎn)、生產(chǎn)過(guò)程精準分析等實(shí)時(shí)信息。實(shí)時(shí)采集平臺聯(lián)合中國工程院院士張裕春教授等共同創(chuàng )辦,在平臺上首次嘗試實(shí)時(shí)采集探針技術(shù)。應用可以是簡(jiǎn)單在線(xiàn)觀(guān)看,也可以是單方面的導航。涉及的各方關(guān)系一般分為“系統”和“設備”。
  “系統”是不同環(huán)節實(shí)時(shí)采集的指標,被落地于自治機構、設備廠(chǎng)商、工程院等各個(gè)業(yè)務(wù)方,成為定制化應用,并被聯(lián)動(dòng)。后期可以成為流量入口,讓用戶(hù)在訂閱后實(shí)時(shí)采集以應對后續需求的變化?!霸O備”。

解決方案:大數據實(shí)時(shí)計算及可視化相關(guān)組件介紹

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 105 次瀏覽 ? 2022-11-29 16:29 ? 來(lái)自相關(guān)話(huà)題

  解決方案:大數據實(shí)時(shí)計算及可視化相關(guān)組件介紹
  大數據實(shí)時(shí)計算與可視化相關(guān)組件介紹
  文章目錄
  一、實(shí)時(shí)數據平臺架構
  【外鏈圖片傳輸失敗,源站可能有防盜鏈機制,建議保存圖片直接上傳(img-KHp2HTV8-30)(實(shí)時(shí)數據采集分析可視化.assets/real -時(shí)間數據平臺架構.png)]
  大數據實(shí)時(shí)計算平臺的支撐技術(shù)主要包括七個(gè)方面:
  實(shí)時(shí)計算的典型特征:
  2 實(shí)時(shí)采集日志數據
  任何一個(gè)完整的大數據平臺一般都包括以下流程:
  其中,數據采集作為大數據系統體系的第一環(huán)節尤為重要。隨著(zhù)大數據越來(lái)越受到重視,如何有效、正確地采集
數據才能最大程度避免信息孤島,讓數據產(chǎn)生更多價(jià)值,這使得數據采集
面臨的挑戰尤為突出,包括:
  下面為大家介紹目前可用的六款數據采集產(chǎn)品,深入了解
  2.1 Apache Flume原理介紹
  Apache Flume 是一個(gè)開(kāi)源日志系統。作為一個(gè)分布式、可靠、高可用的海量日志聚合系統,不僅支持在系統中自定義各種數據發(fā)送方進(jìn)行數據采集
;同時(shí)也提供簡(jiǎn)單的數據處理和寫(xiě)入各種數據的Receiver(可定制)能力。Flume支持將集群外的日志文件采集歸檔到HDFS、HBase、Kafka中,供上層應用分析、清洗數據,如下圖所示:
  下面介紹一下Flume的核心概念
  2.1.1 代理結構
  Flume 的數據流是由事件貫穿的。Event是Flume的基本數據單元,承載日志數據(字節數組形式),承載頭信息。Flume運行的核心是agent,Flume以agent作為最小的獨立運行單元。它是一個(gè)完整的數據采集工具,收錄
三個(gè)組件,即source、channel和sink。這些事件由代理外部的源生成。事件可以通過(guò)這些組件從一個(gè)地方流向另一個(gè)地方。
  當Source捕獲到事件后,會(huì )執行特定的格式,然后Source將事件推送到(單個(gè)或多個(gè))Channel中。Channel 可以被認為是一個(gè)緩沖區,它將保存事件,直到 Sink 完成對事件的處理。Sink 負責持久化日志或將事件推送到另一個(gè) Source。Flume 事件被定義為一個(gè)數據流單元。Flume agent實(shí)際上是一個(gè)JVM進(jìn)程,收錄
了完成任務(wù)所需的各種組件,其中最核心的三個(gè)組件是Source、Chanel和Slink。
  2.1.2 基本概念(Source、Channel、Sink)
  Source負責通過(guò)一種特殊的機制接收事件或產(chǎn)生事件,并將事件批處理到一個(gè)或多個(gè)Channel中(Source必須關(guān)聯(lián)至少一個(gè)channel)。有兩種類(lèi)型的源:驅動(dòng)和輪詢(xún):
  來(lái)源類(lèi)型:
  【外鏈圖片傳輸失敗,源站可能有防盜鏈機制,建議保存圖片直接上傳(img-GavJl6Ic-46)(實(shí)時(shí)數據采集分析可視化.assets/Source類(lèi)型.png)]
  Channel 位于 Source 和 Sink 之間。Channel 就像一個(gè)隊列,用于臨時(shí)緩存傳入的事件。當 Sink 成功將事件發(fā)送到下一跳通道或最終目的地時(shí),事件將從通道中刪除。
  不同的通道提供不同級別的持久性:
  Channels 支持事物,提供較弱的順序保證,并且可以連接任意數量的 Sources 和 Sinks。
  2.1.3 Flume 的主要特點(diǎn)
  2.2 流利的
  Fluentd 在各個(gè)方面都與 Flume 非常相似。不同的是它是用Ruby開(kāi)發(fā)的,占用空間會(huì )更小。但是也帶來(lái)了跨平臺的問(wèn)題,無(wú)法支持Windows平臺。此外,使用JSON統一數據/日志格式是它的另一個(gè)特點(diǎn)。與Flume相比,它的配置相對簡(jiǎn)單。
  2.3 日志存儲
  Logstash 是一個(gè)應用日志和事件的傳輸、處理、管理和搜索的平臺??捎糜诮y一采集
和管理應用日志,并提供Web接口進(jìn)行查詢(xún)和統計。就是著(zhù)名的開(kāi)源數據棧ELK(ElasticSearch、Logstash、Kibana)中的L。幾乎在大多數情況下,ELK同時(shí)被用作堆棧。只有當數據系統使用ElasticSearch時(shí),首選logstash即可。
  2.4 楚夸語(yǔ)
  Apache Chukwa是apache下的另一個(gè)開(kāi)源數據采集平臺。上次 github 更新是 7 年前,項目應該已經(jīng)不活躍了。
  2.5 抄寫(xiě)員
  
  Scribe 是 Facebook 開(kāi)發(fā)的數據(日志)采集
系統。它可以從各種日志源采集
日志,并存儲在一個(gè)中央存儲系統(可以是NFS、分布式文件系統等)中進(jìn)行集中統計分析和處理。但是多年來(lái)一直沒(méi)有得到維護。
  2.6 對比分析
  Flume 和 Fluentd 是兩個(gè)廣泛使用的產(chǎn)品。如果使用 ElasticSearch,Logstash 可能是首選,因為 ELK stack 提供了很好的集成。由于項目不活躍,不推薦使用 Chukwa 和 Scribe。
  3 消息隊列
  沒(méi)有最好的消息隊列中間件(簡(jiǎn)稱(chēng)消息中間件),只有最合適的消息中間件。
  消息隊列的常見(jiàn)使用場(chǎng)景:
  幾種常用消息隊列的比較
  比較有代表性的是kafka和rabbitMQ。下面分別介紹兩者:
  3.1 Kafka原理介紹
  Kafka 是 LinkedIn 開(kāi)發(fā)的高吞吐量分布式消息系統,用 Scala 編寫(xiě)。它是一個(gè)高吞吐量、分布式、基于發(fā)布-訂閱的消息系統,同時(shí)支持離線(xiàn)和在線(xiàn)日志處理。使用Kafka技術(shù),可以在廉價(jià)的PC Server上搭建一個(gè)大規模的消息系統。目前,越來(lái)越多的開(kāi)源分布式處理系統如Cloudera、Apache Storm、Spark、Flink等都支持與Kafka的集成。
  在Kafka中,根據保存消息時(shí)的主題,消息的發(fā)布者被描述為生產(chǎn)者,消息的訂閱者被描述為消費者,中間的存儲數組被稱(chēng)為代理(agent)。這三者都通過(guò) Zookeeper 進(jìn)行協(xié)調。
  3.1.1 Kafka架構及功能
  【外鏈圖片傳輸失敗,源站可能有防盜鏈接機制,建議保存圖片直接上傳(img-S3969YXk-76)(C:\Users\lee\Desktop\Real-time數據采集??、分析與可視化\Kafka圖片\Kafka架構.png)】
  基本概念:
  3.1.2 Kafka的特點(diǎn) 3.1.3 Kafka的應用場(chǎng)景
  Kafka與其他組件相比,具有消息持久化、高吞吐、分布式、多客戶(hù)端支持、實(shí)時(shí)性等特點(diǎn),適用于離線(xiàn)和在線(xiàn)消息消費,如定時(shí)消息采集、網(wǎng)站活動(dòng)跟蹤、大數據量的互聯(lián)網(wǎng)業(yè)務(wù)的聚合統計系統運行數據(監控數據)、日志采集等數據采集場(chǎng)景。具體應用場(chǎng)景如下:
  日志采集
:一個(gè)公司可以使用Kafka采集
各種服務(wù)的日志,通過(guò)Kafka作為一個(gè)統一的接口服務(wù)開(kāi)放給各種消費者,比如Hadoop、Hbase、Solr等;消息系統:與生產(chǎn)者和消費者、Cache消息等解耦;用戶(hù)活動(dòng)跟蹤:Kafka常用于記錄web用戶(hù)或app用戶(hù)的各種活動(dòng),如瀏覽網(wǎng)??頁(yè)、搜索、點(diǎn)擊等活動(dòng)??梢酝ㄟ^(guò)訂閱這些主題進(jìn)行實(shí)時(shí)監控和分析,也可以加載到Hadoop或數據倉庫中進(jìn)行離線(xiàn)分析和挖掘;運營(yíng)指標:Kafka也經(jīng)常被用來(lái)記錄運營(yíng)監控數據。包括采集各種分布式應用的數據,產(chǎn)生各種操作的集中反饋,如告警、報表等;流處理:比如 Spark Streaming 和 Storm;事件源;
  3.2 rabbitMQ原理介紹
  Erlang語(yǔ)言實(shí)現的AMQP協(xié)議的消息中間件,最初起源于金融系統,用于分布式系統中消息的存儲和轉發(fā)。RabbitMQ發(fā)展到今天并被越來(lái)越多的人所認可,這與它在可靠性、可用性、可擴展性和豐富功能等方面的出色表現是分不開(kāi)的。
  優(yōu)勢:
  缺點(diǎn):
  3.3 對比分析
  應用:
  在架構模型方面:
  吞吐量:
  在可用性方面:
  在集群負載均衡方面:
  總結
  Kafka目前已經(jīng)成為大數據系統異步消息和分布式消息之間的最佳選擇。
  4 純/準實(shí)時(shí)計算 4.1 Spark原理介紹
  
  Spark 最初由加州大學(xué)伯克利分校 (UCBerkeley) 的 AMP 實(shí)驗室于 2009 年開(kāi)發(fā)。Spark 是一種基于內存的分布式批處理引擎,可用于構建大規模、低延遲的數據分析應用程序。Spark是集批處理、實(shí)時(shí)流計算、交互式查詢(xún)、圖計算、機器學(xué)習于一體的一站式解決方案。其架構圖如下圖所示:
  Spark SQL:Spark 中用于結構化數據處理的模塊。
  Structured Streaming:基于 Spark SQL 引擎構建的流式數據處理引擎。
  Spark Streaming:實(shí)時(shí)計算框架。
  Mlib:是機器學(xué)習的框架
  GraphX:圖計算
  Spark R:R語(yǔ)言解析
  4.1.1 星火特點(diǎn):
  Spark具有以下主要特點(diǎn):
  4.1.2 Spark適用場(chǎng)景: 4.1.3 Spark Streaming簡(jiǎn)介:
  Spark Streaming 是 Spark 核心 API 的擴展,是一種實(shí)時(shí)計算框架。特定于可擴展性、高吞吐量、容錯等。
  Spark Streaming 計算基于 DStream,它將流式計算分解為一系列短的批處理作業(yè)。Spark 引擎從數據中生成最終的結果數據。使用 DStream 從 Kafka 和 HDFS 等源獲取連續的數據流。DStream 由一系列連續的 RDD 組成。每個(gè) RDD 收錄
特定時(shí)間間隔的數據。對 DStreams 的任何操作都會(huì )轉換為對 RDD 的操作。
  4.2 Flink 原理介紹
  Flink是一個(gè)分布式、高性能、高可用、高精度的數據流應用開(kāi)源流處理框架。Flink 的核心是提供對數據流的數據分發(fā)、通信和容錯分布式計算。同時(shí),Flink 在流處理引擎上提供批流融合計算能力和 SQL 表達式能力。
  4.2.1 Flink 特性 4.2.2 Flink 主要特性 4.2.3 Hadoop 兼容性 4.2.4 Flink 應用場(chǎng)景
  Flink最適合的應用場(chǎng)景是低延遲的數據處理場(chǎng)景:高并發(fā)數據處理、毫秒級實(shí)驗、可靠性。
  典型的應用場(chǎng)景包括:
  4.3 對比分析 5 可視化展示(插件介紹) 5.1 Echarts
  ECharts 是一個(gè)用 JavaScript 實(shí)現的開(kāi)源可視化庫。
  特征
  5.2 數據V
  DataV是阿里云出品的拖拽式可視化工具。
  特征:
  例子
  5.3 D3.js
  D3的全稱(chēng)是(Data-Driven Documents),是一個(gè)JavaScript函數庫,主要用于數據可視化。
  特征
  5.4 螞蟻V
  AntV是螞蟻金服-體驗技術(shù)部-數據圖形組的開(kāi)源項目,原名G2(The Grammar Of Graphics)
  特征
  5.5 6例對比分析
  待升級
  解決方案:哪個(gè)SPC軟件好用?SPC數據采集軟件?自動(dòng)生成圖表的SPC采集軟件
  市面上很多采集軟件只能采集EXCEL中的數據,需要手動(dòng)操作。ROZRZ基于云端的智能自動(dòng)采集系統,無(wú)需人工干預。測量完成后自動(dòng)保存數據庫,自動(dòng)生成SPC圖表,自動(dòng)導出EXCEL。哪個(gè)SPC軟件好用?SPC數據采集軟件?自動(dòng)生成圖表的SPC采集軟件
  SPC的主要內容是XR控制圖。根據圖表中的數值,生成對應的X控制圖和R控制圖,方便查看。同樣,還有 X-MR 控制圖和 P 控制圖。
  例:P控制圖界面風(fēng)格:
  數據采集??的內容主要是設置相應的接口信息、采集項、內容,實(shí)現數據采集的功能。主要包括設備通訊設置、數據采集變量設置、數據采集界面對比、工藝設備采集參數、數據采集與執行五個(gè)頁(yè)面。
  設備通訊設置主要是設置串口信息,包括串口選擇、波特率、計算機名等信息。數據采集??變量設置和接口比對,就是確定接口的變量字段,存儲到對應的表中,完成數據采集操作。工藝設備采集參數用于確定采集哪些工藝和設備,執行二次數據采集是設置采集的內容。
  示例:工藝設備采集參數樣式圖:
  1.確定關(guān)鍵流程
  
  一個(gè)產(chǎn)品質(zhì)量的形成需要經(jīng)過(guò)很多道工序(工序),其中有些工序對產(chǎn)品的質(zhì)量起著(zhù)至關(guān)重要的作用。這樣的過(guò)程稱(chēng)為關(guān)鍵過(guò)程。SPC控制圖應首先用于關(guān)鍵過(guò)程,而不是所有過(guò)程。因此,要實(shí)施SPC,首先要確定關(guān)鍵工序。然后,對關(guān)鍵流程進(jìn)行分析研究,識別流程的結構(輸入、輸出、資源、活動(dòng)等)。
  2.確定過(guò)程的關(guān)鍵變量(特征)
  分析關(guān)鍵過(guò)程(因果圖、排列圖等)可以找出對產(chǎn)品質(zhì)量影響最大的變量(特征)。
  3、制定過(guò)程控制計劃和規范
  這一步往往是最困難和最耗時(shí)的,一些實(shí)驗方法可以參考相關(guān)標準。
  4.采集
整理過(guò)程數據
  5、過(guò)程控制狀態(tài)初步分析
  使用控制圖進(jìn)行分析,分析過(guò)程是否受控和穩定。如發(fā)現失控或有特殊原因變化時(shí),應采取措施。
  注意:此時(shí),過(guò)程的分布中心(X)和均值差σ,以及控制圖邊界可能是未知的。
  
  6.過(guò)程能力分析
  只有當過(guò)程受控且穩定時(shí),才需要分析過(guò)程能力。當發(fā)現過(guò)程能力不足時(shí),應采取措施。
  7、SPC控制圖監控
  只有過(guò)程受控穩定,過(guò)程能力足夠,才能采用監控用的控制圖,進(jìn)入SPC實(shí)施階段。
  8. 監控、診斷、改進(jìn)
  在監測過(guò)程中,發(fā)現異常時(shí),應及時(shí)分析原因,采取措施使過(guò)程恢復正常。對于受控和穩定的過(guò)程,還需要持續改進(jìn)以減少變異的常見(jiàn)原因、提高質(zhì)量和降低成本。
  產(chǎn)品質(zhì)量的形成需要很多工序(工序),其中有些工序對產(chǎn)品質(zhì)量起著(zhù)至關(guān)重要的作用,這樣的工序稱(chēng)為關(guān)鍵工序,對關(guān)鍵工序應優(yōu)先使用SPC控制圖,而不是對所有工序都使用SPC控制圖??刂茍D是一種測量、記錄、評價(jià)和監控生產(chǎn)過(guò)程的關(guān)鍵質(zhì)量特征值以及過(guò)程是否受控的圖形化方法。根據假設檢驗的原理構建圖表,以監控生產(chǎn)過(guò)程是否受控。它是統計質(zhì)量管理的重要手段和工具。 查看全部

  解決方案:大數據實(shí)時(shí)計算及可視化相關(guān)組件介紹
  大數據實(shí)時(shí)計算與可視化相關(guān)組件介紹
  文章目錄
  一、實(shí)時(shí)數據平臺架構
  【外鏈圖片傳輸失敗,源站可能有防盜鏈機制,建議保存圖片直接上傳(img-KHp2HTV8-30)(實(shí)時(shí)數據采集分析可視化.assets/real -時(shí)間數據平臺架構.png)]
  大數據實(shí)時(shí)計算平臺的支撐技術(shù)主要包括七個(gè)方面:
  實(shí)時(shí)計算的典型特征:
  2 實(shí)時(shí)采集日志數據
  任何一個(gè)完整的大數據平臺一般都包括以下流程:
  其中,數據采集作為大數據系統體系的第一環(huán)節尤為重要。隨著(zhù)大數據越來(lái)越受到重視,如何有效、正確地采集
數據才能最大程度避免信息孤島,讓數據產(chǎn)生更多價(jià)值,這使得數據采集
面臨的挑戰尤為突出,包括:
  下面為大家介紹目前可用的六款數據采集產(chǎn)品,深入了解
  2.1 Apache Flume原理介紹
  Apache Flume 是一個(gè)開(kāi)源日志系統。作為一個(gè)分布式、可靠、高可用的海量日志聚合系統,不僅支持在系統中自定義各種數據發(fā)送方進(jìn)行數據采集
;同時(shí)也提供簡(jiǎn)單的數據處理和寫(xiě)入各種數據的Receiver(可定制)能力。Flume支持將集群外的日志文件采集歸檔到HDFS、HBase、Kafka中,供上層應用分析、清洗數據,如下圖所示:
  下面介紹一下Flume的核心概念
  2.1.1 代理結構
  Flume 的數據流是由事件貫穿的。Event是Flume的基本數據單元,承載日志數據(字節數組形式),承載頭信息。Flume運行的核心是agent,Flume以agent作為最小的獨立運行單元。它是一個(gè)完整的數據采集工具,收錄
三個(gè)組件,即source、channel和sink。這些事件由代理外部的源生成。事件可以通過(guò)這些組件從一個(gè)地方流向另一個(gè)地方。
  當Source捕獲到事件后,會(huì )執行特定的格式,然后Source將事件推送到(單個(gè)或多個(gè))Channel中。Channel 可以被認為是一個(gè)緩沖區,它將保存事件,直到 Sink 完成對事件的處理。Sink 負責持久化日志或將事件推送到另一個(gè) Source。Flume 事件被定義為一個(gè)數據流單元。Flume agent實(shí)際上是一個(gè)JVM進(jìn)程,收錄
了完成任務(wù)所需的各種組件,其中最核心的三個(gè)組件是Source、Chanel和Slink。
  2.1.2 基本概念(Source、Channel、Sink)
  Source負責通過(guò)一種特殊的機制接收事件或產(chǎn)生事件,并將事件批處理到一個(gè)或多個(gè)Channel中(Source必須關(guān)聯(lián)至少一個(gè)channel)。有兩種類(lèi)型的源:驅動(dòng)和輪詢(xún):
  來(lái)源類(lèi)型:
  【外鏈圖片傳輸失敗,源站可能有防盜鏈機制,建議保存圖片直接上傳(img-GavJl6Ic-46)(實(shí)時(shí)數據采集分析可視化.assets/Source類(lèi)型.png)]
  Channel 位于 Source 和 Sink 之間。Channel 就像一個(gè)隊列,用于臨時(shí)緩存傳入的事件。當 Sink 成功將事件發(fā)送到下一跳通道或最終目的地時(shí),事件將從通道中刪除。
  不同的通道提供不同級別的持久性:
  Channels 支持事物,提供較弱的順序保證,并且可以連接任意數量的 Sources 和 Sinks。
  2.1.3 Flume 的主要特點(diǎn)
  2.2 流利的
  Fluentd 在各個(gè)方面都與 Flume 非常相似。不同的是它是用Ruby開(kāi)發(fā)的,占用空間會(huì )更小。但是也帶來(lái)了跨平臺的問(wèn)題,無(wú)法支持Windows平臺。此外,使用JSON統一數據/日志格式是它的另一個(gè)特點(diǎn)。與Flume相比,它的配置相對簡(jiǎn)單。
  2.3 日志存儲
  Logstash 是一個(gè)應用日志和事件的傳輸、處理、管理和搜索的平臺??捎糜诮y一采集
和管理應用日志,并提供Web接口進(jìn)行查詢(xún)和統計。就是著(zhù)名的開(kāi)源數據棧ELK(ElasticSearch、Logstash、Kibana)中的L。幾乎在大多數情況下,ELK同時(shí)被用作堆棧。只有當數據系統使用ElasticSearch時(shí),首選logstash即可。
  2.4 楚夸語(yǔ)
  Apache Chukwa是apache下的另一個(gè)開(kāi)源數據采集平臺。上次 github 更新是 7 年前,項目應該已經(jīng)不活躍了。
  2.5 抄寫(xiě)員
  
  Scribe 是 Facebook 開(kāi)發(fā)的數據(日志)采集
系統。它可以從各種日志源采集
日志,并存儲在一個(gè)中央存儲系統(可以是NFS、分布式文件系統等)中進(jìn)行集中統計分析和處理。但是多年來(lái)一直沒(méi)有得到維護。
  2.6 對比分析
  Flume 和 Fluentd 是兩個(gè)廣泛使用的產(chǎn)品。如果使用 ElasticSearch,Logstash 可能是首選,因為 ELK stack 提供了很好的集成。由于項目不活躍,不推薦使用 Chukwa 和 Scribe。
  3 消息隊列
  沒(méi)有最好的消息隊列中間件(簡(jiǎn)稱(chēng)消息中間件),只有最合適的消息中間件。
  消息隊列的常見(jiàn)使用場(chǎng)景:
  幾種常用消息隊列的比較
  比較有代表性的是kafka和rabbitMQ。下面分別介紹兩者:
  3.1 Kafka原理介紹
  Kafka 是 LinkedIn 開(kāi)發(fā)的高吞吐量分布式消息系統,用 Scala 編寫(xiě)。它是一個(gè)高吞吐量、分布式、基于發(fā)布-訂閱的消息系統,同時(shí)支持離線(xiàn)和在線(xiàn)日志處理。使用Kafka技術(shù),可以在廉價(jià)的PC Server上搭建一個(gè)大規模的消息系統。目前,越來(lái)越多的開(kāi)源分布式處理系統如Cloudera、Apache Storm、Spark、Flink等都支持與Kafka的集成。
  在Kafka中,根據保存消息時(shí)的主題,消息的發(fā)布者被描述為生產(chǎn)者,消息的訂閱者被描述為消費者,中間的存儲數組被稱(chēng)為代理(agent)。這三者都通過(guò) Zookeeper 進(jìn)行協(xié)調。
  3.1.1 Kafka架構及功能
  【外鏈圖片傳輸失敗,源站可能有防盜鏈接機制,建議保存圖片直接上傳(img-S3969YXk-76)(C:\Users\lee\Desktop\Real-time數據采集??、分析與可視化\Kafka圖片\Kafka架構.png)】
  基本概念:
  3.1.2 Kafka的特點(diǎn) 3.1.3 Kafka的應用場(chǎng)景
  Kafka與其他組件相比,具有消息持久化、高吞吐、分布式、多客戶(hù)端支持、實(shí)時(shí)性等特點(diǎn),適用于離線(xiàn)和在線(xiàn)消息消費,如定時(shí)消息采集、網(wǎng)站活動(dòng)跟蹤、大數據量的互聯(lián)網(wǎng)業(yè)務(wù)的聚合統計系統運行數據(監控數據)、日志采集等數據采集場(chǎng)景。具體應用場(chǎng)景如下:
  日志采集
:一個(gè)公司可以使用Kafka采集
各種服務(wù)的日志,通過(guò)Kafka作為一個(gè)統一的接口服務(wù)開(kāi)放給各種消費者,比如Hadoop、Hbase、Solr等;消息系統:與生產(chǎn)者和消費者、Cache消息等解耦;用戶(hù)活動(dòng)跟蹤:Kafka常用于記錄web用戶(hù)或app用戶(hù)的各種活動(dòng),如瀏覽網(wǎng)??頁(yè)、搜索、點(diǎn)擊等活動(dòng)??梢酝ㄟ^(guò)訂閱這些主題進(jìn)行實(shí)時(shí)監控和分析,也可以加載到Hadoop或數據倉庫中進(jìn)行離線(xiàn)分析和挖掘;運營(yíng)指標:Kafka也經(jīng)常被用來(lái)記錄運營(yíng)監控數據。包括采集各種分布式應用的數據,產(chǎn)生各種操作的集中反饋,如告警、報表等;流處理:比如 Spark Streaming 和 Storm;事件源;
  3.2 rabbitMQ原理介紹
  Erlang語(yǔ)言實(shí)現的AMQP協(xié)議的消息中間件,最初起源于金融系統,用于分布式系統中消息的存儲和轉發(fā)。RabbitMQ發(fā)展到今天并被越來(lái)越多的人所認可,這與它在可靠性、可用性、可擴展性和豐富功能等方面的出色表現是分不開(kāi)的。
  優(yōu)勢:
  缺點(diǎn):
  3.3 對比分析
  應用:
  在架構模型方面:
  吞吐量:
  在可用性方面:
  在集群負載均衡方面:
  總結
  Kafka目前已經(jīng)成為大數據系統異步消息和分布式消息之間的最佳選擇。
  4 純/準實(shí)時(shí)計算 4.1 Spark原理介紹
  
  Spark 最初由加州大學(xué)伯克利分校 (UCBerkeley) 的 AMP 實(shí)驗室于 2009 年開(kāi)發(fā)。Spark 是一種基于內存的分布式批處理引擎,可用于構建大規模、低延遲的數據分析應用程序。Spark是集批處理、實(shí)時(shí)流計算、交互式查詢(xún)、圖計算、機器學(xué)習于一體的一站式解決方案。其架構圖如下圖所示:
  Spark SQL:Spark 中用于結構化數據處理的模塊。
  Structured Streaming:基于 Spark SQL 引擎構建的流式數據處理引擎。
  Spark Streaming:實(shí)時(shí)計算框架。
  Mlib:是機器學(xué)習的框架
  GraphX:圖計算
  Spark R:R語(yǔ)言解析
  4.1.1 星火特點(diǎn):
  Spark具有以下主要特點(diǎn):
  4.1.2 Spark適用場(chǎng)景: 4.1.3 Spark Streaming簡(jiǎn)介:
  Spark Streaming 是 Spark 核心 API 的擴展,是一種實(shí)時(shí)計算框架。特定于可擴展性、高吞吐量、容錯等。
  Spark Streaming 計算基于 DStream,它將流式計算分解為一系列短的批處理作業(yè)。Spark 引擎從數據中生成最終的結果數據。使用 DStream 從 Kafka 和 HDFS 等源獲取連續的數據流。DStream 由一系列連續的 RDD 組成。每個(gè) RDD 收錄
特定時(shí)間間隔的數據。對 DStreams 的任何操作都會(huì )轉換為對 RDD 的操作。
  4.2 Flink 原理介紹
  Flink是一個(gè)分布式、高性能、高可用、高精度的數據流應用開(kāi)源流處理框架。Flink 的核心是提供對數據流的數據分發(fā)、通信和容錯分布式計算。同時(shí),Flink 在流處理引擎上提供批流融合計算能力和 SQL 表達式能力。
  4.2.1 Flink 特性 4.2.2 Flink 主要特性 4.2.3 Hadoop 兼容性 4.2.4 Flink 應用場(chǎng)景
  Flink最適合的應用場(chǎng)景是低延遲的數據處理場(chǎng)景:高并發(fā)數據處理、毫秒級實(shí)驗、可靠性。
  典型的應用場(chǎng)景包括:
  4.3 對比分析 5 可視化展示(插件介紹) 5.1 Echarts
  ECharts 是一個(gè)用 JavaScript 實(shí)現的開(kāi)源可視化庫。
  特征
  5.2 數據V
  DataV是阿里云出品的拖拽式可視化工具。
  特征:
  例子
  5.3 D3.js
  D3的全稱(chēng)是(Data-Driven Documents),是一個(gè)JavaScript函數庫,主要用于數據可視化。
  特征
  5.4 螞蟻V
  AntV是螞蟻金服-體驗技術(shù)部-數據圖形組的開(kāi)源項目,原名G2(The Grammar Of Graphics)
  特征
  5.5 6例對比分析
  待升級
  解決方案:哪個(gè)SPC軟件好用?SPC數據采集軟件?自動(dòng)生成圖表的SPC采集軟件
  市面上很多采集軟件只能采集EXCEL中的數據,需要手動(dòng)操作。ROZRZ基于云端的智能自動(dòng)采集系統,無(wú)需人工干預。測量完成后自動(dòng)保存數據庫,自動(dòng)生成SPC圖表,自動(dòng)導出EXCEL。哪個(gè)SPC軟件好用?SPC數據采集軟件?自動(dòng)生成圖表的SPC采集軟件
  SPC的主要內容是XR控制圖。根據圖表中的數值,生成對應的X控制圖和R控制圖,方便查看。同樣,還有 X-MR 控制圖和 P 控制圖。
  例:P控制圖界面風(fēng)格:
  數據采集??的內容主要是設置相應的接口信息、采集項、內容,實(shí)現數據采集的功能。主要包括設備通訊設置、數據采集變量設置、數據采集界面對比、工藝設備采集參數、數據采集與執行五個(gè)頁(yè)面。
  設備通訊設置主要是設置串口信息,包括串口選擇、波特率、計算機名等信息。數據采集??變量設置和接口比對,就是確定接口的變量字段,存儲到對應的表中,完成數據采集操作。工藝設備采集參數用于確定采集哪些工藝和設備,執行二次數據采集是設置采集的內容。
  示例:工藝設備采集參數樣式圖:
  1.確定關(guān)鍵流程
  
  一個(gè)產(chǎn)品質(zhì)量的形成需要經(jīng)過(guò)很多道工序(工序),其中有些工序對產(chǎn)品的質(zhì)量起著(zhù)至關(guān)重要的作用。這樣的過(guò)程稱(chēng)為關(guān)鍵過(guò)程。SPC控制圖應首先用于關(guān)鍵過(guò)程,而不是所有過(guò)程。因此,要實(shí)施SPC,首先要確定關(guān)鍵工序。然后,對關(guān)鍵流程進(jìn)行分析研究,識別流程的結構(輸入、輸出、資源、活動(dòng)等)。
  2.確定過(guò)程的關(guān)鍵變量(特征)
  分析關(guān)鍵過(guò)程(因果圖、排列圖等)可以找出對產(chǎn)品質(zhì)量影響最大的變量(特征)。
  3、制定過(guò)程控制計劃和規范
  這一步往往是最困難和最耗時(shí)的,一些實(shí)驗方法可以參考相關(guān)標準。
  4.采集
整理過(guò)程數據
  5、過(guò)程控制狀態(tài)初步分析
  使用控制圖進(jìn)行分析,分析過(guò)程是否受控和穩定。如發(fā)現失控或有特殊原因變化時(shí),應采取措施。
  注意:此時(shí),過(guò)程的分布中心(X)和均值差σ,以及控制圖邊界可能是未知的。
  
  6.過(guò)程能力分析
  只有當過(guò)程受控且穩定時(shí),才需要分析過(guò)程能力。當發(fā)現過(guò)程能力不足時(shí),應采取措施。
  7、SPC控制圖監控
  只有過(guò)程受控穩定,過(guò)程能力足夠,才能采用監控用的控制圖,進(jìn)入SPC實(shí)施階段。
  8. 監控、診斷、改進(jìn)
  在監測過(guò)程中,發(fā)現異常時(shí),應及時(shí)分析原因,采取措施使過(guò)程恢復正常。對于受控和穩定的過(guò)程,還需要持續改進(jìn)以減少變異的常見(jiàn)原因、提高質(zhì)量和降低成本。
  產(chǎn)品質(zhì)量的形成需要很多工序(工序),其中有些工序對產(chǎn)品質(zhì)量起著(zhù)至關(guān)重要的作用,這樣的工序稱(chēng)為關(guān)鍵工序,對關(guān)鍵工序應優(yōu)先使用SPC控制圖,而不是對所有工序都使用SPC控制圖??刂茍D是一種測量、記錄、評價(jià)和監控生產(chǎn)過(guò)程的關(guān)鍵質(zhì)量特征值以及過(guò)程是否受控的圖形化方法。根據假設檢驗的原理構建圖表,以監控生產(chǎn)過(guò)程是否受控。它是統計質(zhì)量管理的重要手段和工具。

最新信息:怎樣實(shí)時(shí)采集網(wǎng)站最新數據

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 133 次瀏覽 ? 2022-11-27 13:57 ? 來(lái)自相關(guān)話(huà)題

  最新信息:怎樣實(shí)時(shí)采集網(wǎng)站最新數據
  如果您需要監控和采集
招標和采購信息;或需要監控和采集
財經(jīng)新聞;或需要監控和采集
招聘內容;或者您需要監控和采集
輿論內容。繼續閱讀,目標是及時(shí)發(fā)現網(wǎng)站更新并在很短的時(shí)間內自動(dòng)采集
數據。
  由于每個(gè)網(wǎng)站的內容格式不同,因此需要有針對性的定制數據采集
方案。
  1、實(shí)時(shí)監控更新和內容采集原則:首先,在監控主機上運行網(wǎng)站信息監控軟件,添加需要監控的URL,監控網(wǎng)站的首頁(yè)或欄目列表頁(yè)。發(fā)現更新后,更新的新聞標題和鏈接會(huì )立即發(fā)送到集合主機。當采集
主機收到新聞鏈接時(shí),它會(huì )自動(dòng)使用木制瀏覽器打開(kāi)網(wǎng)頁(yè),采集
新聞標題和正文內容,然后將其保存到數據庫或導出Excel表格文件,或填寫(xiě)表單并提交給其他系統。其中,監控主機和采集主機可以部署在不同的計算機上,也可以部署在同一臺計算機上,它們通過(guò)網(wǎng)絡(luò )接口實(shí)現數據傳輸。
  監控采集原理圖
  2、先在監控主機上部署網(wǎng)站信息監控軟件,添加需要監控的URL,可以選擇監控網(wǎng)站的首頁(yè)或欄目。只要超鏈接列表格式的網(wǎng)頁(yè)可以直接監控,其他特殊格式的頁(yè)面就需要添加相應的監控方案。每個(gè)監控網(wǎng)站可以設置不同的監控頻率,對實(shí)時(shí)性要求高的網(wǎng)站設置高頻監控。多個(gè)獨立于 URL 的線(xiàn)程以自己的頻率同時(shí)進(jìn)行監視。您也可以按關(guān)鍵詞過(guò)濾無(wú)效內容,具體參數設置請參考軟件手冊和案例教程。
  監控網(wǎng)站更新
  3. 在監控告警選項卡中,選擇“發(fā)送鏈路到外部網(wǎng)絡(luò )接口”,并設置接收端的IP地址和端口號,這里是采集主機127.0.0.1的IP地址和正在監聽(tīng)的8888端口。當監控任何網(wǎng)站更新時(shí),將發(fā)送更新的內容和鏈接。
  發(fā)送更新鏈接
  4、在采集主機上打開(kāi)木制瀏覽器,選擇“自動(dòng)控制”菜單,打開(kāi)“外部接口”,在彈出的外部接口窗口中將監聽(tīng)端口號設置為8888。設置接收數據時(shí)要執行的指定自動(dòng)控制項目文件。如果同時(shí)接收多條數據,軟件還可以按設定的時(shí)間間隔按順序處理每條數據。選中“程序啟動(dòng)時(shí)自動(dòng)開(kāi)始偵聽(tīng)”,以便您可以在啟動(dòng)瀏覽器后立即接收數據,而無(wú)需打開(kāi)外部界面表單。
  接收新鏈接
  
  5. 打開(kāi)瀏覽器的項目經(jīng)理,創(chuàng )建自動(dòng)控制項目。首先創(chuàng )建一個(gè)新步驟打開(kāi)網(wǎng)頁(yè),在輸入URL的控件中右鍵點(diǎn)擊,選擇外部變量@link,即監控主機接收的數據中的link參數。執行項目時(shí),將自動(dòng)打開(kāi)此內容 URL。
  打開(kāi)鏈接網(wǎng)址
  6.創(chuàng )建元素監控步驟,監控內容頁(yè)面的標題,通過(guò)標題內容,可以解讀內容來(lái)自哪個(gè)網(wǎng)站,然后跳轉到相應的數據采集步驟。這相當于編程中的多條件語(yǔ)句。若要選擇跳轉步驟,需要完成本文的步驟 7,然后返回進(jìn)行修改。
  確定源網(wǎng)站
  7. 創(chuàng )建一個(gè)信息抓取步驟,從網(wǎng)頁(yè)中抓取標題和正文內容。 將作為變量保存在軟件中。以相同的方式為每個(gè)網(wǎng)站創(chuàng )建數據爬網(wǎng)步驟和爬網(wǎng)內容參數。在這里,您還可以添加分析和過(guò)濾信息內容,確定不必要的不相關(guān)內容,并終止采集
和保存。
  頁(yè)面數據采集
  8. 如果要將采集到的內容保存到數據庫中,可以新建“執行SQL”步驟,設置數據庫連接參數,并支持mssql、mysql、oracle、sqlite等數據庫。輸入 insert 連接 SQL 語(yǔ)句,通過(guò)右鍵菜單將標題和正文變量插入到 SQL 語(yǔ)句中。通過(guò)在執行項目時(shí)替換變量,內容將直接保存到數據庫中。
  保存到數據庫
  9.如何將采集
的數據保存到Excel表格文件中,
  
  創(chuàng )建一個(gè)“保存數據”步驟,選擇保存到Excel格式,輸入保存路徑和文件名,點(diǎn)擊設置內容按鈕,就可以選擇需要保存的變量,這里選擇標題和正文。
  保存到 Excel 工作表
  10.如果需要采集
內容,請填寫(xiě)表單并添加到其他系統,創(chuàng )建一個(gè)新步驟打開(kāi)網(wǎng)頁(yè),添加該系統的URL(此處省略登錄步驟),然后打開(kāi)表單用于向系統添加數據。
  打開(kāi)“添加數據”網(wǎng)頁(yè)
  11.創(chuàng )建一個(gè)步驟來(lái)填寫(xiě)內容,并在表單對應的輸入框中填寫(xiě)內容。首先,獲取輸入框元素,在內容框中單擊鼠標右鍵,然后選擇需要輸入的變量。
  自動(dòng)填充表單
  12.填寫(xiě)完表單后,再增加一步點(diǎn)擊提交按鈕,將采集到的內容添加到新系統中。
  提交表格
  從監控數據更新到數據采集
,保存到數據庫或添加到其他系統,整個(gè)過(guò)程可以在無(wú)人值守的情況下完全自動(dòng)完成。并且監控采集軟件可以放在后臺運行,不影響電腦正常使用做其他工作。返回搜狐查看更多
  最新版:怪物聯(lián)盟采集推送軟件 V1.0 綠色免費版
  怪物聯(lián)盟采集
推送軟件是一款適合QQ群推廣的淘客推廣軟件。操作簡(jiǎn)單,可以快速采集
產(chǎn)品信息,輕松推廣。有需要的用戶(hù)不要錯過(guò)。
  【使用說(shuō)明】
  
  1、解壓包中有兩個(gè)壓縮文件。分別是,mpq官方版壓縮包和怪物合集壓縮包。單獨解壓
  2、打開(kāi)mpq壓縮包解壓后的文件夾,選擇“core”文件,點(diǎn)擊打開(kāi)。選擇“賬號”,在空白處右擊選擇“編輯”,輸入QQ賬號密碼。點(diǎn)擊添加,添加選擇右鍵登錄,此時(shí)QQ登錄成功。
  3.關(guān)閉核心程序。打開(kāi)怪物合集壓縮包文件,將“VipNBQDLL.xx.dll”復制粘貼到mpq文件夾下的“Plugin”文件夾中。這時(shí),重新打開(kāi)“核心”程序。選擇“插件”選項。您將看到一個(gè)插件,右鍵單擊以啟用它。這時(shí)候核心軟件設置就ok了。
  4.然后打開(kāi)怪物采集
文件夾,找到“怪物聯(lián)盟”程序。點(diǎn)擊打開(kāi)配置相應的信息。
  
  5.首先登錄聯(lián)盟,這里的賬號就是你的淘寶客賬號。如果沒(méi)有直接去申請。具體應用教程請見(jiàn)另一篇文章。淘客賬號申請教程。
  6、登錄淘寶賬號后,點(diǎn)擊刷新推廣位置。點(diǎn)擊刷新后,您淘寶賬號設置的促銷(xiāo)位會(huì )自動(dòng)列出,您可以選擇對應的促銷(xiāo)位。一般是QQ群推廣位。
  7.勾選自動(dòng)申請高額傭金。請隨意填寫(xiě)申請原因。一般不受影響。
  8.然后開(kāi)始采集
產(chǎn)品內容。在右側頁(yè)碼設置中填寫(xiě)云商品庫對應的頁(yè)碼。只需點(diǎn)擊采集
。通常一次采集
一頁(yè)。如果要捕獲多個(gè)頁(yè)面?全選并添加到推送列表。然后重新進(jìn)入頁(yè)數捕獲。集合被完全選中并添加到推送列表中。 查看全部

  最新信息:怎樣實(shí)時(shí)采集網(wǎng)站最新數據
  如果您需要監控和采集
招標和采購信息;或需要監控和采集
財經(jīng)新聞;或需要監控和采集
招聘內容;或者您需要監控和采集
輿論內容。繼續閱讀,目標是及時(shí)發(fā)現網(wǎng)站更新并在很短的時(shí)間內自動(dòng)采集
數據。
  由于每個(gè)網(wǎng)站的內容格式不同,因此需要有針對性的定制數據采集
方案。
  1、實(shí)時(shí)監控更新和內容采集原則:首先,在監控主機上運行網(wǎng)站信息監控軟件,添加需要監控的URL,監控網(wǎng)站的首頁(yè)或欄目列表頁(yè)。發(fā)現更新后,更新的新聞標題和鏈接會(huì )立即發(fā)送到集合主機。當采集
主機收到新聞鏈接時(shí),它會(huì )自動(dòng)使用木制瀏覽器打開(kāi)網(wǎng)頁(yè),采集
新聞標題和正文內容,然后將其保存到數據庫或導出Excel表格文件,或填寫(xiě)表單并提交給其他系統。其中,監控主機和采集主機可以部署在不同的計算機上,也可以部署在同一臺計算機上,它們通過(guò)網(wǎng)絡(luò )接口實(shí)現數據傳輸。
  監控采集原理圖
  2、先在監控主機上部署網(wǎng)站信息監控軟件,添加需要監控的URL,可以選擇監控網(wǎng)站的首頁(yè)或欄目。只要超鏈接列表格式的網(wǎng)頁(yè)可以直接監控,其他特殊格式的頁(yè)面就需要添加相應的監控方案。每個(gè)監控網(wǎng)站可以設置不同的監控頻率,對實(shí)時(shí)性要求高的網(wǎng)站設置高頻監控。多個(gè)獨立于 URL 的線(xiàn)程以自己的頻率同時(shí)進(jìn)行監視。您也可以按關(guān)鍵詞過(guò)濾無(wú)效內容,具體參數設置請參考軟件手冊和案例教程。
  監控網(wǎng)站更新
  3. 在監控告警選項卡中,選擇“發(fā)送鏈路到外部網(wǎng)絡(luò )接口”,并設置接收端的IP地址和端口號,這里是采集主機127.0.0.1的IP地址和正在監聽(tīng)的8888端口。當監控任何網(wǎng)站更新時(shí),將發(fā)送更新的內容和鏈接。
  發(fā)送更新鏈接
  4、在采集主機上打開(kāi)木制瀏覽器,選擇“自動(dòng)控制”菜單,打開(kāi)“外部接口”,在彈出的外部接口窗口中將監聽(tīng)端口號設置為8888。設置接收數據時(shí)要執行的指定自動(dòng)控制項目文件。如果同時(shí)接收多條數據,軟件還可以按設定的時(shí)間間隔按順序處理每條數據。選中“程序啟動(dòng)時(shí)自動(dòng)開(kāi)始偵聽(tīng)”,以便您可以在啟動(dòng)瀏覽器后立即接收數據,而無(wú)需打開(kāi)外部界面表單。
  接收新鏈接
  
  5. 打開(kāi)瀏覽器的項目經(jīng)理,創(chuàng )建自動(dòng)控制項目。首先創(chuàng )建一個(gè)新步驟打開(kāi)網(wǎng)頁(yè),在輸入URL的控件中右鍵點(diǎn)擊,選擇外部變量@link,即監控主機接收的數據中的link參數。執行項目時(shí),將自動(dòng)打開(kāi)此內容 URL。
  打開(kāi)鏈接網(wǎng)址
  6.創(chuàng )建元素監控步驟,監控內容頁(yè)面的標題,通過(guò)標題內容,可以解讀內容來(lái)自哪個(gè)網(wǎng)站,然后跳轉到相應的數據采集步驟。這相當于編程中的多條件語(yǔ)句。若要選擇跳轉步驟,需要完成本文的步驟 7,然后返回進(jìn)行修改。
  確定源網(wǎng)站
  7. 創(chuàng )建一個(gè)信息抓取步驟,從網(wǎng)頁(yè)中抓取標題和正文內容。 將作為變量保存在軟件中。以相同的方式為每個(gè)網(wǎng)站創(chuàng )建數據爬網(wǎng)步驟和爬網(wǎng)內容參數。在這里,您還可以添加分析和過(guò)濾信息內容,確定不必要的不相關(guān)內容,并終止采集
和保存。
  頁(yè)面數據采集
  8. 如果要將采集到的內容保存到數據庫中,可以新建“執行SQL”步驟,設置數據庫連接參數,并支持mssql、mysql、oracle、sqlite等數據庫。輸入 insert 連接 SQL 語(yǔ)句,通過(guò)右鍵菜單將標題和正文變量插入到 SQL 語(yǔ)句中。通過(guò)在執行項目時(shí)替換變量,內容將直接保存到數據庫中。
  保存到數據庫
  9.如何將采集
的數據保存到Excel表格文件中,
  
  創(chuàng )建一個(gè)“保存數據”步驟,選擇保存到Excel格式,輸入保存路徑和文件名,點(diǎn)擊設置內容按鈕,就可以選擇需要保存的變量,這里選擇標題和正文。
  保存到 Excel 工作表
  10.如果需要采集
內容,請填寫(xiě)表單并添加到其他系統,創(chuàng )建一個(gè)新步驟打開(kāi)網(wǎng)頁(yè),添加該系統的URL(此處省略登錄步驟),然后打開(kāi)表單用于向系統添加數據。
  打開(kāi)“添加數據”網(wǎng)頁(yè)
  11.創(chuàng )建一個(gè)步驟來(lái)填寫(xiě)內容,并在表單對應的輸入框中填寫(xiě)內容。首先,獲取輸入框元素,在內容框中單擊鼠標右鍵,然后選擇需要輸入的變量。
  自動(dòng)填充表單
  12.填寫(xiě)完表單后,再增加一步點(diǎn)擊提交按鈕,將采集到的內容添加到新系統中。
  提交表格
  從監控數據更新到數據采集
,保存到數據庫或添加到其他系統,整個(gè)過(guò)程可以在無(wú)人值守的情況下完全自動(dòng)完成。并且監控采集軟件可以放在后臺運行,不影響電腦正常使用做其他工作。返回搜狐查看更多
  最新版:怪物聯(lián)盟采集推送軟件 V1.0 綠色免費版
  怪物聯(lián)盟采集
推送軟件是一款適合QQ群推廣的淘客推廣軟件。操作簡(jiǎn)單,可以快速采集
產(chǎn)品信息,輕松推廣。有需要的用戶(hù)不要錯過(guò)。
  【使用說(shuō)明】
  
  1、解壓包中有兩個(gè)壓縮文件。分別是,mpq官方版壓縮包和怪物合集壓縮包。單獨解壓
  2、打開(kāi)mpq壓縮包解壓后的文件夾,選擇“core”文件,點(diǎn)擊打開(kāi)。選擇“賬號”,在空白處右擊選擇“編輯”,輸入QQ賬號密碼。點(diǎn)擊添加,添加選擇右鍵登錄,此時(shí)QQ登錄成功。
  3.關(guān)閉核心程序。打開(kāi)怪物合集壓縮包文件,將“VipNBQDLL.xx.dll”復制粘貼到mpq文件夾下的“Plugin”文件夾中。這時(shí),重新打開(kāi)“核心”程序。選擇“插件”選項。您將看到一個(gè)插件,右鍵單擊以啟用它。這時(shí)候核心軟件設置就ok了。
  4.然后打開(kāi)怪物采集
文件夾,找到“怪物聯(lián)盟”程序。點(diǎn)擊打開(kāi)配置相應的信息。
  
  5.首先登錄聯(lián)盟,這里的賬號就是你的淘寶客賬號。如果沒(méi)有直接去申請。具體應用教程請見(jiàn)另一篇文章。淘客賬號申請教程。
  6、登錄淘寶賬號后,點(diǎn)擊刷新推廣位置。點(diǎn)擊刷新后,您淘寶賬號設置的促銷(xiāo)位會(huì )自動(dòng)列出,您可以選擇對應的促銷(xiāo)位。一般是QQ群推廣位。
  7.勾選自動(dòng)申請高額傭金。請隨意填寫(xiě)申請原因。一般不受影響。
  8.然后開(kāi)始采集
產(chǎn)品內容。在右側頁(yè)碼設置中填寫(xiě)云商品庫對應的頁(yè)碼。只需點(diǎn)擊采集
。通常一次采集
一頁(yè)。如果要捕獲多個(gè)頁(yè)面?全選并添加到推送列表。然后重新進(jìn)入頁(yè)數捕獲。集合被完全選中并添加到推送列表中。

匯總:文章實(shí)時(shí)采集某app頁(yè)面靜態(tài)數據下載及markdown解析解析

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 123 次瀏覽 ? 2022-11-25 06:31 ? 來(lái)自相關(guān)話(huà)題

  匯總:文章實(shí)時(shí)采集某app頁(yè)面靜態(tài)數據下載及markdown解析解析
  文章實(shí)時(shí)采集某app頁(yè)面靜態(tài)數據,以文章title和date為關(guān)鍵字采集到知乎站內數據組的全部問(wèn)題信息,并格式化為xml數據代碼下載及markdown解析(以下兩步會(huì )打包放在目錄下,數據都存在共享文件夾,數據只對需要的開(kāi)發(fā)者才開(kāi)放,具體思路請看本人專(zhuān)欄上部。更多內容請看目錄)demodemo鏈接:(為了以后更好的寫(xiě)示例,不需要了解java開(kāi)發(fā),我會(huì )采用c#)2.7工程代碼頁(yè)面如上,demo采用defaultapplicationdemo,也就是無(wú)狀態(tài)工程(不指定登錄postmetro是不會(huì )寫(xiě)入數據的,我會(huì )對數據進(jìn)行初始化,并上傳全站數據)2.7工程代碼不包含java框架開(kāi)發(fā),需要在開(kāi)發(fā)c#工程過(guò)程中,閱讀java代碼才能理解原理,所以開(kāi)發(fā)c#工程,還需要一些c#知識才能閱讀有效代碼解決方案:第一步:將上傳的知乎所有問(wèn)題信息轉化為html代碼,使用bower對各個(gè)頁(yè)面api進(jìn)行開(kāi)發(fā)2.7工程代碼頁(yè)面如上,demo采用defaultapplicationdemo,也就是無(wú)狀態(tài)工程(不指定登錄postmetro是不會(huì )寫(xiě)入數據的,我會(huì )對數據進(jìn)行初始化,并上傳全站數據)2.7工程代碼不包含java框架開(kāi)發(fā),需要在開(kāi)發(fā)c#工程過(guò)程中,閱讀java代碼才能理解原理,所以開(kāi)發(fā)c#工程,還需要一些c#知識才能閱讀有效代碼解決方案:我先用知乎下的weblogic運行,具體步驟見(jiàn)本人文章點(diǎn)擊postmetro概述:http請求示例代碼:注意:我這里用的是java,只要打java代碼就可以了第二步:先在c#工程中寫(xiě)postmetrojson文件,注意c#工程中要指定工程啟動(dòng)路徑,不然上傳完工程代碼在idea中運行時(shí)會(huì )報錯compilingpostmetroweblogicintoexternal...3.1.準備數據,不需要針對知乎使用eclipse編寫(xiě)目錄下的getting-started.xml,包含知乎所有頁(yè)面api3.2.指定路徑,編譯下,打包成工程,同時(shí)數據文件名要指定eclipse中javaweblogic目錄名,目錄下的test1/merge-json.xmlproperties3.3.寫(xiě)入知乎所有頁(yè)面數據,通過(guò)openxmlhttp來(lái)對知乎頁(yè)面進(jìn)行讀寫(xiě),可以同時(shí)寫(xiě)入多次以保證整個(gè)頁(yè)面同步,openxmlxml級exception:withxml.exceptionexpected‘timeout’toaddtimer(。
  
  1)withopenxml()expectedtoaddtimer
  
  3)withopenxml(c)expectedtoaddtimer
  1).來(lái)自java方向的外行方案:3.1.在idea中 查看全部

  匯總:文章實(shí)時(shí)采集某app頁(yè)面靜態(tài)數據下載及markdown解析解析
  文章實(shí)時(shí)采集某app頁(yè)面靜態(tài)數據,以文章title和date為關(guān)鍵字采集到知乎站內數據組的全部問(wèn)題信息,并格式化為xml數據代碼下載及markdown解析(以下兩步會(huì )打包放在目錄下,數據都存在共享文件夾,數據只對需要的開(kāi)發(fā)者才開(kāi)放,具體思路請看本人專(zhuān)欄上部。更多內容請看目錄)demodemo鏈接:(為了以后更好的寫(xiě)示例,不需要了解java開(kāi)發(fā),我會(huì )采用c#)2.7工程代碼頁(yè)面如上,demo采用defaultapplicationdemo,也就是無(wú)狀態(tài)工程(不指定登錄postmetro是不會(huì )寫(xiě)入數據的,我會(huì )對數據進(jìn)行初始化,并上傳全站數據)2.7工程代碼不包含java框架開(kāi)發(fā),需要在開(kāi)發(fā)c#工程過(guò)程中,閱讀java代碼才能理解原理,所以開(kāi)發(fā)c#工程,還需要一些c#知識才能閱讀有效代碼解決方案:第一步:將上傳的知乎所有問(wèn)題信息轉化為html代碼,使用bower對各個(gè)頁(yè)面api進(jìn)行開(kāi)發(fā)2.7工程代碼頁(yè)面如上,demo采用defaultapplicationdemo,也就是無(wú)狀態(tài)工程(不指定登錄postmetro是不會(huì )寫(xiě)入數據的,我會(huì )對數據進(jìn)行初始化,并上傳全站數據)2.7工程代碼不包含java框架開(kāi)發(fā),需要在開(kāi)發(fā)c#工程過(guò)程中,閱讀java代碼才能理解原理,所以開(kāi)發(fā)c#工程,還需要一些c#知識才能閱讀有效代碼解決方案:我先用知乎下的weblogic運行,具體步驟見(jiàn)本人文章點(diǎn)擊postmetro概述:http請求示例代碼:注意:我這里用的是java,只要打java代碼就可以了第二步:先在c#工程中寫(xiě)postmetrojson文件,注意c#工程中要指定工程啟動(dòng)路徑,不然上傳完工程代碼在idea中運行時(shí)會(huì )報錯compilingpostmetroweblogicintoexternal...3.1.準備數據,不需要針對知乎使用eclipse編寫(xiě)目錄下的getting-started.xml,包含知乎所有頁(yè)面api3.2.指定路徑,編譯下,打包成工程,同時(shí)數據文件名要指定eclipse中javaweblogic目錄名,目錄下的test1/merge-json.xmlproperties3.3.寫(xiě)入知乎所有頁(yè)面數據,通過(guò)openxmlhttp來(lái)對知乎頁(yè)面進(jìn)行讀寫(xiě),可以同時(shí)寫(xiě)入多次以保證整個(gè)頁(yè)面同步,openxmlxml級exception:withxml.exceptionexpected‘timeout’toaddtimer(。
  
  1)withopenxml()expectedtoaddtimer
  
  3)withopenxml(c)expectedtoaddtimer
  1).來(lái)自java方向的外行方案:3.1.在idea中

解決方案:基于Binlog實(shí)時(shí)同步數據倉庫問(wèn)題總結

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 88 次瀏覽 ? 2022-11-25 01:19 ? 來(lái)自相關(guān)話(huà)題

  解決方案:基于Binlog實(shí)時(shí)同步數據倉庫問(wèn)題總結
  前言
  今天刷公眾號的時(shí)候,看到了這篇文章:基于Binlog和Flink的實(shí)時(shí)同步數據倉庫實(shí)踐。主要解釋是基于Flink對Mysql Binlog數據采集的規劃??戳藢?shí)用的方法和具體的代碼操作,感覺(jué)有些情況考慮的還不夠。作者之前對采集工具的實(shí)踐也做過(guò)一些類(lèi)似的總結,但是沒(méi)有從整體上做一個(gè)系統的總結,所以我在想,能不能做一個(gè)個(gè)人的總結文章,總結一下Binlog采集中存在的問(wèn)題以及相應的解決方法也總結了?
  很多人可能對Binlog還不夠了解,有些人可能膚淺地想:“不就是mysql產(chǎn)生的嗎,它有固定結構的日志,采集
數據,然后做成數據落地,它有什么這么困難?”
  的確,本質(zhì)上確實(shí)是日志,但其實(shí)Binlog采集從場(chǎng)景分析到技術(shù)選型都有很多不為人知的坑,大家不要小看它。
  作者寫(xiě)這篇文章的目的是展示Binlog數據采集開(kāi)發(fā)過(guò)程在實(shí)際工作中的原理、注意事項以及可能出現的問(wèn)題。也會(huì )有一些筆者自己在資料采集
中的原則個(gè)人總結,供大家參考,都是干貨。
  讓我們開(kāi)始吧!
  一、Binlog實(shí)時(shí)采集與匯總原理
  首先拋開(kāi)技術(shù)框架的討論,我個(gè)人總結一下Binlog日志數據采集的主要原則:
  解釋這三個(gè)原則的具體含義
  原則一
  在數據采集中,數據落地一般采用時(shí)間分區的方式進(jìn)行落地,因此我們需要確定一個(gè)固定的時(shí)間戳作為時(shí)間分區的基本時(shí)間序列。
  這種情況下,業(yè)務(wù)數據上的時(shí)間戳字段,無(wú)論從實(shí)際開(kāi)發(fā)中獲取這個(gè)時(shí)間戳,還是在實(shí)際表中都會(huì )有這樣的時(shí)間戳來(lái)看,不可能所有的表都完全滿(mǎn)足。
  舉個(gè)反例:
  表:業(yè)務(wù)時(shí)間戳(或事件時(shí)間)
  表 A:創(chuàng )建時(shí)間、更新時(shí)間
  表 B:創(chuàng )建時(shí)間
  表 C:create_at
  表D:無(wú)
  像這樣的情況,理論上在設計表的時(shí)候可以通過(guò)限制RD和DBA規范表結構來(lái)統一和限制時(shí)間戳和命名,但是在實(shí)際工作中,這樣的情況基本是不可能的。是的,相信很多讀者都會(huì )遇到這種情況。
  很多做數據采集的同學(xué)可能會(huì )想,能不能請他們來(lái)制定標準呢?
  我個(gè)人的看法是可以,但是大數據的底層數據采集不能完全依賴(lài)這樣的相互標準。
  原因有以下三個(gè):
  因此,如果要使用唯一的固定時(shí)間序列,就必須將其與業(yè)務(wù)數據分開(kāi)。我們想要的時(shí)間戳不受業(yè)務(wù)數據變化的影響。
  原理二
  在一個(gè)業(yè)務(wù)數據庫中,肯定存在表結構變化的問(wèn)題。大多數情況下是添加列,但也有列重命名、列刪除等情況,字段變化順序不可控。
  這個(gè)原則想描述的是導入數據倉庫的表要適應數據庫表的各種操作,并保持其可用性和列數據的正確性。
  原則三
  這個(gè)數據是有溯源的,包括兩個(gè)方面
  第一種描述是在binlog采集
端,可以重新按location采集
binlog。
  第二種描述是在consumer binlog登陸結束時(shí),可以通過(guò)重復消費重新登陸數據。
  這是作者的個(gè)人總結。無(wú)論選擇何種技術(shù)選型進(jìn)行組合施工,都需要滿(mǎn)足這些原則。
  二、實(shí)施方案及具體操作
  技術(shù)架構:Debezium + Confluent + Kafka + OSS/S3 + Hive
  基于原理一的解決方案:
  
  Debezium 提供了 New Record State Extraction 的配置選項,相當于提供了一個(gè) transform 算子,可以提取 binlog 中的元數據。
  對于0.10版本的配置,可以提取table、version、connector、name、ts_ms、db、server_id、file、pos、row等binlog元數據信息。
  其中ts_ms是binlog日志的生成時(shí)間,是binlog元數據,可以應用于所有數據表,在不知道數據表內部結構的情況下,可以使用這個(gè)固定的時(shí)間戳來(lái)充分實(shí)現我們的原理一.
  關(guān)于Debezium,不同版本之前的配置參數可能不同。如果讀者需要練習,需要在官方文檔中確認對應版本的配置參數。
  對于其他框架,比如市場(chǎng)上廣泛使用的Canal,或者讀者需要開(kāi)發(fā)數據采集程序,建議將binlog的元數據全部提取出來(lái),在本流程和后續流程中可能會(huì )用到。
  基于原則二的解決方案
  對于Hive,目前主流的數據存儲格式有Parquet、ORC、Json、Avro。
  拋開(kāi)數據存儲的效率討論。
  對于前兩種數據格式,它是按列存儲的,也就是說(shuō),這兩種數據格式的數據讀取將嚴格依賴(lài)于數據在我們的數據表中的存儲順序。這樣的數據格式不能滿(mǎn)足數據列的靈活性。添加、刪除等操作。
  Avro格式是基于行的,但是需要依賴(lài)Schema Register服務(wù)??紤]到Hive的數據表讀取完全依賴(lài)于外部服務(wù),風(fēng)險太大。
  最后確定使用Json格式進(jìn)行數據存儲。這種讀取和存儲效率雖然沒(méi)有其他格式高,但是可以保證業(yè)務(wù)數據的任何變化都能在hive中讀取到。
  Debezium組件采集的binlog數據為json格式,符合預期的設計方案,可以解決第二個(gè)原理帶來(lái)的問(wèn)題。
  對于其他框架,比如市場(chǎng)上使用比較廣泛的Canal,可以設置為Json數據格式進(jìn)行傳輸,或者需要讀者自行開(kāi)發(fā)數據采集程序,同理。
  基于原理三的解決方案
  在binlog采集
端,可以重新按位置采集
binlog。
  Debezium官網(wǎng)也給出了該方案的實(shí)現。大致描述了相應的解決方案,需要Kafkacat工具。
  對于每一個(gè)采集到的mysql實(shí)例,在創(chuàng )建數據采集任務(wù)時(shí),Confluent會(huì )為connector(即采集程序)采集的元數據對應創(chuàng )建一個(gè)topic。
  相應的時(shí)間戳、文件位置、位置都會(huì )存儲在里面。您可以通過(guò)修改該數據來(lái)重新設置采集
binlog日志的位置。
  值得注意的是,這個(gè)操作的時(shí)間節點(diǎn)也是有限制的,這跟mysql binlog日志的保存周期有關(guān)。所以這種方式回溯的時(shí)候,需要確認mysql的日志是否還存在。
  對于重復消費,數據重新落地。
  因為這個(gè)方案是基于Kafka的,所以網(wǎng)上有很多Kafka重新設計消費offset消費站點(diǎn)的方案,這里不再贅述。
  讀者自己實(shí)現,需要確認的選擇的MQ支持該功能就好了。
  #how_to_change_the_offsets_of_the_source_database
  3、業(yè)務(wù)場(chǎng)景不同
  本節僅介紹在筆者的技術(shù)架構下如何實(shí)現以下操作。讀者可以根據自己選擇的技術(shù)組件探索不同的技術(shù)方案。
  1)數據庫分庫分表的情況
  基于Debezium的架構,一個(gè)source只能對應一個(gè)mysql實(shí)例進(jìn)行采集。對于同一個(gè)實(shí)例上的分表情況,可以使用Debezium Topic Routing功能。
  在采集
過(guò)濾binlog時(shí),將對應的要采集
的表按照正則匹配寫(xiě)入到指定的topic中。
  在分庫的情況下,還需要在sink端添加RegexRouter變換算子,進(jìn)行topic之間的merge寫(xiě)操作。
  2)數據增量采集和全量采集
  對于采集組件,目前配置默認是基于增量的,所以無(wú)論選擇Debezium還是Canal,都可以正常配置。
  但是有時(shí)候會(huì )出現需要采集
全表的情況,作者也給出了采集
全量數據的方案。
  選項一:
  Debezium本身就有這樣的功能,需要
  snapshot.mode參數選擇設置為when_needed,這樣可以進(jìn)行表的全量采集
操作。
  
  在官方文檔中,對這里的參數配置有比較詳細的說(shuō)明。
  #快照
  方案二:
  同時(shí)使用sqoop和增量采集
。
  該方案適用于表數據已經(jīng)很多,但binlog數據當前頻率不高的情況。
  值得注意的有兩點(diǎn):
  3)離線(xiàn)重刪條件
  數據落地后,通過(guò)json表映射binlog原創(chuàng )
數據,那么問(wèn)題來(lái)了,我們如何找到最新的一條數據呢?
  或許我們可以簡(jiǎn)單的認為,用剛才提取出來(lái)的ts_ms就好了,然后反演一下?
  在大多數情況下確實(shí)可以這樣做。
  但是筆者在實(shí)際開(kāi)發(fā)中發(fā)現這樣的情況并不能滿(mǎn)足所有的情況,因為在binlog中,可能真的有兩條數據ts_ms和PK相同,但確實(shí)不同。
  那么我們如何同時(shí)求解兩個(gè)數據呢?
  答案如上,我們只是建議提取所有binlog的元數據。
  選擇 *
  從
  (
  選擇 *,
  row_number() over(partition BY t.id ORDER BY t.`__ts_ms` DESC,t.`__file` DESC,cast(t.`__pos` AS int) DESC) AS order_by
  從測試 t
  WHERE dt='{pt}'
  AND hour='{now_hour}'
  ) t1
  在哪里 t1。order_by = 1
  解釋一下這條sql中row_number的情況:
  這樣的條件組合檢索到的數據是最新的。
  可能有讀者會(huì )問(wèn),如果刪除了這條數據,你這樣取回的數據不就錯了嗎?
  這個(gè)Debezium也有相應的操作,有相應的配置選項供你選擇如何處理刪除行為的binlog數據。
  作為大家的參考,筆者選擇了rewrite的參數配置,這樣上面的SQL最外層只需要判斷“delete = 'false'”是正確的數據即可。
  四、結構總結
  在技??術(shù)的選擇和整體與細節的結構上,筆者一直堅持一個(gè)原則——
  過(guò)程要盡量簡(jiǎn)單但不簡(jiǎn)單。數據鏈接越長(cháng),可能出錯的鏈接就越多。后期的加鎖問(wèn)題和運維也會(huì )非常困難。
  所以筆者在技術(shù)選型上也考慮了Flink+Kafka的方式,但是基于當時(shí)的現狀,筆者并沒(méi)有選擇這樣的技術(shù)選型,筆者也說(shuō)明了原因。
  總結一下,我當時(shí)對 Flink 的想法是,如果 Flink 沒(méi)有一個(gè)開(kāi)發(fā)和運維監控的平臺,可以作為一個(gè)臨時(shí)的解決方案。很容易出問(wèn)題,或者只是大家在這樣的程序框架下造輪子,越造越慢。而且后期的主要項目方向也沒(méi)有把Flink平臺提上日程,所以選擇的時(shí)候也是考慮了一部分未來(lái)的情況。
  所以,最后確定技術(shù)選型的時(shí)候,我并沒(méi)有選擇Flink。
  5.結論
  解決方案:在線(xiàn)工具導航(一)
  工具 123 - 1750 工具收錄
在整個(gè)工位
  
  本工具導航網(wǎng)站共收錄
1750個(gè)在線(xiàn)工具,包括轉換工具、在線(xiàn)制作、在線(xiàn)生成、在線(xiàn)查詢(xún)、圖片工具、檢測工具、PDF工具、SEO工具、站長(cháng)推薦、生活工具、學(xué)習工具、娛樂(lè )工具、站長(cháng)工具等。
   查看全部

  解決方案:基于Binlog實(shí)時(shí)同步數據倉庫問(wèn)題總結
  前言
  今天刷公眾號的時(shí)候,看到了這篇文章:基于Binlog和Flink的實(shí)時(shí)同步數據倉庫實(shí)踐。主要解釋是基于Flink對Mysql Binlog數據采集的規劃??戳藢?shí)用的方法和具體的代碼操作,感覺(jué)有些情況考慮的還不夠。作者之前對采集工具的實(shí)踐也做過(guò)一些類(lèi)似的總結,但是沒(méi)有從整體上做一個(gè)系統的總結,所以我在想,能不能做一個(gè)個(gè)人的總結文章,總結一下Binlog采集中存在的問(wèn)題以及相應的解決方法也總結了?
  很多人可能對Binlog還不夠了解,有些人可能膚淺地想:“不就是mysql產(chǎn)生的嗎,它有固定結構的日志,采集
數據,然后做成數據落地,它有什么這么困難?”
  的確,本質(zhì)上確實(shí)是日志,但其實(shí)Binlog采集從場(chǎng)景分析到技術(shù)選型都有很多不為人知的坑,大家不要小看它。
  作者寫(xiě)這篇文章的目的是展示Binlog數據采集開(kāi)發(fā)過(guò)程在實(shí)際工作中的原理、注意事項以及可能出現的問(wèn)題。也會(huì )有一些筆者自己在資料采集
中的原則個(gè)人總結,供大家參考,都是干貨。
  讓我們開(kāi)始吧!
  一、Binlog實(shí)時(shí)采集與匯總原理
  首先拋開(kāi)技術(shù)框架的討論,我個(gè)人總結一下Binlog日志數據采集的主要原則:
  解釋這三個(gè)原則的具體含義
  原則一
  在數據采集中,數據落地一般采用時(shí)間分區的方式進(jìn)行落地,因此我們需要確定一個(gè)固定的時(shí)間戳作為時(shí)間分區的基本時(shí)間序列。
  這種情況下,業(yè)務(wù)數據上的時(shí)間戳字段,無(wú)論從實(shí)際開(kāi)發(fā)中獲取這個(gè)時(shí)間戳,還是在實(shí)際表中都會(huì )有這樣的時(shí)間戳來(lái)看,不可能所有的表都完全滿(mǎn)足。
  舉個(gè)反例:
  表:業(yè)務(wù)時(shí)間戳(或事件時(shí)間)
  表 A:創(chuàng )建時(shí)間、更新時(shí)間
  表 B:創(chuàng )建時(shí)間
  表 C:create_at
  表D:無(wú)
  像這樣的情況,理論上在設計表的時(shí)候可以通過(guò)限制RD和DBA規范表結構來(lái)統一和限制時(shí)間戳和命名,但是在實(shí)際工作中,這樣的情況基本是不可能的。是的,相信很多讀者都會(huì )遇到這種情況。
  很多做數據采集的同學(xué)可能會(huì )想,能不能請他們來(lái)制定標準呢?
  我個(gè)人的看法是可以,但是大數據的底層數據采集不能完全依賴(lài)這樣的相互標準。
  原因有以下三個(gè):
  因此,如果要使用唯一的固定時(shí)間序列,就必須將其與業(yè)務(wù)數據分開(kāi)。我們想要的時(shí)間戳不受業(yè)務(wù)數據變化的影響。
  原理二
  在一個(gè)業(yè)務(wù)數據庫中,肯定存在表結構變化的問(wèn)題。大多數情況下是添加列,但也有列重命名、列刪除等情況,字段變化順序不可控。
  這個(gè)原則想描述的是導入數據倉庫的表要適應數據庫表的各種操作,并保持其可用性和列數據的正確性。
  原則三
  這個(gè)數據是有溯源的,包括兩個(gè)方面
  第一種描述是在binlog采集
端,可以重新按location采集
binlog。
  第二種描述是在consumer binlog登陸結束時(shí),可以通過(guò)重復消費重新登陸數據。
  這是作者的個(gè)人總結。無(wú)論選擇何種技術(shù)選型進(jìn)行組合施工,都需要滿(mǎn)足這些原則。
  二、實(shí)施方案及具體操作
  技術(shù)架構:Debezium + Confluent + Kafka + OSS/S3 + Hive
  基于原理一的解決方案:
  
  Debezium 提供了 New Record State Extraction 的配置選項,相當于提供了一個(gè) transform 算子,可以提取 binlog 中的元數據。
  對于0.10版本的配置,可以提取table、version、connector、name、ts_ms、db、server_id、file、pos、row等binlog元數據信息。
  其中ts_ms是binlog日志的生成時(shí)間,是binlog元數據,可以應用于所有數據表,在不知道數據表內部結構的情況下,可以使用這個(gè)固定的時(shí)間戳來(lái)充分實(shí)現我們的原理一.
  關(guān)于Debezium,不同版本之前的配置參數可能不同。如果讀者需要練習,需要在官方文檔中確認對應版本的配置參數。
  對于其他框架,比如市場(chǎng)上廣泛使用的Canal,或者讀者需要開(kāi)發(fā)數據采集程序,建議將binlog的元數據全部提取出來(lái),在本流程和后續流程中可能會(huì )用到。
  基于原則二的解決方案
  對于Hive,目前主流的數據存儲格式有Parquet、ORC、Json、Avro。
  拋開(kāi)數據存儲的效率討論。
  對于前兩種數據格式,它是按列存儲的,也就是說(shuō),這兩種數據格式的數據讀取將嚴格依賴(lài)于數據在我們的數據表中的存儲順序。這樣的數據格式不能滿(mǎn)足數據列的靈活性。添加、刪除等操作。
  Avro格式是基于行的,但是需要依賴(lài)Schema Register服務(wù)??紤]到Hive的數據表讀取完全依賴(lài)于外部服務(wù),風(fēng)險太大。
  最后確定使用Json格式進(jìn)行數據存儲。這種讀取和存儲效率雖然沒(méi)有其他格式高,但是可以保證業(yè)務(wù)數據的任何變化都能在hive中讀取到。
  Debezium組件采集的binlog數據為json格式,符合預期的設計方案,可以解決第二個(gè)原理帶來(lái)的問(wèn)題。
  對于其他框架,比如市場(chǎng)上使用比較廣泛的Canal,可以設置為Json數據格式進(jìn)行傳輸,或者需要讀者自行開(kāi)發(fā)數據采集程序,同理。
  基于原理三的解決方案
  在binlog采集
端,可以重新按位置采集
binlog。
  Debezium官網(wǎng)也給出了該方案的實(shí)現。大致描述了相應的解決方案,需要Kafkacat工具。
  對于每一個(gè)采集到的mysql實(shí)例,在創(chuàng )建數據采集任務(wù)時(shí),Confluent會(huì )為connector(即采集程序)采集的元數據對應創(chuàng )建一個(gè)topic。
  相應的時(shí)間戳、文件位置、位置都會(huì )存儲在里面。您可以通過(guò)修改該數據來(lái)重新設置采集
binlog日志的位置。
  值得注意的是,這個(gè)操作的時(shí)間節點(diǎn)也是有限制的,這跟mysql binlog日志的保存周期有關(guān)。所以這種方式回溯的時(shí)候,需要確認mysql的日志是否還存在。
  對于重復消費,數據重新落地。
  因為這個(gè)方案是基于Kafka的,所以網(wǎng)上有很多Kafka重新設計消費offset消費站點(diǎn)的方案,這里不再贅述。
  讀者自己實(shí)現,需要確認的選擇的MQ支持該功能就好了。
  #how_to_change_the_offsets_of_the_source_database
  3、業(yè)務(wù)場(chǎng)景不同
  本節僅介紹在筆者的技術(shù)架構下如何實(shí)現以下操作。讀者可以根據自己選擇的技術(shù)組件探索不同的技術(shù)方案。
  1)數據庫分庫分表的情況
  基于Debezium的架構,一個(gè)source只能對應一個(gè)mysql實(shí)例進(jìn)行采集。對于同一個(gè)實(shí)例上的分表情況,可以使用Debezium Topic Routing功能。
  在采集
過(guò)濾binlog時(shí),將對應的要采集
的表按照正則匹配寫(xiě)入到指定的topic中。
  在分庫的情況下,還需要在sink端添加RegexRouter變換算子,進(jìn)行topic之間的merge寫(xiě)操作。
  2)數據增量采集和全量采集
  對于采集組件,目前配置默認是基于增量的,所以無(wú)論選擇Debezium還是Canal,都可以正常配置。
  但是有時(shí)候會(huì )出現需要采集
全表的情況,作者也給出了采集
全量數據的方案。
  選項一:
  Debezium本身就有這樣的功能,需要
  snapshot.mode參數選擇設置為when_needed,這樣可以進(jìn)行表的全量采集
操作。
  
  在官方文檔中,對這里的參數配置有比較詳細的說(shuō)明。
  #快照
  方案二:
  同時(shí)使用sqoop和增量采集
。
  該方案適用于表數據已經(jīng)很多,但binlog數據當前頻率不高的情況。
  值得注意的有兩點(diǎn):
  3)離線(xiàn)重刪條件
  數據落地后,通過(guò)json表映射binlog原創(chuàng )
數據,那么問(wèn)題來(lái)了,我們如何找到最新的一條數據呢?
  或許我們可以簡(jiǎn)單的認為,用剛才提取出來(lái)的ts_ms就好了,然后反演一下?
  在大多數情況下確實(shí)可以這樣做。
  但是筆者在實(shí)際開(kāi)發(fā)中發(fā)現這樣的情況并不能滿(mǎn)足所有的情況,因為在binlog中,可能真的有兩條數據ts_ms和PK相同,但確實(shí)不同。
  那么我們如何同時(shí)求解兩個(gè)數據呢?
  答案如上,我們只是建議提取所有binlog的元數據。
  選擇 *
  從
  (
  選擇 *,
  row_number() over(partition BY t.id ORDER BY t.`__ts_ms` DESC,t.`__file` DESC,cast(t.`__pos` AS int) DESC) AS order_by
  從測試 t
  WHERE dt='{pt}'
  AND hour='{now_hour}'
  ) t1
  在哪里 t1。order_by = 1
  解釋一下這條sql中row_number的情況:
  這樣的條件組合檢索到的數據是最新的。
  可能有讀者會(huì )問(wèn),如果刪除了這條數據,你這樣取回的數據不就錯了嗎?
  這個(gè)Debezium也有相應的操作,有相應的配置選項供你選擇如何處理刪除行為的binlog數據。
  作為大家的參考,筆者選擇了rewrite的參數配置,這樣上面的SQL最外層只需要判斷“delete = 'false'”是正確的數據即可。
  四、結構總結
  在技??術(shù)的選擇和整體與細節的結構上,筆者一直堅持一個(gè)原則——
  過(guò)程要盡量簡(jiǎn)單但不簡(jiǎn)單。數據鏈接越長(cháng),可能出錯的鏈接就越多。后期的加鎖問(wèn)題和運維也會(huì )非常困難。
  所以筆者在技術(shù)選型上也考慮了Flink+Kafka的方式,但是基于當時(shí)的現狀,筆者并沒(méi)有選擇這樣的技術(shù)選型,筆者也說(shuō)明了原因。
  總結一下,我當時(shí)對 Flink 的想法是,如果 Flink 沒(méi)有一個(gè)開(kāi)發(fā)和運維監控的平臺,可以作為一個(gè)臨時(shí)的解決方案。很容易出問(wèn)題,或者只是大家在這樣的程序框架下造輪子,越造越慢。而且后期的主要項目方向也沒(méi)有把Flink平臺提上日程,所以選擇的時(shí)候也是考慮了一部分未來(lái)的情況。
  所以,最后確定技術(shù)選型的時(shí)候,我并沒(méi)有選擇Flink。
  5.結論
  解決方案:在線(xiàn)工具導航(一)
  工具 123 - 1750 工具收錄
在整個(gè)工位
  
  本工具導航網(wǎng)站共收錄
1750個(gè)在線(xiàn)工具,包括轉換工具、在線(xiàn)制作、在線(xiàn)生成、在線(xiàn)查詢(xún)、圖片工具、檢測工具、PDF工具、SEO工具、站長(cháng)推薦、生活工具、學(xué)習工具、娛樂(lè )工具、站長(cháng)工具等。
  

匯總:文章實(shí)時(shí)采集最優(yōu)的方案?知乎|可供五十位兄弟

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 116 次瀏覽 ? 2022-11-24 20:34 ? 來(lái)自相關(guān)話(huà)題

  匯總:文章實(shí)時(shí)采集最優(yōu)的方案?知乎|可供五十位兄弟
  文章實(shí)時(shí)采集最優(yōu)的方案?知乎|、可供五十位兄弟姐妹大膽用、值得可喜的一點(diǎn)是,此前沒(méi)有類(lèi)似技術(shù)的書(shū),也沒(méi)有類(lèi)似的課程。所以你可以想做什么,就做什么。去而不返。(謝天笑)獲取更多java資訊,
  
  如果你以后想找軟件開(kāi)發(fā)相關(guān)的工作,或者至少當下找工作特別難,面試官特別挑剔。能夠自主做一個(gè)游戲引擎已經(jīng)非常難得。有這個(gè)游戲引擎在你寫(xiě)代碼,做app,做網(wǎng)站,做微信小程序都特別有利。當然,前提是你能把開(kāi)發(fā)這個(gè)引擎過(guò)程中遇到的每一個(gè)問(wèn)題都想得明白,真的要想明白你沒(méi)有三五年時(shí)間估計是做不好的。如果要我來(lái)說(shuō)的話(huà),以后的應該不會(huì )從事引擎相關(guān)的開(kāi)發(fā)。但是可以成為一個(gè)很好的程序員。
  純堆代碼不分實(shí)現與否都是在敷衍職業(yè)生涯前面半個(gè)階段。你用這種方式,你自己都可以干更多別的事情。比如可以做個(gè)非重度游戲引擎的thatgamekit。如果你喜歡。最后在十年后做一個(gè)不重度游戲引擎的android版本。
  
  此實(shí)習求職單位,所有人都要求20個(gè)月工作經(jīng)驗,但是滿(mǎn)足特定條件且個(gè)人認為不錯的25個(gè)月相對來(lái)說(shuō),你具備這些優(yōu)勢,所以建議你不要放棄這份工作,包括時(shí)間機會(huì )成本等等,實(shí)習的優(yōu)勢是經(jīng)驗可以復用,你做的東西只是個(gè)流水線(xiàn)或者別人的demo,并不會(huì )是真正的游戲引擎,也就是說(shuō),你的實(shí)習應該有轉正的機會(huì )的。這樣來(lái)看,留下和放棄都是不理智的,放棄你有更多選擇,留下可能你什么都不會(huì ),畢竟一年工作經(jīng)驗才算是初級程序員。
  還有其他幾個(gè)小建議1.可以多多搜集游戲引擎的資料,帶你入門(mén)比如原生類(lèi)或者unity啥的不錯的游戲引擎2.python,php,java什么的不用說(shuō),但是據我所知國內游戲引擎很少。你不想搞開(kāi)發(fā)的話(huà)用個(gè)java也是可以的。最后建議你都工作吧,做游戲引擎做引擎很重要。別太浪費時(shí)間,把興趣當工作,最后會(huì )發(fā)現興趣都變成痛苦的事業(yè)了。 查看全部

  匯總:文章實(shí)時(shí)采集最優(yōu)的方案?知乎|可供五十位兄弟
  文章實(shí)時(shí)采集最優(yōu)的方案?知乎|、可供五十位兄弟姐妹大膽用、值得可喜的一點(diǎn)是,此前沒(méi)有類(lèi)似技術(shù)的書(shū),也沒(méi)有類(lèi)似的課程。所以你可以想做什么,就做什么。去而不返。(謝天笑)獲取更多java資訊,
  
  如果你以后想找軟件開(kāi)發(fā)相關(guān)的工作,或者至少當下找工作特別難,面試官特別挑剔。能夠自主做一個(gè)游戲引擎已經(jīng)非常難得。有這個(gè)游戲引擎在你寫(xiě)代碼,做app,做網(wǎng)站,做微信小程序都特別有利。當然,前提是你能把開(kāi)發(fā)這個(gè)引擎過(guò)程中遇到的每一個(gè)問(wèn)題都想得明白,真的要想明白你沒(méi)有三五年時(shí)間估計是做不好的。如果要我來(lái)說(shuō)的話(huà),以后的應該不會(huì )從事引擎相關(guān)的開(kāi)發(fā)。但是可以成為一個(gè)很好的程序員。
  純堆代碼不分實(shí)現與否都是在敷衍職業(yè)生涯前面半個(gè)階段。你用這種方式,你自己都可以干更多別的事情。比如可以做個(gè)非重度游戲引擎的thatgamekit。如果你喜歡。最后在十年后做一個(gè)不重度游戲引擎的android版本。
  
  此實(shí)習求職單位,所有人都要求20個(gè)月工作經(jīng)驗,但是滿(mǎn)足特定條件且個(gè)人認為不錯的25個(gè)月相對來(lái)說(shuō),你具備這些優(yōu)勢,所以建議你不要放棄這份工作,包括時(shí)間機會(huì )成本等等,實(shí)習的優(yōu)勢是經(jīng)驗可以復用,你做的東西只是個(gè)流水線(xiàn)或者別人的demo,并不會(huì )是真正的游戲引擎,也就是說(shuō),你的實(shí)習應該有轉正的機會(huì )的。這樣來(lái)看,留下和放棄都是不理智的,放棄你有更多選擇,留下可能你什么都不會(huì ),畢竟一年工作經(jīng)驗才算是初級程序員。
  還有其他幾個(gè)小建議1.可以多多搜集游戲引擎的資料,帶你入門(mén)比如原生類(lèi)或者unity啥的不錯的游戲引擎2.python,php,java什么的不用說(shuō),但是據我所知國內游戲引擎很少。你不想搞開(kāi)發(fā)的話(huà)用個(gè)java也是可以的。最后建議你都工作吧,做游戲引擎做引擎很重要。別太浪費時(shí)間,把興趣當工作,最后會(huì )發(fā)現興趣都變成痛苦的事業(yè)了。

解決方案:微信小游戲直播在A(yíng)ndroid端的跨進(jìn)程渲染推流實(shí)踐

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 142 次瀏覽 ? 2022-11-24 13:40 ? 來(lái)自相關(guān)話(huà)題

  解決方案:微信小游戲直播在A(yíng)ndroid端的跨進(jìn)程渲染推流實(shí)踐
  本文由微信開(kāi)發(fā)團隊工程師“virwu”分享。
  1 簡(jiǎn)介
  近期,微信小游戲支持一鍵播放視頻號。將微信升級到最新版本后,打開(kāi)騰訊小游戲(如跳轉、歡樂(lè )斗地主等),在右上角的菜單中可以看到開(kāi)始直播的按鈕。按鈕成為游戲主播(如下圖所示)。
  但出于性能、安全等一系列考慮,微信小游戲運行在獨立進(jìn)程中,視頻號直播相關(guān)的模塊不會(huì )在該環(huán)境下初始化。這意味著(zhù)小游戲的音視頻數據必須跨進(jìn)程傳輸到主進(jìn)程進(jìn)行流式傳輸,這給我們實(shí)現小游戲的直播帶來(lái)了一系列的挑戰。
 ?。ū疚耐桨l(fā)表于:)
  2.系列文章
  本文是系列文章中的第 5 篇:
  《系統聊天技術(shù)(一):美拍直播彈幕系統的實(shí)時(shí)推送技術(shù)實(shí)踐之路》 《系統聊天技術(shù)(二):阿里電商IM消息平臺,在群聊和直播場(chǎng)景下的技術(shù)實(shí)踐直播系統聊天技術(shù)(三):微信直播聊天室單間1500萬(wàn)在線(xiàn)消息的消息架構演進(jìn)》 《直播系統聊天技術(shù)(四):微信直播聊天室實(shí)時(shí)消息系統架構演進(jìn)實(shí)踐》百度直播海量用戶(hù)》《直播系統聊天技術(shù)(五):微信小游戲直播在A(yíng)ndroid端的跨進(jìn)程渲染與推流實(shí)踐》(*篇)3.視頻采集與推流
  3.1 屏幕截圖?
  小游戲直播的本質(zhì)是將主播手機屏幕上的內容展示給觀(guān)眾。自然而然,我們可以想到利用系統的錄屏接口MediaProjection來(lái)采集視頻數據。
  該方案具有以下優(yōu)點(diǎn):
  但最終這個(gè)方案被否決了,主要是出于以下考慮:
  轉念一想,既然小游戲的渲染完全由我們來(lái)控制,那么為了更好的直播體驗,是否可以將小游戲渲染的內容跨進(jìn)程傳輸到主進(jìn)程進(jìn)行推流呢?
  3.2 小游戲渲染架構
  為了更好的描述我們采用的方案,這里簡(jiǎn)單介紹一下小游戲的渲染架構:
  可以看到圖中左半部分代表前臺的小游戲流程,其中MagicBrush是小游戲渲染引擎,從小游戲代碼接收渲染指令,將畫(huà)面渲染到由小游戲提供的Surface上屏幕上的 SurfaceView。主進(jìn)程在后臺不參與整個(gè)過(guò)程。
  3.3 小游戲錄屏時(shí)的情況
  小游戲之前已經(jīng)支持錄制游戲內容,原理上和直播類(lèi)似,都需要獲取當前小游戲的畫(huà)面內容。
  開(kāi)啟錄屏后,小游戲會(huì )切換到以下渲染模式:
  可以看出MagicBrush的輸出目標不再是屏幕上的SurfaceView,而是Renderer生成的SurfaceTexture。
  這里簡(jiǎn)單介紹一下Renderer的作用:
  Renderer是一個(gè)獨立的渲染模塊,代表了一個(gè)獨立的GL環(huán)境。它可以創(chuàng )建SurfaceTexture作為輸入,接收到SurfaceTexture的onFrameAvailable回調后,通過(guò)updateTexImage方法將圖像數據轉換為GL_TEXTURE_EXTERNAL_OES類(lèi)型的紋理參與后續的渲染過(guò)程,并可以將渲染結果輸出到另一個(gè)Surface。
  圖中的流程一步步解釋如下:
  1)MagicBrush接收到小游戲代碼調用的渲染指令,將小游戲的內容渲染到第一個(gè)Renderer創(chuàng )建的SurfaceTexture上;
  2)然后這個(gè)Renderer做了兩件事:
  3)第二個(gè)Renderer將第一個(gè)Renderer提供的紋理渲染到mp4編碼器提供的輸入SurfaceTexture中,最終編碼器編碼生成mp4錄屏文件。
  3.4 改造錄屏解決方案?
  可以看出,在錄屏方案中,一個(gè)Renderer負責將游戲內容上傳到屏幕上,另一個(gè)Renderer將相同的紋理渲染到編碼器,用于錄制游戲內容。直播其實(shí)也差不多。是不是只要把編碼器換成直播的推流模塊就夠了?
  沒(méi)錯,但是還漏掉了一個(gè)關(guān)鍵環(huán)節:streaming模塊運行在主進(jìn)程中,我們需要跨進(jìn)程傳遞圖片數據!如何跨進(jìn)程?
  說(shuō)到跨進(jìn)程: 可能我們腦海中跳出的第一反應就是Binder、Socket、共享內存等傳統的IPC通信方式。但是仔細想想,系統提供的SurfaceView是一個(gè)非常特殊的View組件。它不通過(guò)傳統的View樹(shù)參與繪制,而是通過(guò)系統的SurfaceFlinger直接合成到屏幕上,SurfaceFlinger運行在系統進(jìn)程上。我們在SurfaceView提供的Surface上繪制的內容必須能夠跨進(jìn)程傳遞,而Surface跨進(jìn)程的方法很簡(jiǎn)單——它本身實(shí)現了Parcelable接口,也就是說(shuō)我們可以使用Binder直接傳遞Surface對象跨進(jìn)程。
  所以我們有以下初步計劃:
  可以看出,第三步不再渲染到mp4編碼器,而是渲染到從主進(jìn)程跨進(jìn)程傳過(guò)來(lái)的Surface。主進(jìn)程的Surface由一個(gè)Renderer創(chuàng )建的SurfaceTexture封裝而成?,F在小游戲進(jìn)程將圖像渲染到這個(gè) Surface 作為生產(chǎn)者。當一幀渲染完成后,主進(jìn)程的SurfaceTexture會(huì )收到一個(gè)onFrameAvailable回調通知圖像數據已經(jīng)準備好,然后通過(guò)updateTexImage獲取對應的紋理數據。這里,由于直播模塊只支持GL_TEXTURE_2D類(lèi)型的貼圖,所以這里主進(jìn)程Renderer會(huì )將GL_TEXTURE_EXTERNAL_OES轉換成GL_TEXTURE_2D貼圖,然后發(fā)送給直播編碼器,完成推流過(guò)程。
  經(jīng)過(guò)一番改造:上述方案已經(jīng)成功將小游戲渲染到屏幕上,并傳遞給主進(jìn)程進(jìn)行流式傳輸,但這真的是最優(yōu)方案嗎?
  想了想,發(fā)現上面的解決方案中Renderer太多了。小游戲進(jìn)程中有兩個(gè),一個(gè)是渲染到屏幕上,一個(gè)是跨進(jìn)程渲染到Surface,還有一個(gè)是在主進(jìn)程中轉換紋理調用流模塊。如果要同時(shí)支持錄屏,需要在小游戲進(jìn)程中再啟動(dòng)一個(gè)Renderer渲染到mp4編碼器。過(guò)多的Renderer意味著(zhù)過(guò)多的額外渲染開(kāi)銷(xiāo),會(huì )影響小游戲的性能。
  3.5 跨進(jìn)程渲染方案
  
  縱觀(guān)整個(gè)流程,其實(shí)只需要主進(jìn)程的Renderer。小游戲額外使用的Render無(wú)非是為了同時(shí)滿(mǎn)足同屏渲染和跨進(jìn)程傳輸。constraints,那么我們就簡(jiǎn)單的把小游戲進(jìn)程的入屏Surface傳給主進(jìn)程進(jìn)行入屏渲染!
  最終,我們將小游戲流程中的兩個(gè)冗余Renderer大幅砍掉。MagicBrush直接渲染到跨進(jìn)程傳遞給Surface,而主進(jìn)程的Renderer負責將紋理渲染到跨進(jìn)程以及紋理類(lèi)型轉換。傳輸的小游戲進(jìn)程在屏幕Surface上,實(shí)現畫(huà)面在屏幕上的渲染。
  最終需要的Renderer數量從原來(lái)的3個(gè)減少到需要的1個(gè),性能提升的同時(shí)架構更加清晰。
  以后需要同時(shí)支持錄屏的時(shí)候,稍微改動(dòng)一下,把mp4編碼器的輸入SurfaceTexture跨進(jìn)程傳給主進(jìn)程,然后給它添加一個(gè)Renderer渲染紋理(如圖下圖)。
  3.6 兼容性和性能
  說(shuō)到這里,不禁有些擔心。Surface方案的跨進(jìn)程傳輸和渲染會(huì )不會(huì )有兼容性問(wèn)題?
  其實(shí)雖然不常見(jiàn),但是官方文檔上說(shuō)是可以跨進(jìn)程抽取的:
  SurfaceView 結合了表面和視圖。SurfaceView 的視圖組件由 SurfaceFlinger(而不是應用程序)合成,支持從單獨的線(xiàn)程/進(jìn)程進(jìn)行渲染,并與應用程序 UI 渲染隔離。
  而Chrome和Android O之后的系統WebView都有使用跨進(jìn)程渲染的方案。
  我們的兼容性測試覆蓋了Android 5.1及之后的所有主流系統版本和機型。除了Android 5.flow跨進(jìn)程渲染黑屏的問(wèn)題。
  性能方面:我們使用WebGL Aquarium的demo進(jìn)行性能測試。我們可以看到對平均幀率的影響約為15%。由于渲染和流式處理,主進(jìn)程的 CPU 有所增加。奇怪的是,小游戲進(jìn)程的CPU開(kāi)銷(xiāo)卻減少了。減少的原因尚未得到證實(shí)。疑似與屏幕操作移至主進(jìn)程有關(guān),不排除統計方法的影響。
  3.7 總結
  為了不記錄宿主端的評論插件,我們先從小游戲的渲染流程說(shuō)起。借助Surface的跨進(jìn)程渲染和傳輸圖像的能力,我們將渲染和上傳小游戲的過(guò)程移到了主進(jìn)程中,同時(shí)生成紋理進(jìn)行流式傳輸。兼容性和性能滿(mǎn)足要求。
  4. 音頻采集和流式傳輸
  4.1 方案選擇
  在音頻采集方案中,我們注意到Android 10及以上系統提供了AudioPlaybackCapture方案,可以讓我們在一定范圍內采集系統音頻。當時(shí)的一些預研結論如下。
  捕獲者 - 捕獲發(fā)生的條件:
  被俘方 - 可以被俘的條件:
  總的來(lái)說(shuō):Android 10及以上可以使用AudioPlaybackCapture方案進(jìn)行音頻采集,但考慮到Android 10的系統版本限制太多,我們最終選擇了自己對小游戲播放的所有音頻進(jìn)行采集和混音。
  4.2 跨進(jìn)程音頻數據傳輸
  現在,老問(wèn)題又一次出現在我們面前:小游戲中混入的音頻數據在小游戲進(jìn)程中,我們需要將數據傳輸到主進(jìn)程中進(jìn)行流式處理。
  它不同于一般的用于方法調用的IPC跨進(jìn)程通信:在這種場(chǎng)景下,我們需要頻繁(每40毫秒)傳輸大數據塊(16毫秒的數據量約為8k)。
  同時(shí):由于直播的特點(diǎn),這個(gè)跨進(jìn)程傳輸過(guò)程的延遲需要盡可能低,否則會(huì )導致音視頻不同步。
  為了實(shí)現上述目標:我們測試了Binder、LocalSocket、MMKV、SharedMemory、Pipe等幾種IPC方案。在搭建的測試環(huán)境中,我們模擬小游戲過(guò)程中真實(shí)的音頻傳輸過(guò)程,每16毫秒發(fā)送一次序列化數據對象。數據對象的大小分為三個(gè)級別:3k/4M/10M,發(fā)送前存儲時(shí)間戳在對象中;以主進(jìn)程接收到數據并反序列化成數據對象的時(shí)刻為結束時(shí)間,計算傳輸延遲。
  最終得到如下結果:
  注:其中XIPCInvoker(Binder)和MMKV傳輸大量數據耗時(shí)過(guò)長(cháng),結果不顯示。
  各方案分析如下(stall rate表示延遲&gt;2倍平均延遲且&gt;10毫秒的數據占總數的比例):
  可以看出,LocalSocket方案在各個(gè)情況下的傳輸延時(shí)表現都非常好。造成差異的主要原因是裸二進(jìn)制數據在跨進(jìn)程傳輸到主進(jìn)程后,仍然需要進(jìn)行數據復制操作,將其反序列化為數據對象。在使用LocalSocket時(shí),可以使用ObjectStream和Serializeable來(lái)實(shí)現流式復制。相比其他方案,一次性接收數據,然后復制,節省了很多時(shí)間(當然其他方案也可以設計成分塊流,同時(shí)復制,但是實(shí)現起來(lái)有一定的成本,它不像 ObjectStream 那樣穩定和易于使用)。
  我們還測試了LocalSocket的兼容性和性能,沒(méi)有出現傳輸失敗和斷開(kāi)連接的情況。只有三星S6的平均延遲超過(guò)了10毫秒,其他機型的延遲都在1毫秒左右,可以達到我們的預期。
  4.3 LocalSocket 的安全性
  常用的Binder的跨進(jìn)程安全是由系統實(shí)現的認證機制來(lái)保證的。LocalSocket是對Unix域套接字的封裝,所以要考慮它的安全性。
  《Android Unix Domain Sockets的誤用及安全隱患》一文詳細分析了在A(yíng)ndroid中使用LocalSocket帶來(lái)的安全風(fēng)險。
  PS:論文原文附件下載(請從本鏈接4.3節下載:)
  論文概要:由于LocalSocket本身缺乏認證機制,任何應用程序都可以連接,從而攔截數據或向接收端發(fā)送非法數據而導致異常。
  針對這個(gè)特點(diǎn),我們可以做兩種防御方式:
  4.4 總結
  為了兼容Android 10以下機型和直播,我們選擇自己處理小游戲的音頻采集,通過(guò)對比評測,我們選擇了LocalSocket作為跨進(jìn)程音頻數據傳輸的方案,滿(mǎn)足了直播在時(shí)延方面的需求。
  同時(shí),通過(guò)一些對策,可以有效規避LocalSocket的安全風(fēng)險。
  
  5.多進(jìn)程帶來(lái)的問(wèn)題
  回過(guò)頭來(lái)看,雖然整個(gè)解決方案看起來(lái)比較順利,但是由于多進(jìn)程的原因,在實(shí)現過(guò)程中還是有很多坑。以下兩個(gè)是主要的。
  5.1 glFinish導致渲染幀率嚴重下降
  在實(shí)現跨進(jìn)程渲染流解決方案后,我們進(jìn)行了一輪性能和兼容性測試。在測試過(guò)程中,我們發(fā)現部分中低端機型的幀率下降非常嚴重(如下圖)。
  重現后查看小游戲進(jìn)程渲染的幀率(即小游戲進(jìn)程繪制到跨進(jìn)程Surface的幀率),發(fā)現可以達到直播時(shí)的幀率未啟用廣播。
  我們使用的測試軟件PerfDog記錄了屏幕Surface的幀率,可以看出性能下降不是因為小游戲代碼執行效率低導致直播開(kāi)銷(xiāo)過(guò)高,而是主進(jìn)程效率低下造成的在屏幕渲染器上。
  于是我們剖析了直播時(shí)主進(jìn)程的運行效率,發(fā)現耗時(shí)函數是glFinish。
  并且有兩個(gè)電話(huà):
  如果去掉第一個(gè)調用,這次Live SDK里面的時(shí)間會(huì )超過(guò)100毫秒。
  要理解為什么這個(gè) GL 命令需要這么長(cháng)時(shí)間,讓我們看一下它的描述:
  直到所有先前調用的 GL 命令的效果完成后,glFinish 才會(huì )返回。
  描述很簡(jiǎn)單:它會(huì )阻塞,直到所有先前調用的 GL 指令都完成。
  所以好像之前的GL指令太多了?但是,GL指令隊列是線(xiàn)程隔離的。在主進(jìn)程的Renderer線(xiàn)程中,在glFinish之前只會(huì )執行極少量的紋理類(lèi)型轉換的GL指令。從騰訊云的同學(xué)那里了解到,本帖不會(huì )使用推流接口。線(xiàn)程執行了很多GL指令,這么少的GL指令怎么會(huì )讓glFinish阻塞這么久?等等,很多 GL 指令?小游戲進(jìn)程此時(shí)不是在執行大量的GL指令嗎?會(huì )不會(huì )是小游戲進(jìn)程中GL指令較多導致主進(jìn)程的glFinsih耗時(shí)過(guò)長(cháng)?
  這樣的猜測不無(wú)道理:雖然GL指令隊列是線(xiàn)程隔離的,但是處理指令的GPU只有一個(gè)。一個(gè)進(jìn)程中過(guò)多的 GL 指令會(huì )導致另一個(gè)進(jìn)程在需要 glFinish 時(shí)阻塞時(shí)間過(guò)長(cháng)。谷歌沒(méi)有找到相關(guān)的描述,需要自己驗證一下這個(gè)猜測。
  重新觀(guān)察上面的測試數據:發(fā)現直播能到60幀的時(shí)候,直播結束后能到60幀左右。這是否意味著(zhù)在小游戲GPU負載低的情況下,glFinish的耗時(shí)也會(huì )減少呢??
  在性能下降嚴重的模型上:保持其他變量不變,嘗試低負載運行一個(gè)小游戲,發(fā)現glFinsih的耗時(shí)成功下降到10毫秒左右,證實(shí)了上面的猜測——確實(shí)是小游戲正在執行的游戲進(jìn)程大量的GL指令阻塞了主進(jìn)程glFinish的執行。
  如何解決?小游戲進(jìn)程的高負載是改不了的,那小游戲可不可以在一幀渲染完就停止,等主進(jìn)程的glFinish完成再渲染下一幀呢?
  這里做了各種嘗試:OpenGL的glFence同步機制不能跨進(jìn)程使用;由于GL指令是異步執行的,所以通過(guò)跨進(jìn)程通信鎖定小游戲的GL線(xiàn)程,并不能保證主進(jìn)程執行g(shù)lFinish指令時(shí)小游戲進(jìn)程的進(jìn)度已經(jīng)執行完畢,這只能通過(guò)以下方式來(lái)保證在小游戲進(jìn)程中加入glFinish,但這會(huì )使雙緩沖機制失效,導致小游戲渲染幀率大幅下降。
  既然避免不了glFinish帶來(lái)的阻塞,那我們回到問(wèn)題的開(kāi)頭:為什么需要glFinish?由于雙緩沖機制的存在,一般來(lái)說(shuō)不需要glFinish等待前面的繪制完成,否則雙緩沖就失去了意義。在兩次glFinish調用中,可以直接去掉第一個(gè)紋理處理調用。經(jīng)過(guò)溝通,發(fā)現引入了第二次騰訊云SDK調用,解決了一個(gè)歷史問(wèn)題,可以嘗試去掉。在騰訊云同學(xué)的幫助下,去掉glFinish后,渲染幀率終于和小游戲的輸出幀率一致了。經(jīng)過(guò)兼容性和性能測試,沒(méi)有發(fā)現去掉glFinish導致的問(wèn)題。
  這個(gè)問(wèn)題的最終解決方案很簡(jiǎn)單:但是在分析問(wèn)題原因的過(guò)程中其實(shí)做了很多實(shí)驗。同一個(gè)應用中一個(gè)GPU負載高的進(jìn)程會(huì )影響到另一個(gè)進(jìn)程耗時(shí)的glFinish這種場(chǎng)景確實(shí)是非常困難的。很少見(jiàn),參考資料也不多。這個(gè)過(guò)程也讓我深刻體會(huì )到glFinish使雙緩沖機制失效帶來(lái)的性能影響是巨大的。在使用OpenGL進(jìn)行渲染和繪圖時(shí),我應該非常謹慎地使用glFinish。
  5.2 后臺進(jìn)程優(yōu)先級問(wèn)題
  測試過(guò)程中:我們發(fā)現無(wú)論使用多少幀率向直播SDK發(fā)送圖片,觀(guān)眾看到的圖片幀率始終只有16幀左右。排除背景原因后,我們發(fā)現編碼器的幀率不夠。經(jīng)騰訊云同學(xué)測試,同一進(jìn)程編碼幀率可以達到設定的30幀,所以還是多進(jìn)程導致的問(wèn)題。在這里,編碼是一個(gè)很重的操作,比較消耗CPU資源,所以我們首先懷疑的是后臺進(jìn)程的優(yōu)先級。
  要確認問(wèn)題:
  總結一下:可以確認幀率下降是后臺進(jìn)程(以及它擁有的線(xiàn)程)的優(yōu)先級低導致的。
  在微信中提高線(xiàn)程優(yōu)先級是很常見(jiàn)的。比如小程序的JS線(xiàn)程和小游戲的渲染線(xiàn)程,在運行時(shí)都會(huì )通過(guò)android.os.Process.setThreadPriority方法設置線(xiàn)程的優(yōu)先級。騰訊云SDK的同學(xué)很快就給我們提供了設置線(xiàn)程優(yōu)先級的接口,但是實(shí)際運行的時(shí)候發(fā)現編碼幀率只從16幀增加到18幀左右。什么地方出了錯?
  前面提到:我們通過(guò)chrt命令設置線(xiàn)程優(yōu)先級是有效的,但是android.os.Process.setThreadPriority方法設置的線(xiàn)程優(yōu)先級對應的是renice命令設置的nice值。仔細看了chrt手冊,發(fā)現之前測試的理解是錯誤的。我使用命令chrt -p [pid] [priority]直接設置了優(yōu)先級,但是沒(méi)有設置調度策略參數,導致線(xiàn)程的調度策略從Linux默認的SCHED_OTHER改為SCHED_RR,即該命令的默認設置,而SCHED_RR是一種“實(shí)時(shí)策略”,導致線(xiàn)程的調度優(yōu)先級變得很高。
  其實(shí):renice設置的線(xiàn)程優(yōu)先級(即android.os.Process.setThreadPriority)對于后臺進(jìn)程擁有的線(xiàn)程幫助不大。
  事實(shí)上,已經(jīng)有人對此進(jìn)行了解釋?zhuān)?br />   為了解決這個(gè)問(wèn)題,Android 還以一種簡(jiǎn)單的方式使用 Linux cgroups 來(lái)創(chuàng )建更嚴格的前臺與后臺調度。前臺/默認 cgroup 允許正常進(jìn)行線(xiàn)程調度。然而,后臺 cgroup 只應用了總 CPU 時(shí)間的一小部分的限制,該時(shí)間可用于該 cgroup 中的所有線(xiàn)程。因此,如果該百分比為 5%,并且您有 10 個(gè)后臺線(xiàn)程和一個(gè)前臺線(xiàn)程都想運行,那么這 10 個(gè)后臺線(xiàn)程加在一起最多只能占用前臺可用 CPU 周期的 5%。(當然,如果沒(méi)有前臺線(xiàn)程想要運行,后臺線(xiàn)程可以使用所有可用的 CPU 周期。)
  關(guān)于線(xiàn)程優(yōu)先級的設置,有興趣的同學(xué)可以看看另一位大佬的文章:《Android的詭異陷阱——設置線(xiàn)程優(yōu)先級導致的微信卡頓悲劇》。
  最后:為了提高編碼幀率,防止后臺主進(jìn)程被kill掉,我們最終決定在直播時(shí)在主進(jìn)程中創(chuàng )建一個(gè)前臺Service。
  六、總結與展望
  多進(jìn)程是一把雙刃劍。在給我們帶來(lái)隔離和性能優(yōu)勢的同時(shí),也給我們帶來(lái)了跨進(jìn)程通信的問(wèn)題。幸運的是,借助系統Surface能力和各種跨進(jìn)程解決方案,我們可以更好地解決小游戲直播中遇到的問(wèn)題。
  當然:解決跨進(jìn)程問(wèn)題最好的辦法就是避免跨進(jìn)程。我們也考慮過(guò)在小游戲的過(guò)程中運行視頻號直播的推流模塊的方案,但是考慮到改造成本,我們沒(méi)有選擇這個(gè)方案。
  同時(shí):本次SurfaceView跨進(jìn)程渲染的實(shí)踐對其他業(yè)務(wù)也有一定的參考價(jià)值——對于一些內存壓力大或者安全風(fēng)險高的場(chǎng)景,需要SurfaceView渲染繪制,邏輯可以放在一個(gè)獨立的進(jìn)程,然后通過(guò)跨進(jìn)程渲染的方式繪制到主進(jìn)程的View上,在獲得獨立進(jìn)程優(yōu)勢的同時(shí),也避免了進(jìn)程間跳轉帶來(lái)的體驗碎片化。
  手把手搭建一個(gè)簡(jiǎn)單的直播系統》《淘寶直播技術(shù)干貨:高清低延遲實(shí)時(shí)視頻直播技術(shù)解密》《技術(shù)干貨:實(shí)時(shí)視頻直播首屏優(yōu)化實(shí)踐》 400ms》《新浪微博技術(shù)分享:微博實(shí)時(shí)直播百萬(wàn)級高并發(fā)架構實(shí)踐》《視頻直播實(shí)時(shí)混音技術(shù)原理與實(shí)踐總結》《七牛云技術(shù)分享:使用QUIC協(xié)議》實(shí)現0卡頓的實(shí)時(shí)視頻直播!》《近期火爆的實(shí)時(shí)直播問(wèn)答系統實(shí)現思路與技術(shù)難點(diǎn)分享》》微信朋友圈千億訪(fǎng)問(wèn)量背后的技術(shù)挑戰與實(shí)踐總結》《微信團隊分享:微信移動(dòng)端全文搜索多拼音字符問(wèn)題解決方案》《微信團隊分享:高性能通用iOS版微信key-value組件技術(shù)實(shí)踐》》微信團隊分享:iOS版微信如何防止特殊字符導致爆群,APP閃退?》 《微信團隊原創(chuàng )分享:iOS版微信的內存監控系統技術(shù)實(shí)踐》 《iOS后臺喚醒實(shí)踐:微信收到和到達語(yǔ)音提醒技術(shù)總結》 《微信團隊分享:視頻圖像的超分辨率技術(shù)原理及應用場(chǎng)景》 》》微信團隊分享:微信團隊分享:iOS版微信高性能通用鍵值組件技術(shù)實(shí)踐》 《微信團隊分享:iOS版微信如何防止特殊字符導致的爆群和APP閃退?》 《微信團隊原創(chuàng )分享:iOS版微信的內存監控系統技術(shù)實(shí)踐》 《iOS后臺喚醒實(shí)踐:微信收到和到達語(yǔ)音提醒技術(shù)總結》 《微信團隊分享:視頻圖像的超分辨率技術(shù)原理及應用場(chǎng)景》 》 《微信團隊分享:解密微信每天幾億次實(shí)時(shí)音視頻聊天背后的技術(shù)》 《微信團隊分享:微信安卓版小視頻編解碼器填補的那些坑》
  . . . 《來(lái)龍去脈》《月活8.89億的超級IM微信如何做Android端兼容性測試》《一文搞定微信開(kāi)源移動(dòng)數據庫組件WCDB!》《技術(shù)專(zhuān)訪(fǎng)微信客戶(hù)端團隊負責人:如何啟動(dòng)客戶(hù)端性能監控與優(yōu)化》《基于時(shí)序海量數據冷熱分層架構的微信后臺設計實(shí)踐》《微信團隊原創(chuàng )分享:Android版微信臃腫難點(diǎn)與解決方案》 《模塊化實(shí)踐之路》《微信后臺團隊:異步消息隊列優(yōu)化升級微信后臺分享》《微信團隊原創(chuàng )分享:微信客戶(hù)端SQLite數據庫損壞修復實(shí)踐》《微信Mars:微信內部使用的網(wǎng)絡(luò )層封裝庫,即將開(kāi)源》《如約而至:移動(dòng)端微信自用End-IM網(wǎng)絡(luò )層跨平臺組件庫Mars》已正式開(kāi)源》 《開(kāi)源libco庫:支撐8億微信用戶(hù)單機千萬(wàn)級連接的后臺框架基石【源碼下載】》 《微信新一代通信安全解決方案:基于在 TLS1 上?!段⑿艌F隊分享:極致優(yōu)化,iOS版微信編譯速度提升3倍實(shí)踐總結》《IM“掃一掃”》功能容易做嗎?看微信“掃一掃識物”完整技術(shù)實(shí)現《微信團隊分享:微信支付代碼重構帶來(lái)的移動(dòng)端軟件架構思考》《IM開(kāi)發(fā)寶典:史上最全,微信各種功能參數》數據與邏輯規律總結》《微信團隊分享:微信直播間單間1500萬(wàn)在線(xiàn)聊天室的消息架構演進(jìn)》&gt;&gt;更多類(lèi)似文章...
 ?。ū疚耐桨l(fā)表于:)返回搜狐查看更多
  編輯:
  近期發(fā)布:中恒電國際融媒體平臺,多端傳播,全媒體發(fā)布
  
  媒體融合技術(shù)平臺-內容管理系統是順應全媒體時(shí)代和媒體融合發(fā)展的創(chuàng )新媒體發(fā)布管理平臺。平臺重構新聞采編生成流程,升級采編系統,真正實(shí)現“一次采編、多生成、多終端傳播、全媒體發(fā)布”。
  平臺系統系統、實(shí)用、可擴展、經(jīng)濟、技術(shù)先進(jìn)、成熟、安全;基于JAVA語(yǔ)言開(kāi)發(fā),采用自主研發(fā)的Enorth StructsX架構設計,具有良好的跨平臺性能??芍С諻indows、Linux等多種操作系統平臺,支持Oracle、MySQL等多種主流數據庫管理系統,可部署到Tomcat、Weblogic等多種應用服務(wù)器平臺。
  
  系統瀏覽器兼容性好,支持主流瀏覽器使用,包括Firefox、Chrome、IE、360瀏覽器等瀏覽器??沙休d億級數據量,支持高并發(fā)、高可用,配備多重安全策略。系統支持中文、英文、俄文、維吾爾文、哈薩克文等多種語(yǔ)言進(jìn)行管理和發(fā)布,支持使用utf-8編碼。手機端頁(yè)面,客戶(hù)端支持ios6.0及以上系統,Android4.0及以上系統。系統提供標準化接口規范,預留標準化二次開(kāi)發(fā)接口,方便日后平臺功能擴展及與第三方軟件系統對接。
  媒體融合技術(shù)平臺支持網(wǎng)站、手機網(wǎng)站、APP客戶(hù)端、微博等主流社交平臺內容同步管理,實(shí)現內容全面覆蓋、多終端覆蓋。新聞發(fā)布由過(guò)去的一對一發(fā)布轉變?yōu)橐粚Χ喟l(fā)布。 查看全部

  解決方案:微信小游戲直播在A(yíng)ndroid端的跨進(jìn)程渲染推流實(shí)踐
  本文由微信開(kāi)發(fā)團隊工程師“virwu”分享。
  1 簡(jiǎn)介
  近期,微信小游戲支持一鍵播放視頻號。將微信升級到最新版本后,打開(kāi)騰訊小游戲(如跳轉、歡樂(lè )斗地主等),在右上角的菜單中可以看到開(kāi)始直播的按鈕。按鈕成為游戲主播(如下圖所示)。
  但出于性能、安全等一系列考慮,微信小游戲運行在獨立進(jìn)程中,視頻號直播相關(guān)的模塊不會(huì )在該環(huán)境下初始化。這意味著(zhù)小游戲的音視頻數據必須跨進(jìn)程傳輸到主進(jìn)程進(jìn)行流式傳輸,這給我們實(shí)現小游戲的直播帶來(lái)了一系列的挑戰。
 ?。ū疚耐桨l(fā)表于:)
  2.系列文章
  本文是系列文章中的第 5 篇:
  《系統聊天技術(shù)(一):美拍直播彈幕系統的實(shí)時(shí)推送技術(shù)實(shí)踐之路》 《系統聊天技術(shù)(二):阿里電商IM消息平臺,在群聊和直播場(chǎng)景下的技術(shù)實(shí)踐直播系統聊天技術(shù)(三):微信直播聊天室單間1500萬(wàn)在線(xiàn)消息的消息架構演進(jìn)》 《直播系統聊天技術(shù)(四):微信直播聊天室實(shí)時(shí)消息系統架構演進(jìn)實(shí)踐》百度直播海量用戶(hù)》《直播系統聊天技術(shù)(五):微信小游戲直播在A(yíng)ndroid端的跨進(jìn)程渲染與推流實(shí)踐》(*篇)3.視頻采集與推流
  3.1 屏幕截圖?
  小游戲直播的本質(zhì)是將主播手機屏幕上的內容展示給觀(guān)眾。自然而然,我們可以想到利用系統的錄屏接口MediaProjection來(lái)采集視頻數據。
  該方案具有以下優(yōu)點(diǎn):
  但最終這個(gè)方案被否決了,主要是出于以下考慮:
  轉念一想,既然小游戲的渲染完全由我們來(lái)控制,那么為了更好的直播體驗,是否可以將小游戲渲染的內容跨進(jìn)程傳輸到主進(jìn)程進(jìn)行推流呢?
  3.2 小游戲渲染架構
  為了更好的描述我們采用的方案,這里簡(jiǎn)單介紹一下小游戲的渲染架構:
  可以看到圖中左半部分代表前臺的小游戲流程,其中MagicBrush是小游戲渲染引擎,從小游戲代碼接收渲染指令,將畫(huà)面渲染到由小游戲提供的Surface上屏幕上的 SurfaceView。主進(jìn)程在后臺不參與整個(gè)過(guò)程。
  3.3 小游戲錄屏時(shí)的情況
  小游戲之前已經(jīng)支持錄制游戲內容,原理上和直播類(lèi)似,都需要獲取當前小游戲的畫(huà)面內容。
  開(kāi)啟錄屏后,小游戲會(huì )切換到以下渲染模式:
  可以看出MagicBrush的輸出目標不再是屏幕上的SurfaceView,而是Renderer生成的SurfaceTexture。
  這里簡(jiǎn)單介紹一下Renderer的作用:
  Renderer是一個(gè)獨立的渲染模塊,代表了一個(gè)獨立的GL環(huán)境。它可以創(chuàng )建SurfaceTexture作為輸入,接收到SurfaceTexture的onFrameAvailable回調后,通過(guò)updateTexImage方法將圖像數據轉換為GL_TEXTURE_EXTERNAL_OES類(lèi)型的紋理參與后續的渲染過(guò)程,并可以將渲染結果輸出到另一個(gè)Surface。
  圖中的流程一步步解釋如下:
  1)MagicBrush接收到小游戲代碼調用的渲染指令,將小游戲的內容渲染到第一個(gè)Renderer創(chuàng )建的SurfaceTexture上;
  2)然后這個(gè)Renderer做了兩件事:
  3)第二個(gè)Renderer將第一個(gè)Renderer提供的紋理渲染到mp4編碼器提供的輸入SurfaceTexture中,最終編碼器編碼生成mp4錄屏文件。
  3.4 改造錄屏解決方案?
  可以看出,在錄屏方案中,一個(gè)Renderer負責將游戲內容上傳到屏幕上,另一個(gè)Renderer將相同的紋理渲染到編碼器,用于錄制游戲內容。直播其實(shí)也差不多。是不是只要把編碼器換成直播的推流模塊就夠了?
  沒(méi)錯,但是還漏掉了一個(gè)關(guān)鍵環(huán)節:streaming模塊運行在主進(jìn)程中,我們需要跨進(jìn)程傳遞圖片數據!如何跨進(jìn)程?
  說(shuō)到跨進(jìn)程: 可能我們腦海中跳出的第一反應就是Binder、Socket、共享內存等傳統的IPC通信方式。但是仔細想想,系統提供的SurfaceView是一個(gè)非常特殊的View組件。它不通過(guò)傳統的View樹(shù)參與繪制,而是通過(guò)系統的SurfaceFlinger直接合成到屏幕上,SurfaceFlinger運行在系統進(jìn)程上。我們在SurfaceView提供的Surface上繪制的內容必須能夠跨進(jìn)程傳遞,而Surface跨進(jìn)程的方法很簡(jiǎn)單——它本身實(shí)現了Parcelable接口,也就是說(shuō)我們可以使用Binder直接傳遞Surface對象跨進(jìn)程。
  所以我們有以下初步計劃:
  可以看出,第三步不再渲染到mp4編碼器,而是渲染到從主進(jìn)程跨進(jìn)程傳過(guò)來(lái)的Surface。主進(jìn)程的Surface由一個(gè)Renderer創(chuàng )建的SurfaceTexture封裝而成?,F在小游戲進(jìn)程將圖像渲染到這個(gè) Surface 作為生產(chǎn)者。當一幀渲染完成后,主進(jìn)程的SurfaceTexture會(huì )收到一個(gè)onFrameAvailable回調通知圖像數據已經(jīng)準備好,然后通過(guò)updateTexImage獲取對應的紋理數據。這里,由于直播模塊只支持GL_TEXTURE_2D類(lèi)型的貼圖,所以這里主進(jìn)程Renderer會(huì )將GL_TEXTURE_EXTERNAL_OES轉換成GL_TEXTURE_2D貼圖,然后發(fā)送給直播編碼器,完成推流過(guò)程。
  經(jīng)過(guò)一番改造:上述方案已經(jīng)成功將小游戲渲染到屏幕上,并傳遞給主進(jìn)程進(jìn)行流式傳輸,但這真的是最優(yōu)方案嗎?
  想了想,發(fā)現上面的解決方案中Renderer太多了。小游戲進(jìn)程中有兩個(gè),一個(gè)是渲染到屏幕上,一個(gè)是跨進(jìn)程渲染到Surface,還有一個(gè)是在主進(jìn)程中轉換紋理調用流模塊。如果要同時(shí)支持錄屏,需要在小游戲進(jìn)程中再啟動(dòng)一個(gè)Renderer渲染到mp4編碼器。過(guò)多的Renderer意味著(zhù)過(guò)多的額外渲染開(kāi)銷(xiāo),會(huì )影響小游戲的性能。
  3.5 跨進(jìn)程渲染方案
  
  縱觀(guān)整個(gè)流程,其實(shí)只需要主進(jìn)程的Renderer。小游戲額外使用的Render無(wú)非是為了同時(shí)滿(mǎn)足同屏渲染和跨進(jìn)程傳輸。constraints,那么我們就簡(jiǎn)單的把小游戲進(jìn)程的入屏Surface傳給主進(jìn)程進(jìn)行入屏渲染!
  最終,我們將小游戲流程中的兩個(gè)冗余Renderer大幅砍掉。MagicBrush直接渲染到跨進(jìn)程傳遞給Surface,而主進(jìn)程的Renderer負責將紋理渲染到跨進(jìn)程以及紋理類(lèi)型轉換。傳輸的小游戲進(jìn)程在屏幕Surface上,實(shí)現畫(huà)面在屏幕上的渲染。
  最終需要的Renderer數量從原來(lái)的3個(gè)減少到需要的1個(gè),性能提升的同時(shí)架構更加清晰。
  以后需要同時(shí)支持錄屏的時(shí)候,稍微改動(dòng)一下,把mp4編碼器的輸入SurfaceTexture跨進(jìn)程傳給主進(jìn)程,然后給它添加一個(gè)Renderer渲染紋理(如圖下圖)。
  3.6 兼容性和性能
  說(shuō)到這里,不禁有些擔心。Surface方案的跨進(jìn)程傳輸和渲染會(huì )不會(huì )有兼容性問(wèn)題?
  其實(shí)雖然不常見(jiàn),但是官方文檔上說(shuō)是可以跨進(jìn)程抽取的:
  SurfaceView 結合了表面和視圖。SurfaceView 的視圖組件由 SurfaceFlinger(而不是應用程序)合成,支持從單獨的線(xiàn)程/進(jìn)程進(jìn)行渲染,并與應用程序 UI 渲染隔離。
  而Chrome和Android O之后的系統WebView都有使用跨進(jìn)程渲染的方案。
  我們的兼容性測試覆蓋了Android 5.1及之后的所有主流系統版本和機型。除了Android 5.flow跨進(jìn)程渲染黑屏的問(wèn)題。
  性能方面:我們使用WebGL Aquarium的demo進(jìn)行性能測試。我們可以看到對平均幀率的影響約為15%。由于渲染和流式處理,主進(jìn)程的 CPU 有所增加。奇怪的是,小游戲進(jìn)程的CPU開(kāi)銷(xiāo)卻減少了。減少的原因尚未得到證實(shí)。疑似與屏幕操作移至主進(jìn)程有關(guān),不排除統計方法的影響。
  3.7 總結
  為了不記錄宿主端的評論插件,我們先從小游戲的渲染流程說(shuō)起。借助Surface的跨進(jìn)程渲染和傳輸圖像的能力,我們將渲染和上傳小游戲的過(guò)程移到了主進(jìn)程中,同時(shí)生成紋理進(jìn)行流式傳輸。兼容性和性能滿(mǎn)足要求。
  4. 音頻采集和流式傳輸
  4.1 方案選擇
  在音頻采集方案中,我們注意到Android 10及以上系統提供了AudioPlaybackCapture方案,可以讓我們在一定范圍內采集系統音頻。當時(shí)的一些預研結論如下。
  捕獲者 - 捕獲發(fā)生的條件:
  被俘方 - 可以被俘的條件:
  總的來(lái)說(shuō):Android 10及以上可以使用AudioPlaybackCapture方案進(jìn)行音頻采集,但考慮到Android 10的系統版本限制太多,我們最終選擇了自己對小游戲播放的所有音頻進(jìn)行采集和混音。
  4.2 跨進(jìn)程音頻數據傳輸
  現在,老問(wèn)題又一次出現在我們面前:小游戲中混入的音頻數據在小游戲進(jìn)程中,我們需要將數據傳輸到主進(jìn)程中進(jìn)行流式處理。
  它不同于一般的用于方法調用的IPC跨進(jìn)程通信:在這種場(chǎng)景下,我們需要頻繁(每40毫秒)傳輸大數據塊(16毫秒的數據量約為8k)。
  同時(shí):由于直播的特點(diǎn),這個(gè)跨進(jìn)程傳輸過(guò)程的延遲需要盡可能低,否則會(huì )導致音視頻不同步。
  為了實(shí)現上述目標:我們測試了Binder、LocalSocket、MMKV、SharedMemory、Pipe等幾種IPC方案。在搭建的測試環(huán)境中,我們模擬小游戲過(guò)程中真實(shí)的音頻傳輸過(guò)程,每16毫秒發(fā)送一次序列化數據對象。數據對象的大小分為三個(gè)級別:3k/4M/10M,發(fā)送前存儲時(shí)間戳在對象中;以主進(jìn)程接收到數據并反序列化成數據對象的時(shí)刻為結束時(shí)間,計算傳輸延遲。
  最終得到如下結果:
  注:其中XIPCInvoker(Binder)和MMKV傳輸大量數據耗時(shí)過(guò)長(cháng),結果不顯示。
  各方案分析如下(stall rate表示延遲&gt;2倍平均延遲且&gt;10毫秒的數據占總數的比例):
  可以看出,LocalSocket方案在各個(gè)情況下的傳輸延時(shí)表現都非常好。造成差異的主要原因是裸二進(jìn)制數據在跨進(jìn)程傳輸到主進(jìn)程后,仍然需要進(jìn)行數據復制操作,將其反序列化為數據對象。在使用LocalSocket時(shí),可以使用ObjectStream和Serializeable來(lái)實(shí)現流式復制。相比其他方案,一次性接收數據,然后復制,節省了很多時(shí)間(當然其他方案也可以設計成分塊流,同時(shí)復制,但是實(shí)現起來(lái)有一定的成本,它不像 ObjectStream 那樣穩定和易于使用)。
  我們還測試了LocalSocket的兼容性和性能,沒(méi)有出現傳輸失敗和斷開(kāi)連接的情況。只有三星S6的平均延遲超過(guò)了10毫秒,其他機型的延遲都在1毫秒左右,可以達到我們的預期。
  4.3 LocalSocket 的安全性
  常用的Binder的跨進(jìn)程安全是由系統實(shí)現的認證機制來(lái)保證的。LocalSocket是對Unix域套接字的封裝,所以要考慮它的安全性。
  《Android Unix Domain Sockets的誤用及安全隱患》一文詳細分析了在A(yíng)ndroid中使用LocalSocket帶來(lái)的安全風(fēng)險。
  PS:論文原文附件下載(請從本鏈接4.3節下載:)
  論文概要:由于LocalSocket本身缺乏認證機制,任何應用程序都可以連接,從而攔截數據或向接收端發(fā)送非法數據而導致異常。
  針對這個(gè)特點(diǎn),我們可以做兩種防御方式:
  4.4 總結
  為了兼容Android 10以下機型和直播,我們選擇自己處理小游戲的音頻采集,通過(guò)對比評測,我們選擇了LocalSocket作為跨進(jìn)程音頻數據傳輸的方案,滿(mǎn)足了直播在時(shí)延方面的需求。
  同時(shí),通過(guò)一些對策,可以有效規避LocalSocket的安全風(fēng)險。
  
  5.多進(jìn)程帶來(lái)的問(wèn)題
  回過(guò)頭來(lái)看,雖然整個(gè)解決方案看起來(lái)比較順利,但是由于多進(jìn)程的原因,在實(shí)現過(guò)程中還是有很多坑。以下兩個(gè)是主要的。
  5.1 glFinish導致渲染幀率嚴重下降
  在實(shí)現跨進(jìn)程渲染流解決方案后,我們進(jìn)行了一輪性能和兼容性測試。在測試過(guò)程中,我們發(fā)現部分中低端機型的幀率下降非常嚴重(如下圖)。
  重現后查看小游戲進(jìn)程渲染的幀率(即小游戲進(jìn)程繪制到跨進(jìn)程Surface的幀率),發(fā)現可以達到直播時(shí)的幀率未啟用廣播。
  我們使用的測試軟件PerfDog記錄了屏幕Surface的幀率,可以看出性能下降不是因為小游戲代碼執行效率低導致直播開(kāi)銷(xiāo)過(guò)高,而是主進(jìn)程效率低下造成的在屏幕渲染器上。
  于是我們剖析了直播時(shí)主進(jìn)程的運行效率,發(fā)現耗時(shí)函數是glFinish。
  并且有兩個(gè)電話(huà):
  如果去掉第一個(gè)調用,這次Live SDK里面的時(shí)間會(huì )超過(guò)100毫秒。
  要理解為什么這個(gè) GL 命令需要這么長(cháng)時(shí)間,讓我們看一下它的描述:
  直到所有先前調用的 GL 命令的效果完成后,glFinish 才會(huì )返回。
  描述很簡(jiǎn)單:它會(huì )阻塞,直到所有先前調用的 GL 指令都完成。
  所以好像之前的GL指令太多了?但是,GL指令隊列是線(xiàn)程隔離的。在主進(jìn)程的Renderer線(xiàn)程中,在glFinish之前只會(huì )執行極少量的紋理類(lèi)型轉換的GL指令。從騰訊云的同學(xué)那里了解到,本帖不會(huì )使用推流接口。線(xiàn)程執行了很多GL指令,這么少的GL指令怎么會(huì )讓glFinish阻塞這么久?等等,很多 GL 指令?小游戲進(jìn)程此時(shí)不是在執行大量的GL指令嗎?會(huì )不會(huì )是小游戲進(jìn)程中GL指令較多導致主進(jìn)程的glFinsih耗時(shí)過(guò)長(cháng)?
  這樣的猜測不無(wú)道理:雖然GL指令隊列是線(xiàn)程隔離的,但是處理指令的GPU只有一個(gè)。一個(gè)進(jìn)程中過(guò)多的 GL 指令會(huì )導致另一個(gè)進(jìn)程在需要 glFinish 時(shí)阻塞時(shí)間過(guò)長(cháng)。谷歌沒(méi)有找到相關(guān)的描述,需要自己驗證一下這個(gè)猜測。
  重新觀(guān)察上面的測試數據:發(fā)現直播能到60幀的時(shí)候,直播結束后能到60幀左右。這是否意味著(zhù)在小游戲GPU負載低的情況下,glFinish的耗時(shí)也會(huì )減少呢??
  在性能下降嚴重的模型上:保持其他變量不變,嘗試低負載運行一個(gè)小游戲,發(fā)現glFinsih的耗時(shí)成功下降到10毫秒左右,證實(shí)了上面的猜測——確實(shí)是小游戲正在執行的游戲進(jìn)程大量的GL指令阻塞了主進(jìn)程glFinish的執行。
  如何解決?小游戲進(jìn)程的高負載是改不了的,那小游戲可不可以在一幀渲染完就停止,等主進(jìn)程的glFinish完成再渲染下一幀呢?
  這里做了各種嘗試:OpenGL的glFence同步機制不能跨進(jìn)程使用;由于GL指令是異步執行的,所以通過(guò)跨進(jìn)程通信鎖定小游戲的GL線(xiàn)程,并不能保證主進(jìn)程執行g(shù)lFinish指令時(shí)小游戲進(jìn)程的進(jìn)度已經(jīng)執行完畢,這只能通過(guò)以下方式來(lái)保證在小游戲進(jìn)程中加入glFinish,但這會(huì )使雙緩沖機制失效,導致小游戲渲染幀率大幅下降。
  既然避免不了glFinish帶來(lái)的阻塞,那我們回到問(wèn)題的開(kāi)頭:為什么需要glFinish?由于雙緩沖機制的存在,一般來(lái)說(shuō)不需要glFinish等待前面的繪制完成,否則雙緩沖就失去了意義。在兩次glFinish調用中,可以直接去掉第一個(gè)紋理處理調用。經(jīng)過(guò)溝通,發(fā)現引入了第二次騰訊云SDK調用,解決了一個(gè)歷史問(wèn)題,可以嘗試去掉。在騰訊云同學(xué)的幫助下,去掉glFinish后,渲染幀率終于和小游戲的輸出幀率一致了。經(jīng)過(guò)兼容性和性能測試,沒(méi)有發(fā)現去掉glFinish導致的問(wèn)題。
  這個(gè)問(wèn)題的最終解決方案很簡(jiǎn)單:但是在分析問(wèn)題原因的過(guò)程中其實(shí)做了很多實(shí)驗。同一個(gè)應用中一個(gè)GPU負載高的進(jìn)程會(huì )影響到另一個(gè)進(jìn)程耗時(shí)的glFinish這種場(chǎng)景確實(shí)是非常困難的。很少見(jiàn),參考資料也不多。這個(gè)過(guò)程也讓我深刻體會(huì )到glFinish使雙緩沖機制失效帶來(lái)的性能影響是巨大的。在使用OpenGL進(jìn)行渲染和繪圖時(shí),我應該非常謹慎地使用glFinish。
  5.2 后臺進(jìn)程優(yōu)先級問(wèn)題
  測試過(guò)程中:我們發(fā)現無(wú)論使用多少幀率向直播SDK發(fā)送圖片,觀(guān)眾看到的圖片幀率始終只有16幀左右。排除背景原因后,我們發(fā)現編碼器的幀率不夠。經(jīng)騰訊云同學(xué)測試,同一進(jìn)程編碼幀率可以達到設定的30幀,所以還是多進(jìn)程導致的問(wèn)題。在這里,編碼是一個(gè)很重的操作,比較消耗CPU資源,所以我們首先懷疑的是后臺進(jìn)程的優(yōu)先級。
  要確認問(wèn)題:
  總結一下:可以確認幀率下降是后臺進(jìn)程(以及它擁有的線(xiàn)程)的優(yōu)先級低導致的。
  在微信中提高線(xiàn)程優(yōu)先級是很常見(jiàn)的。比如小程序的JS線(xiàn)程和小游戲的渲染線(xiàn)程,在運行時(shí)都會(huì )通過(guò)android.os.Process.setThreadPriority方法設置線(xiàn)程的優(yōu)先級。騰訊云SDK的同學(xué)很快就給我們提供了設置線(xiàn)程優(yōu)先級的接口,但是實(shí)際運行的時(shí)候發(fā)現編碼幀率只從16幀增加到18幀左右。什么地方出了錯?
  前面提到:我們通過(guò)chrt命令設置線(xiàn)程優(yōu)先級是有效的,但是android.os.Process.setThreadPriority方法設置的線(xiàn)程優(yōu)先級對應的是renice命令設置的nice值。仔細看了chrt手冊,發(fā)現之前測試的理解是錯誤的。我使用命令chrt -p [pid] [priority]直接設置了優(yōu)先級,但是沒(méi)有設置調度策略參數,導致線(xiàn)程的調度策略從Linux默認的SCHED_OTHER改為SCHED_RR,即該命令的默認設置,而SCHED_RR是一種“實(shí)時(shí)策略”,導致線(xiàn)程的調度優(yōu)先級變得很高。
  其實(shí):renice設置的線(xiàn)程優(yōu)先級(即android.os.Process.setThreadPriority)對于后臺進(jìn)程擁有的線(xiàn)程幫助不大。
  事實(shí)上,已經(jīng)有人對此進(jìn)行了解釋?zhuān)?br />   為了解決這個(gè)問(wèn)題,Android 還以一種簡(jiǎn)單的方式使用 Linux cgroups 來(lái)創(chuàng )建更嚴格的前臺與后臺調度。前臺/默認 cgroup 允許正常進(jìn)行線(xiàn)程調度。然而,后臺 cgroup 只應用了總 CPU 時(shí)間的一小部分的限制,該時(shí)間可用于該 cgroup 中的所有線(xiàn)程。因此,如果該百分比為 5%,并且您有 10 個(gè)后臺線(xiàn)程和一個(gè)前臺線(xiàn)程都想運行,那么這 10 個(gè)后臺線(xiàn)程加在一起最多只能占用前臺可用 CPU 周期的 5%。(當然,如果沒(méi)有前臺線(xiàn)程想要運行,后臺線(xiàn)程可以使用所有可用的 CPU 周期。)
  關(guān)于線(xiàn)程優(yōu)先級的設置,有興趣的同學(xué)可以看看另一位大佬的文章:《Android的詭異陷阱——設置線(xiàn)程優(yōu)先級導致的微信卡頓悲劇》。
  最后:為了提高編碼幀率,防止后臺主進(jìn)程被kill掉,我們最終決定在直播時(shí)在主進(jìn)程中創(chuàng )建一個(gè)前臺Service。
  六、總結與展望
  多進(jìn)程是一把雙刃劍。在給我們帶來(lái)隔離和性能優(yōu)勢的同時(shí),也給我們帶來(lái)了跨進(jìn)程通信的問(wèn)題。幸運的是,借助系統Surface能力和各種跨進(jìn)程解決方案,我們可以更好地解決小游戲直播中遇到的問(wèn)題。
  當然:解決跨進(jìn)程問(wèn)題最好的辦法就是避免跨進(jìn)程。我們也考慮過(guò)在小游戲的過(guò)程中運行視頻號直播的推流模塊的方案,但是考慮到改造成本,我們沒(méi)有選擇這個(gè)方案。
  同時(shí):本次SurfaceView跨進(jìn)程渲染的實(shí)踐對其他業(yè)務(wù)也有一定的參考價(jià)值——對于一些內存壓力大或者安全風(fēng)險高的場(chǎng)景,需要SurfaceView渲染繪制,邏輯可以放在一個(gè)獨立的進(jìn)程,然后通過(guò)跨進(jìn)程渲染的方式繪制到主進(jìn)程的View上,在獲得獨立進(jìn)程優(yōu)勢的同時(shí),也避免了進(jìn)程間跳轉帶來(lái)的體驗碎片化。
  手把手搭建一個(gè)簡(jiǎn)單的直播系統》《淘寶直播技術(shù)干貨:高清低延遲實(shí)時(shí)視頻直播技術(shù)解密》《技術(shù)干貨:實(shí)時(shí)視頻直播首屏優(yōu)化實(shí)踐》 400ms》《新浪微博技術(shù)分享:微博實(shí)時(shí)直播百萬(wàn)級高并發(fā)架構實(shí)踐》《視頻直播實(shí)時(shí)混音技術(shù)原理與實(shí)踐總結》《七牛云技術(shù)分享:使用QUIC協(xié)議》實(shí)現0卡頓的實(shí)時(shí)視頻直播!》《近期火爆的實(shí)時(shí)直播問(wèn)答系統實(shí)現思路與技術(shù)難點(diǎn)分享》》微信朋友圈千億訪(fǎng)問(wèn)量背后的技術(shù)挑戰與實(shí)踐總結》《微信團隊分享:微信移動(dòng)端全文搜索多拼音字符問(wèn)題解決方案》《微信團隊分享:高性能通用iOS版微信key-value組件技術(shù)實(shí)踐》》微信團隊分享:iOS版微信如何防止特殊字符導致爆群,APP閃退?》 《微信團隊原創(chuàng )分享:iOS版微信的內存監控系統技術(shù)實(shí)踐》 《iOS后臺喚醒實(shí)踐:微信收到和到達語(yǔ)音提醒技術(shù)總結》 《微信團隊分享:視頻圖像的超分辨率技術(shù)原理及應用場(chǎng)景》 》》微信團隊分享:微信團隊分享:iOS版微信高性能通用鍵值組件技術(shù)實(shí)踐》 《微信團隊分享:iOS版微信如何防止特殊字符導致的爆群和APP閃退?》 《微信團隊原創(chuàng )分享:iOS版微信的內存監控系統技術(shù)實(shí)踐》 《iOS后臺喚醒實(shí)踐:微信收到和到達語(yǔ)音提醒技術(shù)總結》 《微信團隊分享:視頻圖像的超分辨率技術(shù)原理及應用場(chǎng)景》 》 《微信團隊分享:解密微信每天幾億次實(shí)時(shí)音視頻聊天背后的技術(shù)》 《微信團隊分享:微信安卓版小視頻編解碼器填補的那些坑》
  . . . 《來(lái)龍去脈》《月活8.89億的超級IM微信如何做Android端兼容性測試》《一文搞定微信開(kāi)源移動(dòng)數據庫組件WCDB!》《技術(shù)專(zhuān)訪(fǎng)微信客戶(hù)端團隊負責人:如何啟動(dòng)客戶(hù)端性能監控與優(yōu)化》《基于時(shí)序海量數據冷熱分層架構的微信后臺設計實(shí)踐》《微信團隊原創(chuàng )分享:Android版微信臃腫難點(diǎn)與解決方案》 《模塊化實(shí)踐之路》《微信后臺團隊:異步消息隊列優(yōu)化升級微信后臺分享》《微信團隊原創(chuàng )分享:微信客戶(hù)端SQLite數據庫損壞修復實(shí)踐》《微信Mars:微信內部使用的網(wǎng)絡(luò )層封裝庫,即將開(kāi)源》《如約而至:移動(dòng)端微信自用End-IM網(wǎng)絡(luò )層跨平臺組件庫Mars》已正式開(kāi)源》 《開(kāi)源libco庫:支撐8億微信用戶(hù)單機千萬(wàn)級連接的后臺框架基石【源碼下載】》 《微信新一代通信安全解決方案:基于在 TLS1 上?!段⑿艌F隊分享:極致優(yōu)化,iOS版微信編譯速度提升3倍實(shí)踐總結》《IM“掃一掃”》功能容易做嗎?看微信“掃一掃識物”完整技術(shù)實(shí)現《微信團隊分享:微信支付代碼重構帶來(lái)的移動(dòng)端軟件架構思考》《IM開(kāi)發(fā)寶典:史上最全,微信各種功能參數》數據與邏輯規律總結》《微信團隊分享:微信直播間單間1500萬(wàn)在線(xiàn)聊天室的消息架構演進(jìn)》&gt;&gt;更多類(lèi)似文章...
 ?。ū疚耐桨l(fā)表于:)返回搜狐查看更多
  編輯:
  近期發(fā)布:中恒電國際融媒體平臺,多端傳播,全媒體發(fā)布
  
  媒體融合技術(shù)平臺-內容管理系統是順應全媒體時(shí)代和媒體融合發(fā)展的創(chuàng )新媒體發(fā)布管理平臺。平臺重構新聞采編生成流程,升級采編系統,真正實(shí)現“一次采編、多生成、多終端傳播、全媒體發(fā)布”。
  平臺系統系統、實(shí)用、可擴展、經(jīng)濟、技術(shù)先進(jìn)、成熟、安全;基于JAVA語(yǔ)言開(kāi)發(fā),采用自主研發(fā)的Enorth StructsX架構設計,具有良好的跨平臺性能??芍С諻indows、Linux等多種操作系統平臺,支持Oracle、MySQL等多種主流數據庫管理系統,可部署到Tomcat、Weblogic等多種應用服務(wù)器平臺。
  
  系統瀏覽器兼容性好,支持主流瀏覽器使用,包括Firefox、Chrome、IE、360瀏覽器等瀏覽器??沙休d億級數據量,支持高并發(fā)、高可用,配備多重安全策略。系統支持中文、英文、俄文、維吾爾文、哈薩克文等多種語(yǔ)言進(jìn)行管理和發(fā)布,支持使用utf-8編碼。手機端頁(yè)面,客戶(hù)端支持ios6.0及以上系統,Android4.0及以上系統。系統提供標準化接口規范,預留標準化二次開(kāi)發(fā)接口,方便日后平臺功能擴展及與第三方軟件系統對接。
  媒體融合技術(shù)平臺支持網(wǎng)站、手機網(wǎng)站、APP客戶(hù)端、微博等主流社交平臺內容同步管理,實(shí)現內容全面覆蓋、多終端覆蓋。新聞發(fā)布由過(guò)去的一對一發(fā)布轉變?yōu)橐粚Χ喟l(fā)布。

解決方案:搭建屬于你的在線(xiàn)實(shí)時(shí)采集系統——HTML5 在嵌入式系統中的應用

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 142 次瀏覽 ? 2022-11-23 23:18 ? 來(lái)自相關(guān)話(huà)題

  解決方案:搭建屬于你的在線(xiàn)實(shí)時(shí)采集系統——HTML5 在嵌入式系統中的應用
  在當今的信息社會(huì ),信息就是金錢(qián),所有的信息都必須是時(shí)效性的,過(guò)時(shí)的信息將沒(méi)有價(jià)值。由此可見(jiàn)實(shí)時(shí)信息的重要性。
  近年來(lái),隨著(zhù)物聯(lián)網(wǎng)在各行各業(yè)的快速發(fā)展,越來(lái)越多的終端設備接入網(wǎng)絡(luò ),實(shí)現遠程交互和控制;各種傳感器的廣泛分布使得數據節點(diǎn)的分布越來(lái)越多。而這些交互數據本身也是一種原創(chuàng )
信息。這些數據量需要我們采集
、分析、處理和反饋。數據的真實(shí)性、有效性、準確性和實(shí)時(shí)性保證了整個(gè)工作的效率、質(zhì)量和價(jià)值。
  在這里,我們實(shí)現了一個(gè)基于W5500的在線(xiàn)采集系統,并在其中引入了一個(gè)新鮮元素——HTML5。通過(guò)這種最新的Web語(yǔ)言,我們呈現了一個(gè)更加實(shí)時(shí)高效的在線(xiàn)實(shí)時(shí)采集系統。相信隨著(zhù)HTML5在嵌入式領(lǐng)域的不斷深入推廣,必將對產(chǎn)業(yè)效率和價(jià)值的提升產(chǎn)生重大影響。
  在詳細介紹這個(gè)實(shí)時(shí)采集系統之前,我們先簡(jiǎn)單了解一下HTML5。
  HTML5和HTML的區別
  HTML 是一種標記語(yǔ)言,旨在創(chuàng )建可在網(wǎng)絡(luò )瀏覽器中呈現的網(wǎng)頁(yè)。
  HTML5 是 HTML 的下一個(gè)修訂版本。從廣義上講,HTML5 包括一組新的和增強的 HTML、CSS3、JavaScript API 和事件的技術(shù)組合。
  圖 1HTML5 標志
  以下是 HTML5 相對于 HTML 新增和增強的主要特性:
  畫(huà)布 API 和 Web 套接字 API
  事實(shí)上,在線(xiàn)實(shí)時(shí)采集系統的實(shí)現得益于HTML5中新增的兩個(gè)API函數:Canvas和WebSocket。
  Canvas,由Apple于2004年為MAC OS X儀表盤(pán)開(kāi)發(fā)的像素繪圖元素發(fā)展而來(lái)。由一個(gè)Canvas元素和對應的JavaScript組成。它使開(kāi)發(fā)者無(wú)需借助其他第三方插件,即可使用JavaScript的Canvas圖形工具在Canvas元素畫(huà)板上動(dòng)態(tài)繪制圖形。
  Websocket,提供了一個(gè)直接與服務(wù)器通信的Socket。通信建立后,客戶(hù)端(瀏覽器)可以實(shí)現與Web服務(wù)器的雙向通信,而不需要客戶(hù)端頻繁輪詢(xún)服務(wù)器。這樣可以減少Http請求的開(kāi)銷(xiāo),減輕數據包的負擔,讓通信更加實(shí)時(shí)。
  通過(guò)這兩個(gè)API函數的靈活應用,我們實(shí)現了通過(guò)HTTP Server實(shí)時(shí)接收數據量并在網(wǎng)頁(yè)上動(dòng)態(tài)模擬的功能。
  在線(xiàn)實(shí)時(shí)采集系統演示
  系統環(huán)境
  a) MCU:STM32F103RC,256K字節的Flash,48K字節的SRAM,2K字節的EEPROM
  b) 以太網(wǎng)控制器:W5500,SPI接口連接單片機
  c) 電源:USB供電
  2.開(kāi)發(fā)工具:IAR for ARM v5.41,就是我們項目中使用的版本。如果你使用不同版本的IAR,請對STM的庫稍做調整。
  在看代碼之前,我們先看一下整個(gè)程序流程,如下圖所示。硬件初始化完成后,進(jìn)行網(wǎng)絡(luò )參數配置。這是根據自己網(wǎng)絡(luò )的情況配置W5500的IP地址等網(wǎng)絡(luò )參數,保證W5500可以上網(wǎng);在這個(gè)程序中,我們將使用W5500的兩個(gè)socket資源。一個(gè)是用來(lái)創(chuàng )建一個(gè)Http Server,這樣我們就可以通過(guò)在瀏覽器上輸入配置的IP地址來(lái)遠程訪(fǎng)問(wèn)我們的硬件;另一個(gè)是用來(lái)創(chuàng )建一個(gè)Web Socket Server,與網(wǎng)頁(yè)建立通信鏈接,用來(lái)傳輸我們的溫濕度數據。
  圖2 硬件運行流程
  當我們在瀏覽器上訪(fǎng)問(wèn)硬件的IP地址時(shí),它會(huì )向W5500發(fā)送一個(gè)http請求。W5500收到請求后,會(huì )將html5網(wǎng)頁(yè)信息發(fā)送給瀏覽器,以便瀏覽器顯示我們溫濕度檢測系統的主要信息。界面沒(méi)了 在網(wǎng)頁(yè)的代碼中,瀏覽器會(huì )主動(dòng)連接W5500的Web Socket Server,握手操作完成后,建立數據通信通道。這樣硬件就可以毫無(wú)障礙地將溫濕度數據發(fā)送給瀏覽器了。瀏覽器收到溫濕度數據后,使用canvas函數在指定位置繪制溫濕度指示的點(diǎn)和曲線(xiàn)。
  圖3 網(wǎng)頁(yè)顯示界面
  畫(huà)布和 Web 套接字
  在瀏覽器端,我們使用 HTML5 的 Canvas 繪圖工具和 WebSocket API 來(lái)構建我們的 Web 界面。當有新的溫濕度數據到來(lái)時(shí),畫(huà)布坐標系中會(huì )有點(diǎn)顯示,并標出編號,隨著(zhù)采集次數的增加,可以進(jìn)行多次數據連接,看曲線(xiàn)變化。網(wǎng)頁(yè)程序步驟如下:
  1)創(chuàng )建頁(yè)面和畫(huà)布所屬的style和body標簽
  2)繪制坐標軸,添加標題;建立 WebSocket 連接
  3)新數據到達,畫(huà)點(diǎn)畫(huà)線(xiàn)
  用畫(huà)布繪圖
  下面首先介紹如何創(chuàng )建畫(huà)布以及代碼中使用的繪圖函數。
  1)創(chuàng )建一個(gè)600×400的畫(huà)布,單位為像素
  '圖'width='600'height='400'&gt;
  2) 定義畫(huà)布的邊框寬度、顏色和填充大小。
  #圖表{
  邊框:1px 實(shí)心#03F;
  邊距:0 40px 0 80px;
  }
  3)JavaScript要繪制畫(huà)布,首先需要通過(guò)目標畫(huà)布的id獲取繪制環(huán)境。代碼需要通過(guò)id獲取canvas元素,然后使用該元素的getContext方法獲取其二維繪圖環(huán)境的引用
  canvas=document.getElementById('圖形');
  
  context=canvas.getContext('2d');
  4)畫(huà)線(xiàn)段
  context.lineWidth=2;//設置線(xiàn)寬
  context.strokeStyle='#999';//設置線(xiàn)條的顏色
  context.moveTo(x1,y1);//移動(dòng)到起點(diǎn)
  context.lineTo(x2,y2);//創(chuàng )建一條到終點(diǎn)的路徑
  context.stroke();//實(shí)際畫(huà)這條直線(xiàn)
  5)畫(huà)圓
  context.fillStyle='#000';//設置填充顏色
  context.beginPath();
  context.arc(x,y,2,0,Math.PI*2,true);//在坐標(x,y)處畫(huà)一個(gè)半徑為2的圓
  語(yǔ)境。關(guān)閉路徑();
  context.fill();//給圓圈填充顏色
  6)在指定位置寫(xiě)入標題文字
  context.fillText(text,x,y,maxWidth);
  結合上面的函數,畫(huà)出下圖。如果覺(jué)得這還不夠炫,html5 canvas還提供了漸變色、旋轉、插畫(huà)等功能。使用您的設計制作您自己的前端界面。
  圖 4 畫(huà)布示例圖
  WebSocket的使用接下來(lái)我們介紹一下WebSocket在html5中的使用及相關(guān)功能
  1)為了創(chuàng )建websocket連接,代碼需要創(chuàng )建一個(gè)WebSocket接口實(shí)例,傳入web服務(wù)的URL地址,sensorWebSocket對象會(huì )嘗試連接監聽(tīng)相應URL的服務(wù)
  varwsUri='ws:192.168.10.111:1818';
  sensorWebSocket=newWebSocket(wsUri);
  2)注冊事件,為事件鏈接相應的處理函數。比如瀏覽器頁(yè)面收到服務(wù)器的數據后,觸發(fā)onmessage事件,然后調用onMessage函數。在代碼中,我們注冊了四個(gè)事件:onopen、onmessage、onclose和onerror
  sensorWebSocket.onmessage=函數(evt){onMessage(evt)};
  3)消息處理函數。在硬件上,我們將采集到的溫濕度數據用'.'連接起來(lái)。在瀏覽器端,接收到數據后,使用字符串切分函數,將溫濕度數據進(jìn)行切分,存儲在一個(gè)數組對象中。下面的代碼是將指示轉換成坐標值顯示在畫(huà)布上,這里就不贅述了。
  functiononMessage(evt){
  vararrayTH = 新數組(2);
  arrayTH=evt.data.split('.');
  ...
  }
  4)主動(dòng)關(guān)閉websocket連接
  傳感器網(wǎng)絡(luò )套接字。關(guān)();
  怎么樣,websocket的使用很簡(jiǎn)單。使用這個(gè)強大的工具,您可以連接到遠程服務(wù)器并接收和發(fā)送消息。這個(gè)功能在雙向通信中非常有用,尤其是需要服務(wù)端主動(dòng)向瀏覽器頁(yè)面發(fā)送消息的時(shí)候。
  Web Socket 握手和數據幀
  在服務(wù)端創(chuàng )建好socket之后,首先要和客戶(hù)端進(jìn)行數據通信才能完成握手,那么在列出程序的時(shí)候如何實(shí)現這個(gè)握手呢,先看看握手過(guò)程:
  表1 握手過(guò)程
  上面已經(jīng)介紹了客戶(hù)端的代碼,下面是硬件中服務(wù)器1和2的代碼:
  #define WS_SERVER_PORT 1818//定義服務(wù)器監聽(tīng)的端口號
  socket(s,Sn_MR_TCP, WS_SERVER_PORT,0x20);//在W5500中建立socket連接
  listen(s);//開(kāi)啟監聽(tīng) s變量為W5500的socket序號,本例程中使用的是數字2
  下面是為W5500配置的網(wǎng)絡(luò )信息,其中IP地址為我們?yōu)g覽器頁(yè)面程序的websocket對象的監聽(tīng)地址。
  uint8 mac[6]={0x00,0x08,0xdc,0x11,0x11,0x11};
  
  uint8 嘴唇[4]={192,168,10,111};
  uint8 sub[4]={255,255,255,0};
  uint8gw[4]={192,168,10,1};
  設置SHAR(mac);
  設置SUBR(子);
  設置GAR(gw);
  設置SIPR(嘴唇);
  硬件中server 5、6、7進(jìn)程相關(guān)代碼:
  charsec_ws_key[32]={0x00,};
  characcept_key[32]={0x00,};
  //獲取Sec-WebSocket-Key:
  if(strstr((charconst*)wsRxBuf,"Sec-WebSocket-Key:"))
  {
  mid((char*)wsRxBuf,"Sec-WebSocket-Key: ","\r\n",sec_ws_key);//攔截sec_key
  calc_accept_key(sec_ws_key, accept_key);//編碼函數
  sprintf((char*)wsTxBuf, "HTTP/1.1 101 SwitchingProtocols\r\nUpgrade: WebSocket\r\nConnection:Upgrade\r\nSec-WebSocket-Accept: %s\r\n\r\n", accept_key); // 生成握手消息
  send(s,wsTxBuf,strlen((char*)wsTxBuf));//發(fā)送給客戶(hù)端
  }
  握手=1;
  這似乎有點(diǎn)抽象。讓我們看看實(shí)際的數據包。最上面的紅色字體是瀏覽器頁(yè)面的握手請求。Sec-websoket-Key之后就是我們截取的sec_key,后面的藍色字體就是服務(wù)器端的握手響應。,sec-websoket-Accept就是我們編碼好的accept_key,怎么樣,一目了然。
  圖5 握手過(guò)程捕獲信息
  握手成功后,可以將定時(shí)采集的溫濕度數據發(fā)送到硬件端的瀏覽器頁(yè)面。WebSocket 協(xié)議的數據包非常輕量。下面介紹數據包的幀格式:
  圖 6 WebSocket 數據幀格式
  上圖是官方的結構圖,第一個(gè)字節,第一位是FIN,后三位是RSV1到3。RSV是保留空間,用0填充,那么只需要前4位的第一個(gè)FIN要設置。接下來(lái)的四位存儲操作碼的值,它定義了有效載荷數據的解釋。FIN 用于指示消息的最后一個(gè)片段。如果只有一條消息,則FIN為1;這里我們使用opcode定義數據為text-0x1,所以第一個(gè)字的二進(jìn)制是1000001(0x81),第一個(gè)1是FIN值,最后一個(gè)1是opcode的值。
  然后是第二個(gè)字節的數據,由1位的MASK和7位的PayloadLen組成。MASK標識本數據幀的數據是否使用掩碼,PayloadLen表示數據部分的長(cháng)度。但是,PayloadLen 只有 7 位。如果換成無(wú)符號整數,它只有0到127之間的值。當然,這么小的值不能描述更大的數據。所以規定當數據長(cháng)度小于等于125時(shí),作為數據長(cháng)度的描述。,如果值為126,則接下來(lái)的兩個(gè)字節用于存放數據長(cháng)度,如果為127,則接下來(lái)的八個(gè)字節用于存放數據長(cháng)度。這里我們每次只發(fā)送5個(gè)字節的溫濕度數據,沒(méi)有使用掩碼,所以配置為0x05。
  然后就是上圖中的MaskingKey,它占用四個(gè)字節,存放mask的entity部分。但是這個(gè)數據只有在前面的MASK設置為1的時(shí)候才有,否則不使用mask就沒(méi)有這個(gè)數據了。最后是數據部分。如果掩碼存在,則所有數據都需要與掩碼進(jìn)行異或。如果沒(méi)有掩碼,那么可以直接使用下面的數據。
  看看我們的數據發(fā)送代碼是如何實(shí)現的:
  wsTxBuf[0]=0x81;
  wsTxBuf[1]=0x05;
  wsTxBuf[2]= 溫度/10+0x30;
  wsTxBuf[3]= 溫度+0x30;
  wsTxBuf[1]=0x2E;//分隔符'.'
  wsTxBuf[2]=Humi/10+0x30;
  wsTxBuf[3]= Humi+0x30;
  發(fā)送(s,wsTxBuf,strlen((char*)wsTxBuf));
  代碼是不是很簡(jiǎn)單!
  數據采集
  然后簡(jiǎn)要描述數據采集
過(guò)程。我們選用溫濕度傳感器DHT11實(shí)時(shí)采集并上傳室內溫濕度數據。這里,DHT11用于連接MCU(W5500)。它與MCU的通訊只需要一個(gè)I/O口,使用非常方便。DHT11與單片機的具體連接及相關(guān)調試這里不再詳述??梢运阉飨嚓P(guān)信息。
  相信隨著(zhù)HTML5的不斷成熟,它帶來(lái)的不僅僅是PC環(huán)境的Web革命。對于嵌入式領(lǐng)域,也能帶來(lái)更好的客戶(hù)體驗和產(chǎn)品性能。當然,我們還是要用到W5500這個(gè)特色以太網(wǎng)芯片。其全硬件的TCP/IP協(xié)議棧不僅大大節省了寶貴的嵌入式資源,也省去了很多開(kāi)發(fā)步驟和難度,使我們可以用更多的資源和精力來(lái)實(shí)現更精彩的Web功能。
  如果你感興趣,趕快做一個(gè)屬于你的在線(xiàn)實(shí)時(shí)采集系統吧。
  請到#p2527 下載完整的程序代碼程序。
  解決方案:如何高效的上架商品,采集產(chǎn)品到獨立站
  如何快速采集產(chǎn)品到獨立站?
  獨立跨境電商網(wǎng)站收貨后快速上架的情況很常見(jiàn),可以為賣(mài)家節省大量的時(shí)間和精力。
  有了采集工具,每天有上千種產(chǎn)品并不難。當然現在的獨立站已經(jīng)不是分發(fā)的時(shí)代了,講究的是精細分發(fā)。
  在shopyy獨立站后臺應用中心,應用商店,搜集,可以看到建站系統為賣(mài)家提供的免費采集
工具。
  支持:采集Shopify、亞馬遜、阿里巴巴、1688、速賣(mài)通等主流平臺的商品數據。
  推薦使用場(chǎng)景: 注意事項:
  教程:
  首先,如果你沒(méi)有安裝谷歌瀏覽器,你必須先安裝一個(gè)。
  應用中心,我的應用,設置,點(diǎn)擊下載插件,順便復制api鏈接
  
  然后打開(kāi)瀏覽器,點(diǎn)擊如圖所示的插件,如果沒(méi)有開(kāi)啟開(kāi)發(fā)者模式,點(diǎn)擊開(kāi)啟,加載解壓后的安裝包或者拖放到這個(gè)頁(yè)面。
  然后可以看到一個(gè)優(yōu)采云
抓圖工具插件,把它固定到工具欄上。
  點(diǎn)擊店鋪圖標,店鋪管理,給店鋪一個(gè)code,方便識別,
  一鍵粘貼并確認。
  前后可以打開(kāi)跨境電商平臺,開(kāi)始選擇商品收貨到獨立站。
  已成功采集
的商品可以在后臺的商品管理中看到,在已下架的商品中可以看到。如果采集的產(chǎn)品再次采集,會(huì )提示重復采集。
  
  使用產(chǎn)品批量修改工具,可以在申請中心修改多個(gè)產(chǎn)品的價(jià)格,實(shí)現批量上架。
  補充:除了平臺之外,我們經(jīng)常會(huì )遇到一些其他的獨立站想要收貨??梢允褂眠@個(gè)第三方工具采集導出shopify格式,然后在后臺應用中心選擇shopify導入。
  shopcaiji采集工具還是很強大的,支持主流的saas建站和開(kāi)源系統。擁有如此萬(wàn)能的采集工具,將大大提高尚品的效率。
  shopcaiji是一個(gè)支持采集
的建站平臺
  SAAS模式建站:shopify、oemsas、shopyy、shoplazza、shopline、xshopy、shopbase、wshop、
  開(kāi)源自建站:wordpress、opencart、magento
  基本涵蓋市面上所有主流建站平臺,還支持單品采集、全目錄采集、全站采集,可根據您的需求靈活配置。
  有免費版和付費版可供選擇。支持免費試用,滿(mǎn)意后再開(kāi)通。允許會(huì )員在同一個(gè)公網(wǎng)IP下以多個(gè)用戶(hù)登錄,即一個(gè)公司同一個(gè)IP。您只需購買(mǎi)一個(gè)即可供整個(gè)公司使用。
  采集工具官網(wǎng): 查看全部

  解決方案:搭建屬于你的在線(xiàn)實(shí)時(shí)采集系統——HTML5 在嵌入式系統中的應用
  在當今的信息社會(huì ),信息就是金錢(qián),所有的信息都必須是時(shí)效性的,過(guò)時(shí)的信息將沒(méi)有價(jià)值。由此可見(jiàn)實(shí)時(shí)信息的重要性。
  近年來(lái),隨著(zhù)物聯(lián)網(wǎng)在各行各業(yè)的快速發(fā)展,越來(lái)越多的終端設備接入網(wǎng)絡(luò ),實(shí)現遠程交互和控制;各種傳感器的廣泛分布使得數據節點(diǎn)的分布越來(lái)越多。而這些交互數據本身也是一種原創(chuàng )
信息。這些數據量需要我們采集
、分析、處理和反饋。數據的真實(shí)性、有效性、準確性和實(shí)時(shí)性保證了整個(gè)工作的效率、質(zhì)量和價(jià)值。
  在這里,我們實(shí)現了一個(gè)基于W5500的在線(xiàn)采集系統,并在其中引入了一個(gè)新鮮元素——HTML5。通過(guò)這種最新的Web語(yǔ)言,我們呈現了一個(gè)更加實(shí)時(shí)高效的在線(xiàn)實(shí)時(shí)采集系統。相信隨著(zhù)HTML5在嵌入式領(lǐng)域的不斷深入推廣,必將對產(chǎn)業(yè)效率和價(jià)值的提升產(chǎn)生重大影響。
  在詳細介紹這個(gè)實(shí)時(shí)采集系統之前,我們先簡(jiǎn)單了解一下HTML5。
  HTML5和HTML的區別
  HTML 是一種標記語(yǔ)言,旨在創(chuàng )建可在網(wǎng)絡(luò )瀏覽器中呈現的網(wǎng)頁(yè)。
  HTML5 是 HTML 的下一個(gè)修訂版本。從廣義上講,HTML5 包括一組新的和增強的 HTML、CSS3、JavaScript API 和事件的技術(shù)組合。
  圖 1HTML5 標志
  以下是 HTML5 相對于 HTML 新增和增強的主要特性:
  畫(huà)布 API 和 Web 套接字 API
  事實(shí)上,在線(xiàn)實(shí)時(shí)采集系統的實(shí)現得益于HTML5中新增的兩個(gè)API函數:Canvas和WebSocket。
  Canvas,由Apple于2004年為MAC OS X儀表盤(pán)開(kāi)發(fā)的像素繪圖元素發(fā)展而來(lái)。由一個(gè)Canvas元素和對應的JavaScript組成。它使開(kāi)發(fā)者無(wú)需借助其他第三方插件,即可使用JavaScript的Canvas圖形工具在Canvas元素畫(huà)板上動(dòng)態(tài)繪制圖形。
  Websocket,提供了一個(gè)直接與服務(wù)器通信的Socket。通信建立后,客戶(hù)端(瀏覽器)可以實(shí)現與Web服務(wù)器的雙向通信,而不需要客戶(hù)端頻繁輪詢(xún)服務(wù)器。這樣可以減少Http請求的開(kāi)銷(xiāo),減輕數據包的負擔,讓通信更加實(shí)時(shí)。
  通過(guò)這兩個(gè)API函數的靈活應用,我們實(shí)現了通過(guò)HTTP Server實(shí)時(shí)接收數據量并在網(wǎng)頁(yè)上動(dòng)態(tài)模擬的功能。
  在線(xiàn)實(shí)時(shí)采集系統演示
  系統環(huán)境
  a) MCU:STM32F103RC,256K字節的Flash,48K字節的SRAM,2K字節的EEPROM
  b) 以太網(wǎng)控制器:W5500,SPI接口連接單片機
  c) 電源:USB供電
  2.開(kāi)發(fā)工具:IAR for ARM v5.41,就是我們項目中使用的版本。如果你使用不同版本的IAR,請對STM的庫稍做調整。
  在看代碼之前,我們先看一下整個(gè)程序流程,如下圖所示。硬件初始化完成后,進(jìn)行網(wǎng)絡(luò )參數配置。這是根據自己網(wǎng)絡(luò )的情況配置W5500的IP地址等網(wǎng)絡(luò )參數,保證W5500可以上網(wǎng);在這個(gè)程序中,我們將使用W5500的兩個(gè)socket資源。一個(gè)是用來(lái)創(chuàng )建一個(gè)Http Server,這樣我們就可以通過(guò)在瀏覽器上輸入配置的IP地址來(lái)遠程訪(fǎng)問(wèn)我們的硬件;另一個(gè)是用來(lái)創(chuàng )建一個(gè)Web Socket Server,與網(wǎng)頁(yè)建立通信鏈接,用來(lái)傳輸我們的溫濕度數據。
  圖2 硬件運行流程
  當我們在瀏覽器上訪(fǎng)問(wèn)硬件的IP地址時(shí),它會(huì )向W5500發(fā)送一個(gè)http請求。W5500收到請求后,會(huì )將html5網(wǎng)頁(yè)信息發(fā)送給瀏覽器,以便瀏覽器顯示我們溫濕度檢測系統的主要信息。界面沒(méi)了 在網(wǎng)頁(yè)的代碼中,瀏覽器會(huì )主動(dòng)連接W5500的Web Socket Server,握手操作完成后,建立數據通信通道。這樣硬件就可以毫無(wú)障礙地將溫濕度數據發(fā)送給瀏覽器了。瀏覽器收到溫濕度數據后,使用canvas函數在指定位置繪制溫濕度指示的點(diǎn)和曲線(xiàn)。
  圖3 網(wǎng)頁(yè)顯示界面
  畫(huà)布和 Web 套接字
  在瀏覽器端,我們使用 HTML5 的 Canvas 繪圖工具和 WebSocket API 來(lái)構建我們的 Web 界面。當有新的溫濕度數據到來(lái)時(shí),畫(huà)布坐標系中會(huì )有點(diǎn)顯示,并標出編號,隨著(zhù)采集次數的增加,可以進(jìn)行多次數據連接,看曲線(xiàn)變化。網(wǎng)頁(yè)程序步驟如下:
  1)創(chuàng )建頁(yè)面和畫(huà)布所屬的style和body標簽
  2)繪制坐標軸,添加標題;建立 WebSocket 連接
  3)新數據到達,畫(huà)點(diǎn)畫(huà)線(xiàn)
  用畫(huà)布繪圖
  下面首先介紹如何創(chuàng )建畫(huà)布以及代碼中使用的繪圖函數。
  1)創(chuàng )建一個(gè)600×400的畫(huà)布,單位為像素
  '圖'width='600'height='400'&gt;
  2) 定義畫(huà)布的邊框寬度、顏色和填充大小。
  #圖表{
  邊框:1px 實(shí)心#03F;
  邊距:0 40px 0 80px;
  }
  3)JavaScript要繪制畫(huà)布,首先需要通過(guò)目標畫(huà)布的id獲取繪制環(huán)境。代碼需要通過(guò)id獲取canvas元素,然后使用該元素的getContext方法獲取其二維繪圖環(huán)境的引用
  canvas=document.getElementById('圖形');
  
  context=canvas.getContext('2d');
  4)畫(huà)線(xiàn)段
  context.lineWidth=2;//設置線(xiàn)寬
  context.strokeStyle='#999';//設置線(xiàn)條的顏色
  context.moveTo(x1,y1);//移動(dòng)到起點(diǎn)
  context.lineTo(x2,y2);//創(chuàng )建一條到終點(diǎn)的路徑
  context.stroke();//實(shí)際畫(huà)這條直線(xiàn)
  5)畫(huà)圓
  context.fillStyle='#000';//設置填充顏色
  context.beginPath();
  context.arc(x,y,2,0,Math.PI*2,true);//在坐標(x,y)處畫(huà)一個(gè)半徑為2的圓
  語(yǔ)境。關(guān)閉路徑();
  context.fill();//給圓圈填充顏色
  6)在指定位置寫(xiě)入標題文字
  context.fillText(text,x,y,maxWidth);
  結合上面的函數,畫(huà)出下圖。如果覺(jué)得這還不夠炫,html5 canvas還提供了漸變色、旋轉、插畫(huà)等功能。使用您的設計制作您自己的前端界面。
  圖 4 畫(huà)布示例圖
  WebSocket的使用接下來(lái)我們介紹一下WebSocket在html5中的使用及相關(guān)功能
  1)為了創(chuàng )建websocket連接,代碼需要創(chuàng )建一個(gè)WebSocket接口實(shí)例,傳入web服務(wù)的URL地址,sensorWebSocket對象會(huì )嘗試連接監聽(tīng)相應URL的服務(wù)
  varwsUri='ws:192.168.10.111:1818';
  sensorWebSocket=newWebSocket(wsUri);
  2)注冊事件,為事件鏈接相應的處理函數。比如瀏覽器頁(yè)面收到服務(wù)器的數據后,觸發(fā)onmessage事件,然后調用onMessage函數。在代碼中,我們注冊了四個(gè)事件:onopen、onmessage、onclose和onerror
  sensorWebSocket.onmessage=函數(evt){onMessage(evt)};
  3)消息處理函數。在硬件上,我們將采集到的溫濕度數據用'.'連接起來(lái)。在瀏覽器端,接收到數據后,使用字符串切分函數,將溫濕度數據進(jìn)行切分,存儲在一個(gè)數組對象中。下面的代碼是將指示轉換成坐標值顯示在畫(huà)布上,這里就不贅述了。
  functiononMessage(evt){
  vararrayTH = 新數組(2);
  arrayTH=evt.data.split('.');
  ...
  }
  4)主動(dòng)關(guān)閉websocket連接
  傳感器網(wǎng)絡(luò )套接字。關(guān)();
  怎么樣,websocket的使用很簡(jiǎn)單。使用這個(gè)強大的工具,您可以連接到遠程服務(wù)器并接收和發(fā)送消息。這個(gè)功能在雙向通信中非常有用,尤其是需要服務(wù)端主動(dòng)向瀏覽器頁(yè)面發(fā)送消息的時(shí)候。
  Web Socket 握手和數據幀
  在服務(wù)端創(chuàng )建好socket之后,首先要和客戶(hù)端進(jìn)行數據通信才能完成握手,那么在列出程序的時(shí)候如何實(shí)現這個(gè)握手呢,先看看握手過(guò)程:
  表1 握手過(guò)程
  上面已經(jīng)介紹了客戶(hù)端的代碼,下面是硬件中服務(wù)器1和2的代碼:
  #define WS_SERVER_PORT 1818//定義服務(wù)器監聽(tīng)的端口號
  socket(s,Sn_MR_TCP, WS_SERVER_PORT,0x20);//在W5500中建立socket連接
  listen(s);//開(kāi)啟監聽(tīng) s變量為W5500的socket序號,本例程中使用的是數字2
  下面是為W5500配置的網(wǎng)絡(luò )信息,其中IP地址為我們?yōu)g覽器頁(yè)面程序的websocket對象的監聽(tīng)地址。
  uint8 mac[6]={0x00,0x08,0xdc,0x11,0x11,0x11};
  
  uint8 嘴唇[4]={192,168,10,111};
  uint8 sub[4]={255,255,255,0};
  uint8gw[4]={192,168,10,1};
  設置SHAR(mac);
  設置SUBR(子);
  設置GAR(gw);
  設置SIPR(嘴唇);
  硬件中server 5、6、7進(jìn)程相關(guān)代碼:
  charsec_ws_key[32]={0x00,};
  characcept_key[32]={0x00,};
  //獲取Sec-WebSocket-Key:
  if(strstr((charconst*)wsRxBuf,"Sec-WebSocket-Key:"))
  {
  mid((char*)wsRxBuf,"Sec-WebSocket-Key: ","\r\n",sec_ws_key);//攔截sec_key
  calc_accept_key(sec_ws_key, accept_key);//編碼函數
  sprintf((char*)wsTxBuf, "HTTP/1.1 101 SwitchingProtocols\r\nUpgrade: WebSocket\r\nConnection:Upgrade\r\nSec-WebSocket-Accept: %s\r\n\r\n", accept_key); // 生成握手消息
  send(s,wsTxBuf,strlen((char*)wsTxBuf));//發(fā)送給客戶(hù)端
  }
  握手=1;
  這似乎有點(diǎn)抽象。讓我們看看實(shí)際的數據包。最上面的紅色字體是瀏覽器頁(yè)面的握手請求。Sec-websoket-Key之后就是我們截取的sec_key,后面的藍色字體就是服務(wù)器端的握手響應。,sec-websoket-Accept就是我們編碼好的accept_key,怎么樣,一目了然。
  圖5 握手過(guò)程捕獲信息
  握手成功后,可以將定時(shí)采集的溫濕度數據發(fā)送到硬件端的瀏覽器頁(yè)面。WebSocket 協(xié)議的數據包非常輕量。下面介紹數據包的幀格式:
  圖 6 WebSocket 數據幀格式
  上圖是官方的結構圖,第一個(gè)字節,第一位是FIN,后三位是RSV1到3。RSV是保留空間,用0填充,那么只需要前4位的第一個(gè)FIN要設置。接下來(lái)的四位存儲操作碼的值,它定義了有效載荷數據的解釋。FIN 用于指示消息的最后一個(gè)片段。如果只有一條消息,則FIN為1;這里我們使用opcode定義數據為text-0x1,所以第一個(gè)字的二進(jìn)制是1000001(0x81),第一個(gè)1是FIN值,最后一個(gè)1是opcode的值。
  然后是第二個(gè)字節的數據,由1位的MASK和7位的PayloadLen組成。MASK標識本數據幀的數據是否使用掩碼,PayloadLen表示數據部分的長(cháng)度。但是,PayloadLen 只有 7 位。如果換成無(wú)符號整數,它只有0到127之間的值。當然,這么小的值不能描述更大的數據。所以規定當數據長(cháng)度小于等于125時(shí),作為數據長(cháng)度的描述。,如果值為126,則接下來(lái)的兩個(gè)字節用于存放數據長(cháng)度,如果為127,則接下來(lái)的八個(gè)字節用于存放數據長(cháng)度。這里我們每次只發(fā)送5個(gè)字節的溫濕度數據,沒(méi)有使用掩碼,所以配置為0x05。
  然后就是上圖中的MaskingKey,它占用四個(gè)字節,存放mask的entity部分。但是這個(gè)數據只有在前面的MASK設置為1的時(shí)候才有,否則不使用mask就沒(méi)有這個(gè)數據了。最后是數據部分。如果掩碼存在,則所有數據都需要與掩碼進(jìn)行異或。如果沒(méi)有掩碼,那么可以直接使用下面的數據。
  看看我們的數據發(fā)送代碼是如何實(shí)現的:
  wsTxBuf[0]=0x81;
  wsTxBuf[1]=0x05;
  wsTxBuf[2]= 溫度/10+0x30;
  wsTxBuf[3]= 溫度+0x30;
  wsTxBuf[1]=0x2E;//分隔符'.'
  wsTxBuf[2]=Humi/10+0x30;
  wsTxBuf[3]= Humi+0x30;
  發(fā)送(s,wsTxBuf,strlen((char*)wsTxBuf));
  代碼是不是很簡(jiǎn)單!
  數據采集
  然后簡(jiǎn)要描述數據采集
過(guò)程。我們選用溫濕度傳感器DHT11實(shí)時(shí)采集并上傳室內溫濕度數據。這里,DHT11用于連接MCU(W5500)。它與MCU的通訊只需要一個(gè)I/O口,使用非常方便。DHT11與單片機的具體連接及相關(guān)調試這里不再詳述??梢运阉飨嚓P(guān)信息。
  相信隨著(zhù)HTML5的不斷成熟,它帶來(lái)的不僅僅是PC環(huán)境的Web革命。對于嵌入式領(lǐng)域,也能帶來(lái)更好的客戶(hù)體驗和產(chǎn)品性能。當然,我們還是要用到W5500這個(gè)特色以太網(wǎng)芯片。其全硬件的TCP/IP協(xié)議棧不僅大大節省了寶貴的嵌入式資源,也省去了很多開(kāi)發(fā)步驟和難度,使我們可以用更多的資源和精力來(lái)實(shí)現更精彩的Web功能。
  如果你感興趣,趕快做一個(gè)屬于你的在線(xiàn)實(shí)時(shí)采集系統吧。
  請到#p2527 下載完整的程序代碼程序。
  解決方案:如何高效的上架商品,采集產(chǎn)品到獨立站
  如何快速采集產(chǎn)品到獨立站?
  獨立跨境電商網(wǎng)站收貨后快速上架的情況很常見(jiàn),可以為賣(mài)家節省大量的時(shí)間和精力。
  有了采集工具,每天有上千種產(chǎn)品并不難。當然現在的獨立站已經(jīng)不是分發(fā)的時(shí)代了,講究的是精細分發(fā)。
  在shopyy獨立站后臺應用中心,應用商店,搜集,可以看到建站系統為賣(mài)家提供的免費采集
工具。
  支持:采集Shopify、亞馬遜、阿里巴巴、1688、速賣(mài)通等主流平臺的商品數據。
  推薦使用場(chǎng)景: 注意事項:
  教程:
  首先,如果你沒(méi)有安裝谷歌瀏覽器,你必須先安裝一個(gè)。
  應用中心,我的應用,設置,點(diǎn)擊下載插件,順便復制api鏈接
  
  然后打開(kāi)瀏覽器,點(diǎn)擊如圖所示的插件,如果沒(méi)有開(kāi)啟開(kāi)發(fā)者模式,點(diǎn)擊開(kāi)啟,加載解壓后的安裝包或者拖放到這個(gè)頁(yè)面。
  然后可以看到一個(gè)優(yōu)采云
抓圖工具插件,把它固定到工具欄上。
  點(diǎn)擊店鋪圖標,店鋪管理,給店鋪一個(gè)code,方便識別,
  一鍵粘貼并確認。
  前后可以打開(kāi)跨境電商平臺,開(kāi)始選擇商品收貨到獨立站。
  已成功采集
的商品可以在后臺的商品管理中看到,在已下架的商品中可以看到。如果采集的產(chǎn)品再次采集,會(huì )提示重復采集。
  
  使用產(chǎn)品批量修改工具,可以在申請中心修改多個(gè)產(chǎn)品的價(jià)格,實(shí)現批量上架。
  補充:除了平臺之外,我們經(jīng)常會(huì )遇到一些其他的獨立站想要收貨??梢允褂眠@個(gè)第三方工具采集導出shopify格式,然后在后臺應用中心選擇shopify導入。
  shopcaiji采集工具還是很強大的,支持主流的saas建站和開(kāi)源系統。擁有如此萬(wàn)能的采集工具,將大大提高尚品的效率。
  shopcaiji是一個(gè)支持采集
的建站平臺
  SAAS模式建站:shopify、oemsas、shopyy、shoplazza、shopline、xshopy、shopbase、wshop、
  開(kāi)源自建站:wordpress、opencart、magento
  基本涵蓋市面上所有主流建站平臺,還支持單品采集、全目錄采集、全站采集,可根據您的需求靈活配置。
  有免費版和付費版可供選擇。支持免費試用,滿(mǎn)意后再開(kāi)通。允許會(huì )員在同一個(gè)公網(wǎng)IP下以多個(gè)用戶(hù)登錄,即一個(gè)公司同一個(gè)IP。您只需購買(mǎi)一個(gè)即可供整個(gè)公司使用。
  采集工具官網(wǎng):

匯總:文章實(shí)時(shí)采集新聞熱點(diǎn),然后自己進(jìn)行后期加工改編排版

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 125 次瀏覽 ? 2022-11-21 01:22 ? 來(lái)自相關(guān)話(huà)題

  匯總:文章實(shí)時(shí)采集新聞熱點(diǎn),然后自己進(jìn)行后期加工改編排版
  文章實(shí)時(shí)采集新聞熱點(diǎn),然后自己進(jìn)行后期加工改編排版,然后讓專(zhuān)業(yè)的新聞熱點(diǎn)圖編輯器制作成網(wǎng)頁(yè)讓用戶(hù)瀏覽,說(shuō)到底網(wǎng)易新聞客戶(hù)端就是一個(gè)加工廠(chǎng),提供給用戶(hù)新聞素材、去掉水印、去掉廣告、去掉殘余。
  
  網(wǎng)易新聞是評論類(lèi)新聞客戶(hù)端,意義就是由你評論一條新聞或打個(gè)結論。
  生產(chǎn)新聞的傳播方,可以被你消費,無(wú)論是taobao、微博、pc、紙媒,都會(huì )生產(chǎn)或者發(fā)行新聞,評論則是這些的評論,有事實(shí),有觀(guān)點(diǎn),現在利用評論而獲得的粉絲數等都是社會(huì )價(jià)值的體現。taobao是平臺,微博是消費,紙媒是承載,
  
  個(gè)人看法,新聞類(lèi)app,寫(xiě)稿的是人,發(fā)稿的是機器,兩種不同的交流方式。優(yōu)勢是評論即新聞,不用擔心,不怕原文里夾帶私貨,不怕回憶重重有虛無(wú)。劣勢是評論大多為個(gè)人意見(jiàn),觀(guān)點(diǎn)變動(dòng)太大。
  要用獨特的視角去看待它
  評論制作的媒介主要是文字和圖片。首先,在文字評論的基礎上,新聞評論的考究要求需要考慮到受眾感受和需求,通過(guò)圖片的后期制作和排版等方式豐富文字評論的表現力。缺點(diǎn)也是明顯的,文字評論不適用于直觀(guān)的視頻和圖片對于受眾的影響,圖片因為易于修改或制作周期短很適合在節假日制作短視頻與圖片搭配。文字評論與視頻結合也會(huì )有例外,像春晚文字評論可以緊扣節日主題,長(cháng)連播文字評論方式便于大眾識別識別度高。就看你想要占據哪一個(gè)定位。 查看全部

  匯總:文章實(shí)時(shí)采集新聞熱點(diǎn),然后自己進(jìn)行后期加工改編排版
  文章實(shí)時(shí)采集新聞熱點(diǎn),然后自己進(jìn)行后期加工改編排版,然后讓專(zhuān)業(yè)的新聞熱點(diǎn)圖編輯器制作成網(wǎng)頁(yè)讓用戶(hù)瀏覽,說(shuō)到底網(wǎng)易新聞客戶(hù)端就是一個(gè)加工廠(chǎng),提供給用戶(hù)新聞素材、去掉水印、去掉廣告、去掉殘余。
  
  網(wǎng)易新聞是評論類(lèi)新聞客戶(hù)端,意義就是由你評論一條新聞或打個(gè)結論。
  生產(chǎn)新聞的傳播方,可以被你消費,無(wú)論是taobao、微博、pc、紙媒,都會(huì )生產(chǎn)或者發(fā)行新聞,評論則是這些的評論,有事實(shí),有觀(guān)點(diǎn),現在利用評論而獲得的粉絲數等都是社會(huì )價(jià)值的體現。taobao是平臺,微博是消費,紙媒是承載,
  
  個(gè)人看法,新聞類(lèi)app,寫(xiě)稿的是人,發(fā)稿的是機器,兩種不同的交流方式。優(yōu)勢是評論即新聞,不用擔心,不怕原文里夾帶私貨,不怕回憶重重有虛無(wú)。劣勢是評論大多為個(gè)人意見(jiàn),觀(guān)點(diǎn)變動(dòng)太大。
  要用獨特的視角去看待它
  評論制作的媒介主要是文字和圖片。首先,在文字評論的基礎上,新聞評論的考究要求需要考慮到受眾感受和需求,通過(guò)圖片的后期制作和排版等方式豐富文字評論的表現力。缺點(diǎn)也是明顯的,文字評論不適用于直觀(guān)的視頻和圖片對于受眾的影響,圖片因為易于修改或制作周期短很適合在節假日制作短視頻與圖片搭配。文字評論與視頻結合也會(huì )有例外,像春晚文字評論可以緊扣節日主題,長(cháng)連播文字評論方式便于大眾識別識別度高。就看你想要占據哪一個(gè)定位。

解讀:一篇對大數據深度思考的文章,讓你認識并讀懂大數據

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 228 次瀏覽 ? 2022-11-20 03:09 ? 來(lái)自相關(guān)話(huà)題

  解讀:一篇對大數據深度思考的文章,讓你認識并讀懂大數據
  在寫(xiě)這篇文章之前,我發(fā)現我身邊的很多IT人往往都渴望這些熱門(mén)的新技術(shù)和新趨勢,但很難說(shuō)透徹,如果你問(wèn)他大數據和你有什么關(guān)系?估計很少能說(shuō)出一、二、三的名字。原因是每個(gè)人都對新技術(shù)有著(zhù)同樣的原創(chuàng )
渴望,至少他們在聊天時(shí)看起來(lái)并不“臟”;其次,工作和生活環(huán)境中能夠真正參與大數據實(shí)踐的案例太少,所以沒(méi)有必要讓大家花時(shí)間去了解原因。
  我希望有些不同,所以我考慮了如何理解大數據,包括查閱數據和
  翻閱最新的專(zhuān)業(yè)書(shū)籍,但我不想簡(jiǎn)單地整理堆積那些零散的數據碎片或不同的理解,形成毫無(wú)價(jià)值的釋義或評論,我真誠地希望進(jìn)入事物來(lái)探索本質(zhì)。
  如果你說(shuō)大數據就是大數據,或者談?wù)?br />   4 Vs,也許很深入地談?wù)凚I的價(jià)值或者預測,或者以谷歌和亞馬遜為例,技術(shù)流可能談?wù)揌adoop和云計算,無(wú)論是對還是錯,就是無(wú)法勾勒出對大數據的整體理解,不是片面的,但至少是一些猜測,襯衫癢癢的?;蛟S,“解構”才是最好的方式。
  如何構建大數據?
  首先,我認為大數據是互聯(lián)網(wǎng)發(fā)展的一種表象或特征。
  現階段,沒(méi)有必要去神話(huà)它,也沒(méi)有必要對它保持敬畏,在以云計算為代表的技術(shù)創(chuàng )新大幕下,這些原本難以采集
和使用的數據開(kāi)始變得容易使用,通過(guò)各行各業(yè)的不斷創(chuàng )新,大數據將逐漸為人類(lèi)創(chuàng )造更多價(jià)值。
  其次,想要系統的認知大數據,必須全面細致地分解它,我著(zhù)手從三個(gè)層面進(jìn)行擴展:
  第一個(gè)層次是理論,這是認識的必要途徑,也是廣泛認識和傳播的底線(xiàn)。我將從大數據的特征定義來(lái)理解行業(yè)對大數據的整體描述和表征;從對大數據價(jià)值的討論中,我們可以深入分析大數據的可貴性;從大數據的現狀和未來(lái)洞察大數據的發(fā)展趨勢;從大數據隱私的特殊性和重要角度出發(fā),審視人與數據的長(cháng)期博弈。
  第二個(gè)層次是技術(shù),它是大數據體現價(jià)值的手段和基石。我將解釋大數據從采集
、處理、存儲到形成云計算、分布式處理技術(shù)、存儲技術(shù)和感知技術(shù)發(fā)展的結果的全過(guò)程。
  第三個(gè)層次是實(shí)踐,這是大數據的終極價(jià)值體現。我將從互聯(lián)網(wǎng)大數據、政府大數據、企業(yè)大數據和個(gè)人大數據四個(gè)方面描繪大數據所展現的美好場(chǎng)景和將要實(shí)現的藍圖。
  大數據相關(guān)理論
  1
  功能定義
  最早提出大數據時(shí)代到來(lái)的是麥肯錫:“如今,數據已經(jīng)滲透到每個(gè)行業(yè)和業(yè)務(wù)功能領(lǐng)域,成為重要的生產(chǎn)要素。大量數據的挖掘和使用預示著(zhù)新一輪的生產(chǎn)率增長(cháng)和消費者剩余。"
  業(yè)界(最早定義IBM)將大數據的特征概括為4個(gè)“V”(體積、品種、價(jià)值值、速度),或者有四個(gè)層次的特征:一是數據量巨大。大數據的起始測量單位至少是P(1000 T),E(100萬(wàn)T)或Z(10億T);其次,數據類(lèi)型多種多樣。例如,網(wǎng)絡(luò )日志、視頻、圖像、地理位置信息等。三是價(jià)值密度低,商業(yè)價(jià)值高。第四,處理速度快。最后一點(diǎn)也與傳統的數據挖掘技術(shù)有著(zhù)根本的不同。
  事實(shí)上,這些V并不能真正解釋大數據的所有特征,下圖有效地解釋了大數據的一些相關(guān)特征。
  俗話(huà)說(shuō):技術(shù)三分,數據七分,誰(shuí)得到數據誰(shuí)就贏(yíng)天下。誰(shuí)說(shuō)的并不重要,但這句話(huà)的正確性就不用爭論了。Victor Meier-Sch?nberg在《大數據時(shí)代》一書(shū)中舉了數百個(gè)例子,都說(shuō)明了一個(gè)道理:當大數據時(shí)代到來(lái)時(shí),我們必須用大數據思維來(lái)探索大數據的潛在價(jià)值。在書(shū)中,作者提到最多的是谷歌如何利用人們的搜索記錄來(lái)挖掘數據的二次使用價(jià)值,比如預測某個(gè)地方流感爆發(fā)的趨勢;亞馬遜如何利用用戶(hù)的購買(mǎi)和瀏覽歷史數據,做出有針對性的購書(shū)推薦,有效提升銷(xiāo)量;Farecast如何在過(guò)去十年中使用所有航線(xiàn)的折扣機票來(lái)預測用戶(hù)是否會(huì )在正確的時(shí)間購買(mǎi)機票。
  那么,什么是大數據思維?根據維克多·邁耶-勛伯格的說(shuō)法,1 - 需要整個(gè)數據樣本而不是采樣;2-注重效率而不是精度;3-關(guān)注相關(guān)性而不是因果關(guān)系。
  阿里巴巴的王健對大數據也有一些獨到的見(jiàn)解,比如
  “如今的數據不大,真正有意思的是數據已經(jīng)上線(xiàn),這正是互聯(lián)網(wǎng)的特點(diǎn)?!薄爱a(chǎn)品在非互聯(lián)網(wǎng)時(shí)期的功能一定是它的價(jià)值,而今天互聯(lián)網(wǎng)的產(chǎn)品,數據一定是它的價(jià)值?!澳悴幌胧褂脭祿?lái)改善業(yè)務(wù),這不是大數據。你一定做了以前做不到的事情。"
  特別是最后一點(diǎn),我非常同意大數據的真正價(jià)值在于創(chuàng )造,在于填補無(wú)數尚未實(shí)現的空白。
  有些人將數據比作含有能源的煤礦。煤炭按其性質(zhì)分類(lèi),如煉焦煤、無(wú)煙煤、脂肪煤、貧煤等,而露天煤礦和深山煤礦的開(kāi)挖成本不同。同樣,大數據不是“大”,而是“有用”。價(jià)值內容和挖礦成本比數量更重要。
  阿拉伯數字
  價(jià)值討論
  什么是大數據?投資者眼中閃耀著(zhù)兩個(gè)詞:資產(chǎn)。例如,當Facebook上市時(shí),評估人員評估的大部分有效資產(chǎn)都是其社交網(wǎng)站上的數據。
  如果把大數據比作一個(gè)行業(yè),那么這個(gè)行業(yè)盈利的關(guān)鍵在于提高數據的“處理能力”,通過(guò)“處理”實(shí)現數據的“增值”。
  目標
  超市以孕婦在孕期可能購買(mǎi)的20多種產(chǎn)品為基礎,以所有用戶(hù)的購買(mǎi)記錄為數據源,通過(guò)構建模型分析購買(mǎi)者的行為相關(guān)性,可以準確推斷出懷孕的具體時(shí)間,以便Target的銷(xiāo)售部門(mén)在每位懷孕顧客的不同階段發(fā)送相應的產(chǎn)品優(yōu)惠券。
  塔吉特的例子就是一個(gè)很好的例子,證實(shí)了維克多·邁耶-勛伯格(Victor Meier-Sch?nberg)提出的一個(gè)有說(shuō)服力的觀(guān)點(diǎn):通過(guò)識別關(guān)聯(lián)并對其進(jìn)行監控,可以預測未來(lái)。Target通過(guò)監控買(mǎi)家購買(mǎi)商品的時(shí)間和類(lèi)型來(lái)準確預測懷孕時(shí)間,這是二次使用數據的典型例子。如果,通過(guò)從駕駛員的手機采集
GPS數據,我們可以分析出哪些道路目前堵車(chē),我們可以及時(shí)發(fā)出道路交通提醒;通過(guò)采集
汽車(chē)的GPS位置數據,可以分析出城市的哪些區域有更多的停車(chē)位,這也意味著(zhù)該地區有更多的活躍人群,這些分析數據適合出售給廣告商。
  無(wú)論大數據的核心價(jià)值是否
  無(wú)論預測與否,基于大數據形成決策的模型為許多企業(yè)帶來(lái)了利潤和聲譽(yù)。
  從大數據價(jià)值鏈的分析來(lái)看,有三種模式:
  大數據在手,但利用不好;比較典型的是金融機構、電信業(yè)、政府機構等。沒(méi)有數據,但知道如何幫助擁有它的人利用它;典型的是IT咨詢(xún)和服務(wù)公司,如埃森哲,IBM,甲骨文等。既有數據思維,也有大數據思維;比較典型的是谷歌、亞馬遜、萬(wàn)事達卡等。
  未來(lái)在大數據領(lǐng)域最有價(jià)值的是兩件事:
  具有大數據思維的人,能夠將大數據的潛在價(jià)值轉化為實(shí)際收益;沒(méi)有業(yè)務(wù)領(lǐng)域尚未被大數據觸及。這些是未開(kāi)發(fā)的油井,金礦,所謂的藍海。
  沃爾瑪作為零售業(yè)的巨頭,他們的分析師會(huì )對每個(gè)階段的銷(xiāo)售記錄進(jìn)行全面分析,一旦他們意外發(fā)現雖然無(wú)關(guān)緊要但非常有價(jià)值的數據,在美國颶風(fēng)季節,蛋撻和抗颶風(fēng)商品在超市的銷(xiāo)量大幅增加,于是他們做出了明智的決定,將蛋撻的銷(xiāo)售地點(diǎn)移到了颶風(fēng)的一邊。商品銷(xiāo)售區,看似是為了方便用戶(hù)選擇。但沒(méi)想到蛋撻的銷(xiāo)量因此增加了不少。
  另一個(gè)有趣的例子是,1948年遼沈戰役期間,司令員林彪要求每天例行的“軍事情報日報”,由值班參謀宣讀下屬各縱隊、師、團的無(wú)線(xiàn)電報的戰情和俘虜情況。這幾乎是重復同樣無(wú)聊的數據:每個(gè)單位殲滅了多少敵人,俘虜了多少俘虜;有多少火炮、車(chē)輛、槍支、物資...一天,參謀照例匯報當天的戰情時(shí),林彪突然打斷他:“你剛才聽(tīng)到胡家棚屋里打仗的消息了嗎?大家都不知所措,因為這樣的戰斗每天都有幾十場(chǎng)戰斗,不都是幾乎一模一樣的無(wú)聊數字嗎?林彪掃了一遍,見(jiàn)沒(méi)人回答,于是連問(wèn)了三個(gè)問(wèn)題:“為什么那里繳獲的短槍和長(cháng)槍的比例比其他戰斗略高?為什么那里的手推車(chē)與被俘虜和摧毀的手推車(chē)的比例略高于其他戰斗?為什么在那里被俘和陣亡的軍官與士兵的比例略高于其他戰斗?林彪司令大步走到掛滿(mǎn)軍事地圖的墻前,指著(zhù)地圖上的點(diǎn)說(shuō):“我猜,不,我決定!敵人的指揮所來(lái)了!果不其然,部隊很快俘虜了敵人的指揮官廖耀祥,并贏(yíng)得了這場(chǎng)重要的戰斗。
  這些例子真實(shí)地體現在各行各業(yè),對數據價(jià)值的追尋取決于掌握數據的人,關(guān)鍵是人的數據思維;與其說(shuō)大數據創(chuàng )造價(jià)值,不如說(shuō)大數據思維引發(fā)了新的價(jià)值增長(cháng)。
  現在和未來(lái)
  讓我們先來(lái)看看大數據在今天是如何做的:
  大數據助力政府實(shí)現市場(chǎng)經(jīng)濟調控、公共衛生安全防范、災害預警、輿情監督;
  大數據幫助城市預防犯罪,實(shí)現智慧交通,提升應急能力。
  大數據幫助醫療機構建立患者疾病風(fēng)險跟蹤機制,幫助藥企改善藥物臨床使用,幫助艾滋病研究機構為患者提供定制化藥物。
  大數據幫助航空公司節約運營(yíng)成本,電信公司提高售后服務(wù)質(zhì)量,保險公司識別欺詐和保險欺詐,快遞公司監控和分析運輸車(chē)輛故障提前預警維修,電力公司有效識別和預警即將發(fā)生故障的設備。
  大數據幫助電商企業(yè)向用戶(hù)推薦商品和服務(wù),幫助旅游網(wǎng)站為游客提供自己喜歡的旅游路線(xiàn),幫助二手市場(chǎng)的買(mǎi)賣(mài)雙方找到最合適的交易標的,幫助用戶(hù)找到最合適的購買(mǎi)期、商家和最優(yōu)惠的價(jià)格。大數據幫助企業(yè)提高
  營(yíng)銷(xiāo)針對性,降低物流和庫存成本,降低投資風(fēng)險,幫助企業(yè)提高廣告精準度;
  大數據幫助娛樂(lè )行業(yè)預測歌手、歌曲、電影、電視劇的熱度,為投資者分析評估拍一部電影最合適的錢(qián)是多少,否則可能無(wú)法收回成本;
  大數據幫助社交網(wǎng)站提供更精準的好友推薦,為用戶(hù)提供更精準的企業(yè)招聘信息,推薦用戶(hù)可能喜歡的游戲和適合購買(mǎi)的產(chǎn)品。
  
  其實(shí)這些還遠遠不夠,大數據的身影在未來(lái)應該無(wú)處不在,即使無(wú)法準確預測大數據最終會(huì )給人類(lèi)社會(huì )帶來(lái)哪種最終形態(tài),但我相信,只要發(fā)展步伐繼續下去,大數據引發(fā)的變革浪潮很快就會(huì )淹沒(méi)地球的每一個(gè)角落。
  比如亞馬遜的終極期望是:“最成功的圖書(shū)推薦應該是唯一的書(shū),也就是用戶(hù)會(huì )買(mǎi)的下一本書(shū)。"
  谷歌
  同樣希望用戶(hù)搜索的最佳體驗是搜索結果只收錄
用戶(hù)需要的內容,而這并不需要用戶(hù)給Google太多提示。
  當發(fā)展
  物聯(lián)網(wǎng)達到一定規模,借助條碼、二維碼、RFID等唯一標識產(chǎn)品,傳感器、可穿戴設備、智能感知、視頻采集、增強現實(shí)等技術(shù)可以實(shí)現信息的實(shí)時(shí)采集和分析,這些數據可以支撐智慧城市、智慧交通、智慧能源、智慧醫療、智慧環(huán)保等概念需求, 這些所謂的智慧,就是大數據數據源的集合和服務(wù)范圍。
  除了更好地解決社會(huì )問(wèn)題、商業(yè)營(yíng)銷(xiāo)問(wèn)題、科技問(wèn)題外,未來(lái)的大數據政策也將出現可預見(jiàn)的以人為本的大數據政策趨勢。人才是地球的主人,大部分數據都與人類(lèi)有關(guān),需要通過(guò)大數據解決人類(lèi)的問(wèn)題。
  比如建立個(gè)人數據中心,整合大家的日常習慣、身體體征、社交網(wǎng)絡(luò )、智力、愛(ài)好氣質(zhì)、疾病愛(ài)好、情緒波動(dòng)......換句話(huà)說(shuō),一個(gè)人從出生的那一刻起的每一分每一秒都被記錄下來(lái),除了頭腦之外的一切都被存儲起來(lái),這些數據可以得到充分利用:
  當然,以上一切看起來(lái)都不錯,但前提是犧牲用戶(hù)的自由嗎?只能說(shuō),新事物帶來(lái)創(chuàng )新的同時(shí),也帶來(lái)了“萌芽”。比如在手機普及之前,大家都喜歡聚在一起聊天,自從手機普及,尤其是有了互聯(lián)網(wǎng),大家不需要聚在一起就可以隨時(shí)隨地聊天,但“病菌”滋生了另一種情況,大家慢慢習慣了與手機共度時(shí)光,人與人之間的情感交流似乎永遠被一個(gè)“網(wǎng)絡(luò )”隔開(kāi)了。
  大數據隱私
  您可能不敏感,當您在不同網(wǎng)站上注冊個(gè)人信息時(shí),可能已經(jīng)擴散,當您莫名其妙地收到各種電子郵件、電話(huà)、短信滋擾時(shí),您不會(huì )想到您的電話(huà)號碼、郵箱、生日、購買(mǎi)記錄、收入水平、家庭住址、親友等私人信息早已被各種商業(yè)組織非法存儲或出售給任何其他有需要的企業(yè)或個(gè)人。
  更可怕的是,你永遠無(wú)法刪除這些信息,它們將永遠存在于互聯(lián)網(wǎng)的某個(gè)你不知道的角落。除非您替換所有信息,否則成本太高。用戶(hù)隱私
  問(wèn)題一直是大數據應用中難以繞開(kāi)的問(wèn)題,如央視曝光的焦點(diǎn)無(wú)線(xiàn)、洛威鄧白氏、網(wǎng)易郵箱等,都涉及侵犯用戶(hù)隱私。目前,我國沒(méi)有專(zhuān)門(mén)的法律法規來(lái)定義用戶(hù)隱私,其他相關(guān)法律法規多用于解釋相關(guān)問(wèn)題。然而,隨著(zhù)公眾隱私意識的提高,合法和合規地訪(fǎng)問(wèn)數據,數據分析和應用數據是進(jìn)行大數據分析時(shí)必須遵循的原則。
  說(shuō)到隱私被侵犯,愛(ài)德華?斯諾登應該為這位前中央情報局雇員提供一席之地,他單槍匹馬地引爆了有關(guān)美國棱鏡計劃的內部信息。Project Prism是自2007年以來(lái)由國家安全局(NSA)運營(yíng)的絕密電子監視計劃,每年花費近2000億美元來(lái)監控美國各地的電話(huà)記錄,據稱(chēng)允許情報人員訪(fǎng)問(wèn)九家主要科技公司的服務(wù)器,包括微軟,雅虎,谷歌,Facebook,PalTalk,AOL,Skype,YouTube和蘋(píng)果。這一事件引發(fā)了人們對政府使用大數據時(shí)侵犯公民隱私的擔憂(yōu)。
  環(huán)顧四周,當微博、微信、QQ空間這些社交平臺肆意吞噬數億用戶(hù)的各種信息時(shí),你不要指望你有隱私,即使你刪除了某處,但也許這些信息已經(jīng)被別人復制或保存了,更有可能被百度或者谷歌保存成快照,早就提供給任何用戶(hù)搜索。
  因此,在大數據的背景下,很多人都在積極抵制無(wú)底洞的數字化,這場(chǎng)大數據與個(gè)人的博弈將永遠持續下去......
  專(zhuān)家就如何在大數據背景下有效保護隱私給出了一些建議:
  減少信息的數字化;隱私立法;數字隱私基礎設施(類(lèi)似于DRM數字版權管理);人類(lèi)改變認知(接受忽略過(guò)去);打造良性信息生態(tài);語(yǔ)境化。
  但這些都不是立即有效或實(shí)質(zhì)性改善的。
  例如,現在有一個(gè)職業(yè)叫做帖子編輯,專(zhuān)門(mén)負責幫助人們刪除帖子和刪除主要網(wǎng)站上的評論。實(shí)際上,這些人正在入侵主要網(wǎng)站,破解管理員的密碼,然后手動(dòng)刪除它。只是他們不保護客戶(hù)的隱私,而主要是丑聞。還有一個(gè)職業(yè)叫做人肉專(zhuān)家,他們負責從互聯(lián)網(wǎng)上查找與他們無(wú)關(guān)的用戶(hù)的任意信息。這是一件可怕的事情,也就是說(shuō),如果有人想找到你,只需要兩個(gè)條件:1-你一直在互聯(lián)網(wǎng)上并留下了痕跡;2-您的朋友和家人或只是認識您的人一直在互聯(lián)網(wǎng)上并留下了您的蹤跡。如果滿(mǎn)足這兩個(gè)條件之一,人類(lèi)動(dòng)物學(xué)家可以很容易地找到你,并可能知道你在餐廳和誰(shuí)共進(jìn)晚餐。
  當很多互聯(lián)網(wǎng)公司意識到隱私對用戶(hù)的重要性時(shí),為了繼續獲得用戶(hù)的信任,他們采取了許多措施,比如谷歌承諾只保留用戶(hù)的搜索記錄9個(gè)月,瀏覽器廠(chǎng)商提供隱身沖浪模式,社交網(wǎng)站拒絕來(lái)自公共搜索引擎的爬蟲(chóng)進(jìn)入, 所提供的所有數據都將匿名處理。
  在這種復雜的環(huán)境下,很多人仍然沒(méi)有樹(shù)立信息隱私的保護意識,讓自己處于被騷擾、精心設計、使用、監控的境地。然而,我們幾乎無(wú)能為力,因為個(gè)人隱私數據不再受我們控制,正如一首詩(shī)所說(shuō):“如果你現在繼續麻木,那么不要指望這種麻木能承受被”剝離“那一刻的恐慌和絕望”
  大數據相關(guān)技術(shù)
  云技術(shù)
  大數據通常與云計算相關(guān)聯(lián),因為對大型數據集的實(shí)時(shí)分析需要一個(gè)分布式處理框架將工作分配給數十、數百甚至數萬(wàn)臺計算機??梢哉f(shuō),云計算起到了工業(yè)革命引擎的作用,而大數據就是電。
  云計算思想的起源是由麥卡錫在 60 年代提出的:作為水和電一樣的公用事業(yè)為用戶(hù)提供計算能力。
  如今,在谷歌、亞馬遜、Facebook等一批互聯(lián)網(wǎng)公司的帶領(lǐng)下,出現了一種有效的模式:云計算提供了一個(gè)基礎設施平臺,大數據應用運行在這個(gè)平臺上。
  業(yè)內人士這樣描述兩者的關(guān)系:沒(méi)有大數據信息的積累,云計算的算力再強大,也很難找到用處;沒(méi)有云計算的處理能力,大數據的信息積累再豐富,也終究只是一面鏡子。
  那么大數據需要哪些云計算技術(shù)呢?
  以下是一些示例,例如虛擬化技術(shù)、分布式處理技術(shù)、海量數據存儲和管理技術(shù)、NoSQL、實(shí)時(shí)流數據處理、智能分析技術(shù)(類(lèi)似于模式識別和自然語(yǔ)言理解)等。
  云計算與大數據的關(guān)系可以用下圖來(lái)說(shuō)明,兩者的結合會(huì )產(chǎn)生以下效果:它可以基于海量業(yè)務(wù)數據提供更多創(chuàng )新的服務(wù);通過(guò)云計算技術(shù)的不斷發(fā)展,降低大數據業(yè)務(wù)的創(chuàng )新成本。
  如果將云計算與大數據進(jìn)行比較,最明顯的區別在于兩個(gè)方面:
  分布式處理技術(shù)
  分布式處理系統
  可以將不同位置或具有不同功能或具有不同數據的多臺計算機與通信網(wǎng)絡(luò )連接起來(lái),在控制系統的統一管理和控制下協(xié)調完成信息處理任務(wù)——這就是分布式處理系統的定義。
  以Hadoop為例(Yahoo
 ?。┮訷ahoo為例,Hadoop是一個(gè)軟件框架,它實(shí)現了MapReduce模式,對大量數據進(jìn)行分布式處理,這些數據以可靠,高效和可擴展的方式進(jìn)行處理。
  MapReduce是一種核心計算模式
  谷歌提出的云計算,是一種分布式計算技術(shù),也是一種簡(jiǎn)化的分布式編程模型,MapReduce模式的主要思想是將要執行的問(wèn)題(如程序)自動(dòng)拆分為map(map)和reduce(簡(jiǎn)化)的方式,數據被拆分后通過(guò)map函數程序將數據映射到不同的塊中, 分配給計算機隊列進(jìn)行處理以達到分布式計算的效果,結果通過(guò)Reduce功能在程序中聚合,從而輸出開(kāi)發(fā)人員所需的結果。
  首先,它是可靠的,因為它假設計算元素和存儲將發(fā)生故障,因此它維護工作數據的多個(gè)副本,以確保處理可以在故障節點(diǎn)之間重新分配。其次,Hadoop是高效的,因為它并行工作,通過(guò)并行處理加快處理速度。Hadoop也是可擴展的,能夠處理PB級的數據。此外,Hadoop依賴(lài)于社區服務(wù)器,因此成本相對較低,任何人都可以使用。
  你也可以這樣理解Hadoop的組成,Hadoop=HDFS(文件系統、數據存儲技術(shù)相關(guān))+HBase(數據庫)+MapReduce(數據處理)+...別人
  Hadoop中使用的一些技術(shù)是:
  說(shuō)了這么多,舉個(gè)實(shí)際的例子,雖然這個(gè)例子有點(diǎn)老舊,但淘寶的海量數據技術(shù)架構還是能幫助我們理解大數據的運行和處理機制:
  淘寶大數據如上圖所示,
  淘寶的海量數據產(chǎn)品技術(shù)架構分為五個(gè)層次,從上到下分別是:數據源層、計算層、存儲層、查詢(xún)層和產(chǎn)品層。
  存儲技術(shù)
  大數據可以抽象地分為大數據存儲和大數據分析,兩者的關(guān)系是:大數據存儲的目的是支持大數據分析。到目前為止,計算機技術(shù)已經(jīng)是兩個(gè)截然不同的領(lǐng)域:大數據存儲致力于開(kāi)發(fā)可擴展到PB甚至EB的數據存儲平臺;大數據分析專(zhuān)注于在最短的時(shí)間內處理大量不同類(lèi)型的數據集。
  說(shuō)到存儲,有一個(gè)著(zhù)名的摩爾定律,我相信每個(gè)人都聽(tīng)說(shuō)過(guò):集成電路的復雜性在18個(gè)月內翻了一番。因此,內存成本大約每 18-24 個(gè)月下降一半。成本下降也使大數據可存儲。例如,谷歌
  管理著(zhù)超過(guò)50萬(wàn)臺服務(wù)器和100萬(wàn)個(gè)硬盤(pán),谷歌也在不斷擴大計算能力和存儲容量,其中很多都是基于廉價(jià)的服務(wù)器和普通存儲硬盤(pán),大大降低了其服務(wù)成本,因此可以在技術(shù)研發(fā)上投入更多的資金。
  就亞馬遜而言,Amazon S3是一種面向互聯(lián)網(wǎng)的存儲服務(wù)。該服務(wù)旨在使開(kāi)發(fā)人員更容易進(jìn)行網(wǎng)絡(luò )規模的計算。Amazon S3 提供了一個(gè)簡(jiǎn)潔的 Web 服務(wù)界面,允許用戶(hù)隨時(shí)隨地在 Web 上存儲和檢索任何大小的數據。該服務(wù)使所有開(kāi)發(fā)人員都可以訪(fǎng)問(wèn)亞馬遜用于運行其全球網(wǎng)站網(wǎng)絡(luò )的相同可擴展、可靠、安全和快速成本的基礎設施??紤] S3 的設計指標:給定年份中對象的 99.9999999999% 的持久性和 99.99% 的可用性,以及承受兩個(gè)設施的數據丟失的能力。
  S3 已經(jīng)成功并且確實(shí)有效,S3 云中有數萬(wàn)億個(gè)存儲對象,并且性能相當不錯。S3 Cloud已經(jīng)跨區域存儲了數萬(wàn)億個(gè)對象,AWS的對象執行請求已達到100萬(wàn)個(gè)的峰值。全球已有數十萬(wàn)家企業(yè)通過(guò) AWS 運行其全部或部分日常業(yè)務(wù)。這些業(yè)務(wù)遍布 190 多個(gè)國家/地區,亞馬遜用戶(hù)幾乎遍布世界每個(gè)角落。
  
  感知技術(shù)
  大數據的采集
和傳感技術(shù)的發(fā)展密切相關(guān)?;趥鞲衅骷夹g(shù)、指紋識別技術(shù)、RFID技術(shù)、坐標定位技術(shù)等感知能力的提升也是物聯(lián)網(wǎng)發(fā)展的基石。世界各地的工業(yè)設備、汽車(chē)、電表上都有無(wú)數的數字傳感器,它們隨時(shí)測量和傳輸位置、運動(dòng)、振動(dòng)、溫度、濕度,甚至空氣中化學(xué)物質(zhì)的變化,這將產(chǎn)生海量的數據信息。
  隨著(zhù)智能手機的普及,感知技術(shù)可以
  可謂是發(fā)展的巔峰,除了地理位置信息的廣泛應用外,一些新的感知手段也開(kāi)始出現在舞臺上,比如最新的“iPhone 5S”在Home鍵中嵌入了指紋傳感器,新手機可以直接檢測呼氣燃燒的脂肪量,手機的嗅覺(jué)傳感器可以監測從空氣污染到危險化學(xué)品, 微軟正在開(kāi)發(fā)能夠感知用戶(hù)當前情緒的智能手機技術(shù),谷歌眼鏡InSight新技術(shù)使人能夠通過(guò)服裝進(jìn)行識別。
  此外,還有許多與感知相關(guān)的技術(shù)創(chuàng )新讓我們精神煥發(fā):例如,牙科傳感器實(shí)時(shí)監測口腔活動(dòng)和飲食,嬰兒可穿戴設備可以使用大數據撫養嬰兒,英特爾正在開(kāi)發(fā)可以跟蹤眼睛和讀取情緒的3D筆記本電腦相機,日本公司正在開(kāi)發(fā)可以監測用戶(hù)心率的新型紡織材料, 該行業(yè)正試圖將生物識別技術(shù)引入支付領(lǐng)域。
  事實(shí)上,這個(gè)過(guò)程
  這些感知被逐漸捕捉,就是世界被數據化的過(guò)程,一旦世界完全數據化,那么世界的本質(zhì)就是信息。
  俗話(huà)說(shuō):“人類(lèi)過(guò)去延續文明,現在繼承信息。"
  大數據的實(shí)踐
  互聯(lián)網(wǎng)大數據
  因特網(wǎng)上的數據每年增長(cháng)50%,每?jì)赡陮⒎环?,而目前世界?0%以上的數據是最近幾年才產(chǎn)生的。IDC預測,到2020年,全球將有35澤字節的數據?;ヂ?lián)網(wǎng)是大數據發(fā)展的前哨,隨著(zhù)WEB 2.0時(shí)代的發(fā)展,人們似乎習慣于通過(guò)網(wǎng)絡(luò )將自己的生活數字化,方便分享、記錄和回憶。
  互聯(lián)網(wǎng)上的大數據很難明確界定分類(lèi)邊界,我們先來(lái)看看BAT的大數據:
  在信息技術(shù)較為發(fā)達的美國,除了谷歌、Facebook等知名公司外,涌現出許多大數據公司,專(zhuān)門(mén)從事數據產(chǎn)品,如:
  Metamarkets:這家公司分析Twitter,支付,簽到和一些與互聯(lián)網(wǎng)相關(guān)的問(wèn)題,為客戶(hù)提供出色的數據分析支持。
  Tableau:他們的重點(diǎn)是可視化大量數據。Tableau 提供了一種為數字媒體呈現數據的新方法。他們提供了一個(gè)免費工具,允許任何沒(méi)有編程背景的人創(chuàng )建特定于數據的圖表。該軟件還會(huì )分析數據并提供有價(jià)值的建議。
  ParAccel:他們向美國執法機構提供數據分析,例如跟蹤15,000名有犯罪記錄的人,為執法機構提供信息豐富的犯罪預測。他們是罪的先知。
  QlikTech:Qlikview是QlikTech的一個(gè)部門(mén),是商業(yè)智能領(lǐng)域的自主服務(wù)工具,可以應用于科學(xué)研究和藝術(shù)等領(lǐng)域。為了幫助開(kāi)發(fā)人員分析這些數據,QlikTech 提供了用于可視化原創(chuàng )
數據的工具等。
  好數據
 ?。篏oodData希望幫助客戶(hù)從數據中挖掘財富。該初創(chuàng )公司面向業(yè)務(wù)用戶(hù)和IT高管,提供數據存儲,性能報告,數據分析等工具。TellApart
 ?。篢ellApart與電子商務(wù)公司合作,分析用戶(hù)瀏覽行為等數據,通過(guò)定位潛在買(mǎi)家來(lái)增加收入。DataSift
 ?。篋ataSift采集
和分析社交媒體上的數據,幫助品牌掌握突發(fā)新聞?wù)擖c(diǎn)并制定有針對性的營(yíng)銷(xiāo)計劃。該公司還與Twitter建立了合作伙伴關(guān)系,使其成為業(yè)內為數不多的可以分析早期推文的初創(chuàng )公司之一。
  Datahero:公司的目標是讓復雜的數據更簡(jiǎn)單、更清晰,讓普通人更容易理解和想象。
  例子很多,這里簡(jiǎn)單總結一下,互聯(lián)網(wǎng)上大數據的典型代表有:
  用戶(hù)行為數據(精準廣告、內容推薦、行為習慣與偏好分析、產(chǎn)品優(yōu)化等)用戶(hù)消費數據(精準營(yíng)銷(xiāo)、信用記錄分析、活動(dòng)推廣、財富管理等)用戶(hù)
  地理位置數據(O2O促銷(xiāo)、商家推薦、交友推薦等)互聯(lián)網(wǎng)金融數據(P2P、小額貸款、支付、信貸、供應鏈金融等)用戶(hù)社交和其他UGC數據(趨勢分析,流行元素分析,流行度分析,輿情監測分析,社會(huì )問(wèn)題分析等)。
  面向政府的大數據
  最近,
  奧巴馬政府宣布投資2億美元,推動(dòng)大數據相關(guān)產(chǎn)業(yè)發(fā)展,將“大數據戰略”提升為國家意志。奧巴馬政府將數據定義為“未來(lái)的新石油”,并表示一個(gè)國家擁有數據的規模、活動(dòng)、解釋和使用的能力將成為綜合國力的重要組成部分,未來(lái),數據的擁有和控制甚至將成為國家除土地之外的另一項核心資產(chǎn), ??樟α?。
  在我國,所有政府部門(mén)都有構成社會(huì )基礎的原創(chuàng )
數據,如氣象數據、財務(wù)數據、信用數據、電力數據、燃氣數據、自來(lái)水數據、道路交通數據、客運數據、安全刑事案件數據、住房數據、海關(guān)數據、出入境數據、旅游數據、醫療數據、教育數據、環(huán)保數據等。這些數據在每個(gè)政府部門(mén)內似乎是單一和靜態(tài)的。但是,如果政府能夠關(guān)聯(lián)這些數據,并對這些數據進(jìn)行有效的相關(guān)性分析和統一管理,這些數據必將重生,其價(jià)值不可估量。
  具體來(lái)說(shuō),城市現在正朝著(zhù)智能化、智慧智慧化、智慧化城市邁進(jìn),比如智能電網(wǎng)、智慧交通、智慧醫療、智慧環(huán)保、智慧城市,這些都依賴(lài)于大數據,可以說(shuō)大數據是智慧的核心能量。從我國整體投資規模來(lái)看,到2012年底,全國城市數量將開(kāi)始建設智慧城市,通信網(wǎng)絡(luò )、數據平臺等基礎設施建設投資規模接近5000億元?!笆濉逼陂g,智慧城市建設帶動(dòng)的設備投資規模將達到1萬(wàn)億元。大數據為智慧城市的所有領(lǐng)域提供決策支持。在城市規劃方面,通過(guò)挖掘城市地理、氣象等自然信息和經(jīng)濟、社會(huì )、文化、人口等人文社會(huì )信息,為城市規劃提供決策,增強城市管理服務(wù)的科學(xué)性和前瞻性。在交通管理方面,通過(guò)對道路交通信息的實(shí)時(shí)挖掘,可以有效緩解交通擁堵,快速應對突發(fā)事件,為城市交通良性運行提供科學(xué)決策依據。在輿情監測方面,通過(guò)網(wǎng)絡(luò )關(guān)鍵詞搜索和語(yǔ)義智能分析,可以提高輿情分析的及時(shí)性和全面性,全面掌握社會(huì )狀況和輿情,提高公共服務(wù)能力,應對互聯(lián)網(wǎng)突發(fā)公共事件,打擊違法犯罪。在安防災害領(lǐng)域,通過(guò)大數據挖掘,及時(shí)發(fā)現人為或自然災害和恐怖事件,提高應急處置能力和安全防范能力。
  此外,作為國家的管理者,政府應該有勇氣逐步將手中的數據開(kāi)放給更有能力的組織或個(gè)人進(jìn)行分析和利用,以加速造福人類(lèi)。比如美國政府建了一個(gè)網(wǎng)站,這是奧巴馬總統任期內的重要一步:要求政府透明,核心是公開(kāi)政府機構的數據。到目前為止,已經(jīng)開(kāi)放了91054個(gè)數據集;349個(gè)公民開(kāi)發(fā)的應用程序;137個(gè)移動(dòng)應用程序;175個(gè)機構和子機構;87個(gè)畫(huà)廊;295個(gè)政府API。
  面向企業(yè)的大數據
  企業(yè)的CXO最關(guān)心的是報告曲線(xiàn)背后能有什么樣的信息,他應該做出什么樣的決策,其實(shí)這一切都需要數據的傳遞和支撐。在理想的世界中,大數據是一個(gè)巨大的杠桿,可以改變公司的影響力,區分競爭對手,省錢(qián),增加利潤,取悅買(mǎi)家,獎勵忠誠用戶(hù),將潛在客戶(hù)轉化為客戶(hù),增加吸引力,擊敗競爭對手,擴大用戶(hù)群,創(chuàng )造市場(chǎng)。
  那么,哪些傳統企業(yè)最需要大數據服務(wù)呢?我們舉幾個(gè)例子:1)向大量消費者提供產(chǎn)品或服務(wù)的企業(yè)(精準營(yíng)銷(xiāo));2)做中長(cháng)尾企業(yè)(服務(wù)轉型)的小而美典范;3)在互聯(lián)網(wǎng)(生死攸關(guān))的壓力下必須轉型的傳統企業(yè)。
  對于企業(yè)的大數據,
  還有一個(gè)預測:隨著(zhù)數據逐漸成為企業(yè)的資產(chǎn),數據產(chǎn)業(yè)將發(fā)展到傳統企業(yè)的供應鏈模式,最終形成“數據供應鏈”。特別是,有兩件事是顯而易見(jiàn)的:1)外部數據比內部數據越來(lái)越重要。在互聯(lián)互通的互聯(lián)網(wǎng)時(shí)代,單個(gè)企業(yè)的內部數據與整個(gè)互聯(lián)網(wǎng)數據相比只是滄海一粟;2)能夠提供數據供應、數據集成處理、數據應用等多鏈路服務(wù)的企業(yè)將具有明顯的綜合競爭優(yōu)勢。
  對于提供大數據服務(wù)的公司來(lái)說(shuō),他們正在等待合作的機會(huì ),正如微軟史密斯所說(shuō):“給我一些數據,我可以做出一些改變。如果你把所有的數據都給我,我就能拯救世界。"
  然而,一直做企業(yè)服務(wù)的巨頭們不會(huì )有優(yōu)勢,他們不得不眼睜睜地看著(zhù)新興互聯(lián)網(wǎng)公司加入戰斗,開(kāi)啟殘酷的競爭模式。為什么會(huì )這樣?從IT行業(yè)發(fā)展來(lái)看,第一代IT巨頭大多是ToB,如IBM、微軟、甲骨文、SAP、惠普等傳統IT企業(yè);第二代IT巨頭大多是ToC,如雅虎、谷歌、亞馬遜、Facebook等互聯(lián)網(wǎng)公司。在大數據到來(lái)之前,這兩類(lèi)公司基本互不逆河;但在當前大數據時(shí)代,這兩類(lèi)公司已經(jīng)開(kāi)始直接競爭。例如,亞馬遜已經(jīng)開(kāi)始提供基于云的數據倉庫服務(wù),直接搶占了IBM和甲骨文的市場(chǎng)。這種現象出現的本質(zhì)原因是:在互聯(lián)網(wǎng)巨頭的推動(dòng)下,傳統IT巨頭的客戶(hù)普遍開(kāi)始從事電子商務(wù)業(yè)務(wù),而正是因為客戶(hù)進(jìn)入了互聯(lián)網(wǎng),所以傳統IT巨頭才被不情愿地拖入互聯(lián)網(wǎng)領(lǐng)域。如果他們不進(jìn)入互聯(lián)網(wǎng),他們的業(yè)務(wù)就會(huì )萎縮。進(jìn)入互聯(lián)網(wǎng)后,必須將云技術(shù)、大數據等互聯(lián)網(wǎng)最具優(yōu)勢的技術(shù)打包到自己的產(chǎn)品中,然后提供給企業(yè)。
  例如,IBM在過(guò)去十年中已經(jīng)放棄了PC,并成功轉向軟件和服務(wù),這一次他們將遠離服務(wù)和咨詢(xún),更多地關(guān)注大數據分析軟件帶來(lái)的新業(yè)務(wù)增長(cháng)。IBM首席執行官Rometty Romet認為,“數據將成為決定所有行業(yè)成敗的根本因素,最終數據將成為人類(lèi)至關(guān)重要的自然資源。IBM積極提出“大數據平臺”架構。該平臺的四個(gè)核心功能包括Hadoop,流計算,數據倉庫以及信息集成和治理。
  IBM 大數據
  另一家需要通過(guò)云和大數據戰略進(jìn)行恢復的巨頭惠普也推出了自己的產(chǎn)品:HAVEn,這是一種可以自由擴展和擴展的大數據解決方案。該解決方案包括四種技術(shù):HP Autonomy、HP Vertica、HP ArcSight 和 HP Operations Management。它還支持Hadoop等通用技術(shù)。HAVEn不是一個(gè)軟件平臺,而是一個(gè)生態(tài)系統。四大組件滿(mǎn)足不同應用場(chǎng)景的需求,Autonomy是解決音視頻識別的重要解決方案;Vertica 的解決方案,用于解決數據處理的速度和效率問(wèn)題;ArcSight解決了機器的記錄信息處理,幫助企業(yè)獲得更高級別的安全管理;運營(yíng)管理不僅涉及外部數據的處理,還涉及IT基礎架構生成的數據。
  個(gè)人大數據
  個(gè)人大數據的概念很少被提及,簡(jiǎn)單來(lái)說(shuō),在有效采集
了與個(gè)人相關(guān)的各種有價(jià)值的數據信息后,可以得到本人的授權,提供給第三方進(jìn)行處理和使用,獲得第三方提供的數據服務(wù)。
  用一個(gè)例子來(lái)說(shuō)明會(huì )更清楚:
  未來(lái),每個(gè)用戶(hù)都可以在互聯(lián)網(wǎng)上注冊一個(gè)個(gè)人數據中心來(lái)存儲個(gè)人大數據信息。用戶(hù)可以確定可以采集
哪些個(gè)人數據,并通過(guò)可穿戴設備或植入芯片等感知技術(shù)采集
和捕獲個(gè)人大數據,如牙科監測數據、心率數據、體溫數據、視覺(jué)數據、記憶能力、地理位置信息、社交關(guān)系數據、運動(dòng)數據、飲食數據、購物數據等。用戶(hù)可以將牙科監測數據授權給XX牙科診所使用,他們可以監控和使用這些數據,為用戶(hù)制定有效的牙齒預防和保養計劃;也可以授權將個(gè)人的運動(dòng)數據提供給體育和健身機構,該機構將監測其身體運動(dòng)功能,并有針對性地制定和調整其個(gè)人運動(dòng)計劃;您還可以將您的個(gè)人消費數據委托給金融機構,他們可以幫助您制定合理的財務(wù)計劃并預測收益。當然,其中一些個(gè)人數據可以提供給國家相關(guān)部門(mén)進(jìn)行實(shí)時(shí)監控,而無(wú)需個(gè)人授權,例如犯罪預防和監測中心,它可以實(shí)時(shí)監控該地區每個(gè)人的情緒和心理狀態(tài),以防止自殺和犯罪。
  以個(gè)人為中心的大數據具有一些特征:數據僅
  保留在個(gè)人中心,其他第三方機構僅授權使用(數據有一定的使用期限),使用后必須接受立即銷(xiāo)毀的監督。個(gè)人數據的采集
應明確分類(lèi),其他類(lèi)型的數據由用戶(hù)自己采集
,但國家立法明確要求監控的數據除外。數據的使用僅由用戶(hù)授權,數據中心可以幫助監控個(gè)人數據的整個(gè)生命周期。
  前景太好了,也許個(gè)人數據中心的實(shí)現會(huì )
  在遙遠的地方,也許這不是解決個(gè)人數據隱私的最好方法,也許行業(yè)對大數據的無(wú)限渴望會(huì )阻止數據個(gè)人中心的實(shí)現,但隨著(zhù)數據越來(lái)越多,在缺乏監管之后,必然會(huì )出現一場(chǎng)激烈的博弈:數據重要還是隱私重要;無(wú)論是以業(yè)務(wù)為中心還是以個(gè)人為中心。
  結束
  版權聲明:轉載文章來(lái)源于公眾網(wǎng)絡(luò ),僅供學(xué)習使用,不會(huì )用于任何商業(yè)目的,如來(lái)源錯誤或侵犯原作者權益,請聯(lián)系我們進(jìn)行刪除或授權,聯(lián)系郵箱:。請注明轉載大數據公眾號文章的原創(chuàng )
鏈接和作者,否則產(chǎn)生的版權糾紛與大數據無(wú)關(guān)。
  解讀:什么是原創(chuàng )文章?原創(chuàng )文章與偽原創(chuàng )文章區別?皆知傳媒為您解答?
  什么是原創(chuàng )文章?原創(chuàng )文章和seo偽原創(chuàng )有什么區別?接下來(lái),知乎傳媒將為您詳細解讀。說(shuō)白了,原創(chuàng )文章就是從頭到尾所有的內容都是用自己的話(huà)來(lái)表達的。偽原創(chuàng )就是文章的開(kāi)頭和結尾都是自己寫(xiě)的。,其余內容是摘錄別人在網(wǎng)上的文章修改的,稍微修改一下別人的內容,冒充自己寫(xiě)的。下面說(shuō)說(shuō)原創(chuàng )文章和偽原創(chuàng )文章的區別。
  
  原創(chuàng )文章:未被搜索引擎收錄的文章。它利用谷歌通過(guò)翻墻軟件查找英文資料,然后翻譯成中文。方法是翻簡(jiǎn)的方法,通過(guò)Kimo搜索引擎找到和你網(wǎng)站相關(guān)的文章,用網(wǎng)頁(yè)編輯器對內容進(jìn)行格式化,然后創(chuàng )建一個(gè)word文檔選擇里面的所有內容,通過(guò)審核給翻簡(jiǎn)。通過(guò)圖像識別創(chuàng )作原創(chuàng )文章,需要高清相機或手機、dopdf-7虛擬打印機、rj_nd1854圖像識別軟件。用word打開(kāi)你準備好的圖片文件,用你安裝的虛擬打印機的pdf格式打印出來(lái),放在合適的位置。使用圖像識別軟件打開(kāi)此pdf文件并選擇一個(gè)區域進(jìn)行識別。
  偽原創(chuàng ):一般來(lái)說(shuō),偽原創(chuàng )占網(wǎng)站的70%左右。就是對原創(chuàng )文章進(jìn)行處理,讓文章以為是自己的。修改一篇文章的標題,先把這個(gè)標題放到百度的搜索框里,看這個(gè)標題出現頻率高不高,再看這個(gè)標題下的搜索結果是不是全部都是紅色的。要修改的標題必須收錄
關(guān)鍵詞。文章的第一段最好自己寫(xiě),第一段在文章的關(guān)鍵詞加上錨文本。文章中間的段落需要自己寫(xiě)或修改,需要文章的關(guān)鍵詞,文章的結尾需要自己寫(xiě),有關(guān)鍵詞。這種偽原創(chuàng )文章至少要經(jīng)過(guò)80%的工具檢測才能發(fā)表。它可以用作更新站點(diǎn)內容的方法,并與原創(chuàng )
文章結合使用。
  
  站外平臺發(fā)布可以使用偽原創(chuàng )文章,但是要注意站內文章不要重復,那么站外怎么發(fā)呢。你可以天天用這個(gè)偽原創(chuàng )seo的工具進(jìn)行批量站外發(fā)布,為自己的網(wǎng)站引入流量。網(wǎng)站的內容怎么寫(xiě),很容易引起網(wǎng)友的興趣。第一種形式是軟文。簡(jiǎn)單來(lái)說(shuō),軟文就是廣告。這種軟件通常隱藏在故事情節中。廣告自然地穿插在劇情中間。第二種是新聞文章。這類(lèi)文章具有權威性,比較真實(shí)可靠。第三種是知識分享文章的內容,很容易引起客戶(hù)的共鳴,啟發(fā)客戶(hù)。第四類(lèi)是有爭議的文章內容。 查看全部

  解讀:一篇對大數據深度思考的文章,讓你認識并讀懂大數據
  在寫(xiě)這篇文章之前,我發(fā)現我身邊的很多IT人往往都渴望這些熱門(mén)的新技術(shù)和新趨勢,但很難說(shuō)透徹,如果你問(wèn)他大數據和你有什么關(guān)系?估計很少能說(shuō)出一、二、三的名字。原因是每個(gè)人都對新技術(shù)有著(zhù)同樣的原創(chuàng )
渴望,至少他們在聊天時(shí)看起來(lái)并不“臟”;其次,工作和生活環(huán)境中能夠真正參與大數據實(shí)踐的案例太少,所以沒(méi)有必要讓大家花時(shí)間去了解原因。
  我希望有些不同,所以我考慮了如何理解大數據,包括查閱數據和
  翻閱最新的專(zhuān)業(yè)書(shū)籍,但我不想簡(jiǎn)單地整理堆積那些零散的數據碎片或不同的理解,形成毫無(wú)價(jià)值的釋義或評論,我真誠地希望進(jìn)入事物來(lái)探索本質(zhì)。
  如果你說(shuō)大數據就是大數據,或者談?wù)?br />   4 Vs,也許很深入地談?wù)凚I的價(jià)值或者預測,或者以谷歌和亞馬遜為例,技術(shù)流可能談?wù)揌adoop和云計算,無(wú)論是對還是錯,就是無(wú)法勾勒出對大數據的整體理解,不是片面的,但至少是一些猜測,襯衫癢癢的?;蛟S,“解構”才是最好的方式。
  如何構建大數據?
  首先,我認為大數據是互聯(lián)網(wǎng)發(fā)展的一種表象或特征。
  現階段,沒(méi)有必要去神話(huà)它,也沒(méi)有必要對它保持敬畏,在以云計算為代表的技術(shù)創(chuàng )新大幕下,這些原本難以采集
和使用的數據開(kāi)始變得容易使用,通過(guò)各行各業(yè)的不斷創(chuàng )新,大數據將逐漸為人類(lèi)創(chuàng )造更多價(jià)值。
  其次,想要系統的認知大數據,必須全面細致地分解它,我著(zhù)手從三個(gè)層面進(jìn)行擴展:
  第一個(gè)層次是理論,這是認識的必要途徑,也是廣泛認識和傳播的底線(xiàn)。我將從大數據的特征定義來(lái)理解行業(yè)對大數據的整體描述和表征;從對大數據價(jià)值的討論中,我們可以深入分析大數據的可貴性;從大數據的現狀和未來(lái)洞察大數據的發(fā)展趨勢;從大數據隱私的特殊性和重要角度出發(fā),審視人與數據的長(cháng)期博弈。
  第二個(gè)層次是技術(shù),它是大數據體現價(jià)值的手段和基石。我將解釋大數據從采集
、處理、存儲到形成云計算、分布式處理技術(shù)、存儲技術(shù)和感知技術(shù)發(fā)展的結果的全過(guò)程。
  第三個(gè)層次是實(shí)踐,這是大數據的終極價(jià)值體現。我將從互聯(lián)網(wǎng)大數據、政府大數據、企業(yè)大數據和個(gè)人大數據四個(gè)方面描繪大數據所展現的美好場(chǎng)景和將要實(shí)現的藍圖。
  大數據相關(guān)理論
  1
  功能定義
  最早提出大數據時(shí)代到來(lái)的是麥肯錫:“如今,數據已經(jīng)滲透到每個(gè)行業(yè)和業(yè)務(wù)功能領(lǐng)域,成為重要的生產(chǎn)要素。大量數據的挖掘和使用預示著(zhù)新一輪的生產(chǎn)率增長(cháng)和消費者剩余。"
  業(yè)界(最早定義IBM)將大數據的特征概括為4個(gè)“V”(體積、品種、價(jià)值值、速度),或者有四個(gè)層次的特征:一是數據量巨大。大數據的起始測量單位至少是P(1000 T),E(100萬(wàn)T)或Z(10億T);其次,數據類(lèi)型多種多樣。例如,網(wǎng)絡(luò )日志、視頻、圖像、地理位置信息等。三是價(jià)值密度低,商業(yè)價(jià)值高。第四,處理速度快。最后一點(diǎn)也與傳統的數據挖掘技術(shù)有著(zhù)根本的不同。
  事實(shí)上,這些V并不能真正解釋大數據的所有特征,下圖有效地解釋了大數據的一些相關(guān)特征。
  俗話(huà)說(shuō):技術(shù)三分,數據七分,誰(shuí)得到數據誰(shuí)就贏(yíng)天下。誰(shuí)說(shuō)的并不重要,但這句話(huà)的正確性就不用爭論了。Victor Meier-Sch?nberg在《大數據時(shí)代》一書(shū)中舉了數百個(gè)例子,都說(shuō)明了一個(gè)道理:當大數據時(shí)代到來(lái)時(shí),我們必須用大數據思維來(lái)探索大數據的潛在價(jià)值。在書(shū)中,作者提到最多的是谷歌如何利用人們的搜索記錄來(lái)挖掘數據的二次使用價(jià)值,比如預測某個(gè)地方流感爆發(fā)的趨勢;亞馬遜如何利用用戶(hù)的購買(mǎi)和瀏覽歷史數據,做出有針對性的購書(shū)推薦,有效提升銷(xiāo)量;Farecast如何在過(guò)去十年中使用所有航線(xiàn)的折扣機票來(lái)預測用戶(hù)是否會(huì )在正確的時(shí)間購買(mǎi)機票。
  那么,什么是大數據思維?根據維克多·邁耶-勛伯格的說(shuō)法,1 - 需要整個(gè)數據樣本而不是采樣;2-注重效率而不是精度;3-關(guān)注相關(guān)性而不是因果關(guān)系。
  阿里巴巴的王健對大數據也有一些獨到的見(jiàn)解,比如
  “如今的數據不大,真正有意思的是數據已經(jīng)上線(xiàn),這正是互聯(lián)網(wǎng)的特點(diǎn)?!薄爱a(chǎn)品在非互聯(lián)網(wǎng)時(shí)期的功能一定是它的價(jià)值,而今天互聯(lián)網(wǎng)的產(chǎn)品,數據一定是它的價(jià)值?!澳悴幌胧褂脭祿?lái)改善業(yè)務(wù),這不是大數據。你一定做了以前做不到的事情。"
  特別是最后一點(diǎn),我非常同意大數據的真正價(jià)值在于創(chuàng )造,在于填補無(wú)數尚未實(shí)現的空白。
  有些人將數據比作含有能源的煤礦。煤炭按其性質(zhì)分類(lèi),如煉焦煤、無(wú)煙煤、脂肪煤、貧煤等,而露天煤礦和深山煤礦的開(kāi)挖成本不同。同樣,大數據不是“大”,而是“有用”。價(jià)值內容和挖礦成本比數量更重要。
  阿拉伯數字
  價(jià)值討論
  什么是大數據?投資者眼中閃耀著(zhù)兩個(gè)詞:資產(chǎn)。例如,當Facebook上市時(shí),評估人員評估的大部分有效資產(chǎn)都是其社交網(wǎng)站上的數據。
  如果把大數據比作一個(gè)行業(yè),那么這個(gè)行業(yè)盈利的關(guān)鍵在于提高數據的“處理能力”,通過(guò)“處理”實(shí)現數據的“增值”。
  目標
  超市以孕婦在孕期可能購買(mǎi)的20多種產(chǎn)品為基礎,以所有用戶(hù)的購買(mǎi)記錄為數據源,通過(guò)構建模型分析購買(mǎi)者的行為相關(guān)性,可以準確推斷出懷孕的具體時(shí)間,以便Target的銷(xiāo)售部門(mén)在每位懷孕顧客的不同階段發(fā)送相應的產(chǎn)品優(yōu)惠券。
  塔吉特的例子就是一個(gè)很好的例子,證實(shí)了維克多·邁耶-勛伯格(Victor Meier-Sch?nberg)提出的一個(gè)有說(shuō)服力的觀(guān)點(diǎn):通過(guò)識別關(guān)聯(lián)并對其進(jìn)行監控,可以預測未來(lái)。Target通過(guò)監控買(mǎi)家購買(mǎi)商品的時(shí)間和類(lèi)型來(lái)準確預測懷孕時(shí)間,這是二次使用數據的典型例子。如果,通過(guò)從駕駛員的手機采集
GPS數據,我們可以分析出哪些道路目前堵車(chē),我們可以及時(shí)發(fā)出道路交通提醒;通過(guò)采集
汽車(chē)的GPS位置數據,可以分析出城市的哪些區域有更多的停車(chē)位,這也意味著(zhù)該地區有更多的活躍人群,這些分析數據適合出售給廣告商。
  無(wú)論大數據的核心價(jià)值是否
  無(wú)論預測與否,基于大數據形成決策的模型為許多企業(yè)帶來(lái)了利潤和聲譽(yù)。
  從大數據價(jià)值鏈的分析來(lái)看,有三種模式:
  大數據在手,但利用不好;比較典型的是金融機構、電信業(yè)、政府機構等。沒(méi)有數據,但知道如何幫助擁有它的人利用它;典型的是IT咨詢(xún)和服務(wù)公司,如埃森哲,IBM,甲骨文等。既有數據思維,也有大數據思維;比較典型的是谷歌、亞馬遜、萬(wàn)事達卡等。
  未來(lái)在大數據領(lǐng)域最有價(jià)值的是兩件事:
  具有大數據思維的人,能夠將大數據的潛在價(jià)值轉化為實(shí)際收益;沒(méi)有業(yè)務(wù)領(lǐng)域尚未被大數據觸及。這些是未開(kāi)發(fā)的油井,金礦,所謂的藍海。
  沃爾瑪作為零售業(yè)的巨頭,他們的分析師會(huì )對每個(gè)階段的銷(xiāo)售記錄進(jìn)行全面分析,一旦他們意外發(fā)現雖然無(wú)關(guān)緊要但非常有價(jià)值的數據,在美國颶風(fēng)季節,蛋撻和抗颶風(fēng)商品在超市的銷(xiāo)量大幅增加,于是他們做出了明智的決定,將蛋撻的銷(xiāo)售地點(diǎn)移到了颶風(fēng)的一邊。商品銷(xiāo)售區,看似是為了方便用戶(hù)選擇。但沒(méi)想到蛋撻的銷(xiāo)量因此增加了不少。
  另一個(gè)有趣的例子是,1948年遼沈戰役期間,司令員林彪要求每天例行的“軍事情報日報”,由值班參謀宣讀下屬各縱隊、師、團的無(wú)線(xiàn)電報的戰情和俘虜情況。這幾乎是重復同樣無(wú)聊的數據:每個(gè)單位殲滅了多少敵人,俘虜了多少俘虜;有多少火炮、車(chē)輛、槍支、物資...一天,參謀照例匯報當天的戰情時(shí),林彪突然打斷他:“你剛才聽(tīng)到胡家棚屋里打仗的消息了嗎?大家都不知所措,因為這樣的戰斗每天都有幾十場(chǎng)戰斗,不都是幾乎一模一樣的無(wú)聊數字嗎?林彪掃了一遍,見(jiàn)沒(méi)人回答,于是連問(wèn)了三個(gè)問(wèn)題:“為什么那里繳獲的短槍和長(cháng)槍的比例比其他戰斗略高?為什么那里的手推車(chē)與被俘虜和摧毀的手推車(chē)的比例略高于其他戰斗?為什么在那里被俘和陣亡的軍官與士兵的比例略高于其他戰斗?林彪司令大步走到掛滿(mǎn)軍事地圖的墻前,指著(zhù)地圖上的點(diǎn)說(shuō):“我猜,不,我決定!敵人的指揮所來(lái)了!果不其然,部隊很快俘虜了敵人的指揮官廖耀祥,并贏(yíng)得了這場(chǎng)重要的戰斗。
  這些例子真實(shí)地體現在各行各業(yè),對數據價(jià)值的追尋取決于掌握數據的人,關(guān)鍵是人的數據思維;與其說(shuō)大數據創(chuàng )造價(jià)值,不如說(shuō)大數據思維引發(fā)了新的價(jià)值增長(cháng)。
  現在和未來(lái)
  讓我們先來(lái)看看大數據在今天是如何做的:
  大數據助力政府實(shí)現市場(chǎng)經(jīng)濟調控、公共衛生安全防范、災害預警、輿情監督;
  大數據幫助城市預防犯罪,實(shí)現智慧交通,提升應急能力。
  大數據幫助醫療機構建立患者疾病風(fēng)險跟蹤機制,幫助藥企改善藥物臨床使用,幫助艾滋病研究機構為患者提供定制化藥物。
  大數據幫助航空公司節約運營(yíng)成本,電信公司提高售后服務(wù)質(zhì)量,保險公司識別欺詐和保險欺詐,快遞公司監控和分析運輸車(chē)輛故障提前預警維修,電力公司有效識別和預警即將發(fā)生故障的設備。
  大數據幫助電商企業(yè)向用戶(hù)推薦商品和服務(wù),幫助旅游網(wǎng)站為游客提供自己喜歡的旅游路線(xiàn),幫助二手市場(chǎng)的買(mǎi)賣(mài)雙方找到最合適的交易標的,幫助用戶(hù)找到最合適的購買(mǎi)期、商家和最優(yōu)惠的價(jià)格。大數據幫助企業(yè)提高
  營(yíng)銷(xiāo)針對性,降低物流和庫存成本,降低投資風(fēng)險,幫助企業(yè)提高廣告精準度;
  大數據幫助娛樂(lè )行業(yè)預測歌手、歌曲、電影、電視劇的熱度,為投資者分析評估拍一部電影最合適的錢(qián)是多少,否則可能無(wú)法收回成本;
  大數據幫助社交網(wǎng)站提供更精準的好友推薦,為用戶(hù)提供更精準的企業(yè)招聘信息,推薦用戶(hù)可能喜歡的游戲和適合購買(mǎi)的產(chǎn)品。
  
  其實(shí)這些還遠遠不夠,大數據的身影在未來(lái)應該無(wú)處不在,即使無(wú)法準確預測大數據最終會(huì )給人類(lèi)社會(huì )帶來(lái)哪種最終形態(tài),但我相信,只要發(fā)展步伐繼續下去,大數據引發(fā)的變革浪潮很快就會(huì )淹沒(méi)地球的每一個(gè)角落。
  比如亞馬遜的終極期望是:“最成功的圖書(shū)推薦應該是唯一的書(shū),也就是用戶(hù)會(huì )買(mǎi)的下一本書(shū)。"
  谷歌
  同樣希望用戶(hù)搜索的最佳體驗是搜索結果只收錄
用戶(hù)需要的內容,而這并不需要用戶(hù)給Google太多提示。
  當發(fā)展
  物聯(lián)網(wǎng)達到一定規模,借助條碼、二維碼、RFID等唯一標識產(chǎn)品,傳感器、可穿戴設備、智能感知、視頻采集、增強現實(shí)等技術(shù)可以實(shí)現信息的實(shí)時(shí)采集和分析,這些數據可以支撐智慧城市、智慧交通、智慧能源、智慧醫療、智慧環(huán)保等概念需求, 這些所謂的智慧,就是大數據數據源的集合和服務(wù)范圍。
  除了更好地解決社會(huì )問(wèn)題、商業(yè)營(yíng)銷(xiāo)問(wèn)題、科技問(wèn)題外,未來(lái)的大數據政策也將出現可預見(jiàn)的以人為本的大數據政策趨勢。人才是地球的主人,大部分數據都與人類(lèi)有關(guān),需要通過(guò)大數據解決人類(lèi)的問(wèn)題。
  比如建立個(gè)人數據中心,整合大家的日常習慣、身體體征、社交網(wǎng)絡(luò )、智力、愛(ài)好氣質(zhì)、疾病愛(ài)好、情緒波動(dòng)......換句話(huà)說(shuō),一個(gè)人從出生的那一刻起的每一分每一秒都被記錄下來(lái),除了頭腦之外的一切都被存儲起來(lái),這些數據可以得到充分利用:
  當然,以上一切看起來(lái)都不錯,但前提是犧牲用戶(hù)的自由嗎?只能說(shuō),新事物帶來(lái)創(chuàng )新的同時(shí),也帶來(lái)了“萌芽”。比如在手機普及之前,大家都喜歡聚在一起聊天,自從手機普及,尤其是有了互聯(lián)網(wǎng),大家不需要聚在一起就可以隨時(shí)隨地聊天,但“病菌”滋生了另一種情況,大家慢慢習慣了與手機共度時(shí)光,人與人之間的情感交流似乎永遠被一個(gè)“網(wǎng)絡(luò )”隔開(kāi)了。
  大數據隱私
  您可能不敏感,當您在不同網(wǎng)站上注冊個(gè)人信息時(shí),可能已經(jīng)擴散,當您莫名其妙地收到各種電子郵件、電話(huà)、短信滋擾時(shí),您不會(huì )想到您的電話(huà)號碼、郵箱、生日、購買(mǎi)記錄、收入水平、家庭住址、親友等私人信息早已被各種商業(yè)組織非法存儲或出售給任何其他有需要的企業(yè)或個(gè)人。
  更可怕的是,你永遠無(wú)法刪除這些信息,它們將永遠存在于互聯(lián)網(wǎng)的某個(gè)你不知道的角落。除非您替換所有信息,否則成本太高。用戶(hù)隱私
  問(wèn)題一直是大數據應用中難以繞開(kāi)的問(wèn)題,如央視曝光的焦點(diǎn)無(wú)線(xiàn)、洛威鄧白氏、網(wǎng)易郵箱等,都涉及侵犯用戶(hù)隱私。目前,我國沒(méi)有專(zhuān)門(mén)的法律法規來(lái)定義用戶(hù)隱私,其他相關(guān)法律法規多用于解釋相關(guān)問(wèn)題。然而,隨著(zhù)公眾隱私意識的提高,合法和合規地訪(fǎng)問(wèn)數據,數據分析和應用數據是進(jìn)行大數據分析時(shí)必須遵循的原則。
  說(shuō)到隱私被侵犯,愛(ài)德華?斯諾登應該為這位前中央情報局雇員提供一席之地,他單槍匹馬地引爆了有關(guān)美國棱鏡計劃的內部信息。Project Prism是自2007年以來(lái)由國家安全局(NSA)運營(yíng)的絕密電子監視計劃,每年花費近2000億美元來(lái)監控美國各地的電話(huà)記錄,據稱(chēng)允許情報人員訪(fǎng)問(wèn)九家主要科技公司的服務(wù)器,包括微軟,雅虎,谷歌,Facebook,PalTalk,AOL,Skype,YouTube和蘋(píng)果。這一事件引發(fā)了人們對政府使用大數據時(shí)侵犯公民隱私的擔憂(yōu)。
  環(huán)顧四周,當微博、微信、QQ空間這些社交平臺肆意吞噬數億用戶(hù)的各種信息時(shí),你不要指望你有隱私,即使你刪除了某處,但也許這些信息已經(jīng)被別人復制或保存了,更有可能被百度或者谷歌保存成快照,早就提供給任何用戶(hù)搜索。
  因此,在大數據的背景下,很多人都在積極抵制無(wú)底洞的數字化,這場(chǎng)大數據與個(gè)人的博弈將永遠持續下去......
  專(zhuān)家就如何在大數據背景下有效保護隱私給出了一些建議:
  減少信息的數字化;隱私立法;數字隱私基礎設施(類(lèi)似于DRM數字版權管理);人類(lèi)改變認知(接受忽略過(guò)去);打造良性信息生態(tài);語(yǔ)境化。
  但這些都不是立即有效或實(shí)質(zhì)性改善的。
  例如,現在有一個(gè)職業(yè)叫做帖子編輯,專(zhuān)門(mén)負責幫助人們刪除帖子和刪除主要網(wǎng)站上的評論。實(shí)際上,這些人正在入侵主要網(wǎng)站,破解管理員的密碼,然后手動(dòng)刪除它。只是他們不保護客戶(hù)的隱私,而主要是丑聞。還有一個(gè)職業(yè)叫做人肉專(zhuān)家,他們負責從互聯(lián)網(wǎng)上查找與他們無(wú)關(guān)的用戶(hù)的任意信息。這是一件可怕的事情,也就是說(shuō),如果有人想找到你,只需要兩個(gè)條件:1-你一直在互聯(lián)網(wǎng)上并留下了痕跡;2-您的朋友和家人或只是認識您的人一直在互聯(lián)網(wǎng)上并留下了您的蹤跡。如果滿(mǎn)足這兩個(gè)條件之一,人類(lèi)動(dòng)物學(xué)家可以很容易地找到你,并可能知道你在餐廳和誰(shuí)共進(jìn)晚餐。
  當很多互聯(lián)網(wǎng)公司意識到隱私對用戶(hù)的重要性時(shí),為了繼續獲得用戶(hù)的信任,他們采取了許多措施,比如谷歌承諾只保留用戶(hù)的搜索記錄9個(gè)月,瀏覽器廠(chǎng)商提供隱身沖浪模式,社交網(wǎng)站拒絕來(lái)自公共搜索引擎的爬蟲(chóng)進(jìn)入, 所提供的所有數據都將匿名處理。
  在這種復雜的環(huán)境下,很多人仍然沒(méi)有樹(shù)立信息隱私的保護意識,讓自己處于被騷擾、精心設計、使用、監控的境地。然而,我們幾乎無(wú)能為力,因為個(gè)人隱私數據不再受我們控制,正如一首詩(shī)所說(shuō):“如果你現在繼續麻木,那么不要指望這種麻木能承受被”剝離“那一刻的恐慌和絕望”
  大數據相關(guān)技術(shù)
  云技術(shù)
  大數據通常與云計算相關(guān)聯(lián),因為對大型數據集的實(shí)時(shí)分析需要一個(gè)分布式處理框架將工作分配給數十、數百甚至數萬(wàn)臺計算機??梢哉f(shuō),云計算起到了工業(yè)革命引擎的作用,而大數據就是電。
  云計算思想的起源是由麥卡錫在 60 年代提出的:作為水和電一樣的公用事業(yè)為用戶(hù)提供計算能力。
  如今,在谷歌、亞馬遜、Facebook等一批互聯(lián)網(wǎng)公司的帶領(lǐng)下,出現了一種有效的模式:云計算提供了一個(gè)基礎設施平臺,大數據應用運行在這個(gè)平臺上。
  業(yè)內人士這樣描述兩者的關(guān)系:沒(méi)有大數據信息的積累,云計算的算力再強大,也很難找到用處;沒(méi)有云計算的處理能力,大數據的信息積累再豐富,也終究只是一面鏡子。
  那么大數據需要哪些云計算技術(shù)呢?
  以下是一些示例,例如虛擬化技術(shù)、分布式處理技術(shù)、海量數據存儲和管理技術(shù)、NoSQL、實(shí)時(shí)流數據處理、智能分析技術(shù)(類(lèi)似于模式識別和自然語(yǔ)言理解)等。
  云計算與大數據的關(guān)系可以用下圖來(lái)說(shuō)明,兩者的結合會(huì )產(chǎn)生以下效果:它可以基于海量業(yè)務(wù)數據提供更多創(chuàng )新的服務(wù);通過(guò)云計算技術(shù)的不斷發(fā)展,降低大數據業(yè)務(wù)的創(chuàng )新成本。
  如果將云計算與大數據進(jìn)行比較,最明顯的區別在于兩個(gè)方面:
  分布式處理技術(shù)
  分布式處理系統
  可以將不同位置或具有不同功能或具有不同數據的多臺計算機與通信網(wǎng)絡(luò )連接起來(lái),在控制系統的統一管理和控制下協(xié)調完成信息處理任務(wù)——這就是分布式處理系統的定義。
  以Hadoop為例(Yahoo
 ?。┮訷ahoo為例,Hadoop是一個(gè)軟件框架,它實(shí)現了MapReduce模式,對大量數據進(jìn)行分布式處理,這些數據以可靠,高效和可擴展的方式進(jìn)行處理。
  MapReduce是一種核心計算模式
  谷歌提出的云計算,是一種分布式計算技術(shù),也是一種簡(jiǎn)化的分布式編程模型,MapReduce模式的主要思想是將要執行的問(wèn)題(如程序)自動(dòng)拆分為map(map)和reduce(簡(jiǎn)化)的方式,數據被拆分后通過(guò)map函數程序將數據映射到不同的塊中, 分配給計算機隊列進(jìn)行處理以達到分布式計算的效果,結果通過(guò)Reduce功能在程序中聚合,從而輸出開(kāi)發(fā)人員所需的結果。
  首先,它是可靠的,因為它假設計算元素和存儲將發(fā)生故障,因此它維護工作數據的多個(gè)副本,以確保處理可以在故障節點(diǎn)之間重新分配。其次,Hadoop是高效的,因為它并行工作,通過(guò)并行處理加快處理速度。Hadoop也是可擴展的,能夠處理PB級的數據。此外,Hadoop依賴(lài)于社區服務(wù)器,因此成本相對較低,任何人都可以使用。
  你也可以這樣理解Hadoop的組成,Hadoop=HDFS(文件系統、數據存儲技術(shù)相關(guān))+HBase(數據庫)+MapReduce(數據處理)+...別人
  Hadoop中使用的一些技術(shù)是:
  說(shuō)了這么多,舉個(gè)實(shí)際的例子,雖然這個(gè)例子有點(diǎn)老舊,但淘寶的海量數據技術(shù)架構還是能幫助我們理解大數據的運行和處理機制:
  淘寶大數據如上圖所示,
  淘寶的海量數據產(chǎn)品技術(shù)架構分為五個(gè)層次,從上到下分別是:數據源層、計算層、存儲層、查詢(xún)層和產(chǎn)品層。
  存儲技術(shù)
  大數據可以抽象地分為大數據存儲和大數據分析,兩者的關(guān)系是:大數據存儲的目的是支持大數據分析。到目前為止,計算機技術(shù)已經(jīng)是兩個(gè)截然不同的領(lǐng)域:大數據存儲致力于開(kāi)發(fā)可擴展到PB甚至EB的數據存儲平臺;大數據分析專(zhuān)注于在最短的時(shí)間內處理大量不同類(lèi)型的數據集。
  說(shuō)到存儲,有一個(gè)著(zhù)名的摩爾定律,我相信每個(gè)人都聽(tīng)說(shuō)過(guò):集成電路的復雜性在18個(gè)月內翻了一番。因此,內存成本大約每 18-24 個(gè)月下降一半。成本下降也使大數據可存儲。例如,谷歌
  管理著(zhù)超過(guò)50萬(wàn)臺服務(wù)器和100萬(wàn)個(gè)硬盤(pán),谷歌也在不斷擴大計算能力和存儲容量,其中很多都是基于廉價(jià)的服務(wù)器和普通存儲硬盤(pán),大大降低了其服務(wù)成本,因此可以在技術(shù)研發(fā)上投入更多的資金。
  就亞馬遜而言,Amazon S3是一種面向互聯(lián)網(wǎng)的存儲服務(wù)。該服務(wù)旨在使開(kāi)發(fā)人員更容易進(jìn)行網(wǎng)絡(luò )規模的計算。Amazon S3 提供了一個(gè)簡(jiǎn)潔的 Web 服務(wù)界面,允許用戶(hù)隨時(shí)隨地在 Web 上存儲和檢索任何大小的數據。該服務(wù)使所有開(kāi)發(fā)人員都可以訪(fǎng)問(wèn)亞馬遜用于運行其全球網(wǎng)站網(wǎng)絡(luò )的相同可擴展、可靠、安全和快速成本的基礎設施??紤] S3 的設計指標:給定年份中對象的 99.9999999999% 的持久性和 99.99% 的可用性,以及承受兩個(gè)設施的數據丟失的能力。
  S3 已經(jīng)成功并且確實(shí)有效,S3 云中有數萬(wàn)億個(gè)存儲對象,并且性能相當不錯。S3 Cloud已經(jīng)跨區域存儲了數萬(wàn)億個(gè)對象,AWS的對象執行請求已達到100萬(wàn)個(gè)的峰值。全球已有數十萬(wàn)家企業(yè)通過(guò) AWS 運行其全部或部分日常業(yè)務(wù)。這些業(yè)務(wù)遍布 190 多個(gè)國家/地區,亞馬遜用戶(hù)幾乎遍布世界每個(gè)角落。
  
  感知技術(shù)
  大數據的采集
和傳感技術(shù)的發(fā)展密切相關(guān)?;趥鞲衅骷夹g(shù)、指紋識別技術(shù)、RFID技術(shù)、坐標定位技術(shù)等感知能力的提升也是物聯(lián)網(wǎng)發(fā)展的基石。世界各地的工業(yè)設備、汽車(chē)、電表上都有無(wú)數的數字傳感器,它們隨時(shí)測量和傳輸位置、運動(dòng)、振動(dòng)、溫度、濕度,甚至空氣中化學(xué)物質(zhì)的變化,這將產(chǎn)生海量的數據信息。
  隨著(zhù)智能手機的普及,感知技術(shù)可以
  可謂是發(fā)展的巔峰,除了地理位置信息的廣泛應用外,一些新的感知手段也開(kāi)始出現在舞臺上,比如最新的“iPhone 5S”在Home鍵中嵌入了指紋傳感器,新手機可以直接檢測呼氣燃燒的脂肪量,手機的嗅覺(jué)傳感器可以監測從空氣污染到危險化學(xué)品, 微軟正在開(kāi)發(fā)能夠感知用戶(hù)當前情緒的智能手機技術(shù),谷歌眼鏡InSight新技術(shù)使人能夠通過(guò)服裝進(jìn)行識別。
  此外,還有許多與感知相關(guān)的技術(shù)創(chuàng )新讓我們精神煥發(fā):例如,牙科傳感器實(shí)時(shí)監測口腔活動(dòng)和飲食,嬰兒可穿戴設備可以使用大數據撫養嬰兒,英特爾正在開(kāi)發(fā)可以跟蹤眼睛和讀取情緒的3D筆記本電腦相機,日本公司正在開(kāi)發(fā)可以監測用戶(hù)心率的新型紡織材料, 該行業(yè)正試圖將生物識別技術(shù)引入支付領(lǐng)域。
  事實(shí)上,這個(gè)過(guò)程
  這些感知被逐漸捕捉,就是世界被數據化的過(guò)程,一旦世界完全數據化,那么世界的本質(zhì)就是信息。
  俗話(huà)說(shuō):“人類(lèi)過(guò)去延續文明,現在繼承信息。"
  大數據的實(shí)踐
  互聯(lián)網(wǎng)大數據
  因特網(wǎng)上的數據每年增長(cháng)50%,每?jì)赡陮⒎环?,而目前世界?0%以上的數據是最近幾年才產(chǎn)生的。IDC預測,到2020年,全球將有35澤字節的數據?;ヂ?lián)網(wǎng)是大數據發(fā)展的前哨,隨著(zhù)WEB 2.0時(shí)代的發(fā)展,人們似乎習慣于通過(guò)網(wǎng)絡(luò )將自己的生活數字化,方便分享、記錄和回憶。
  互聯(lián)網(wǎng)上的大數據很難明確界定分類(lèi)邊界,我們先來(lái)看看BAT的大數據:
  在信息技術(shù)較為發(fā)達的美國,除了谷歌、Facebook等知名公司外,涌現出許多大數據公司,專(zhuān)門(mén)從事數據產(chǎn)品,如:
  Metamarkets:這家公司分析Twitter,支付,簽到和一些與互聯(lián)網(wǎng)相關(guān)的問(wèn)題,為客戶(hù)提供出色的數據分析支持。
  Tableau:他們的重點(diǎn)是可視化大量數據。Tableau 提供了一種為數字媒體呈現數據的新方法。他們提供了一個(gè)免費工具,允許任何沒(méi)有編程背景的人創(chuàng )建特定于數據的圖表。該軟件還會(huì )分析數據并提供有價(jià)值的建議。
  ParAccel:他們向美國執法機構提供數據分析,例如跟蹤15,000名有犯罪記錄的人,為執法機構提供信息豐富的犯罪預測。他們是罪的先知。
  QlikTech:Qlikview是QlikTech的一個(gè)部門(mén),是商業(yè)智能領(lǐng)域的自主服務(wù)工具,可以應用于科學(xué)研究和藝術(shù)等領(lǐng)域。為了幫助開(kāi)發(fā)人員分析這些數據,QlikTech 提供了用于可視化原創(chuàng )
數據的工具等。
  好數據
 ?。篏oodData希望幫助客戶(hù)從數據中挖掘財富。該初創(chuàng )公司面向業(yè)務(wù)用戶(hù)和IT高管,提供數據存儲,性能報告,數據分析等工具。TellApart
 ?。篢ellApart與電子商務(wù)公司合作,分析用戶(hù)瀏覽行為等數據,通過(guò)定位潛在買(mǎi)家來(lái)增加收入。DataSift
 ?。篋ataSift采集
和分析社交媒體上的數據,幫助品牌掌握突發(fā)新聞?wù)擖c(diǎn)并制定有針對性的營(yíng)銷(xiāo)計劃。該公司還與Twitter建立了合作伙伴關(guān)系,使其成為業(yè)內為數不多的可以分析早期推文的初創(chuàng )公司之一。
  Datahero:公司的目標是讓復雜的數據更簡(jiǎn)單、更清晰,讓普通人更容易理解和想象。
  例子很多,這里簡(jiǎn)單總結一下,互聯(lián)網(wǎng)上大數據的典型代表有:
  用戶(hù)行為數據(精準廣告、內容推薦、行為習慣與偏好分析、產(chǎn)品優(yōu)化等)用戶(hù)消費數據(精準營(yíng)銷(xiāo)、信用記錄分析、活動(dòng)推廣、財富管理等)用戶(hù)
  地理位置數據(O2O促銷(xiāo)、商家推薦、交友推薦等)互聯(lián)網(wǎng)金融數據(P2P、小額貸款、支付、信貸、供應鏈金融等)用戶(hù)社交和其他UGC數據(趨勢分析,流行元素分析,流行度分析,輿情監測分析,社會(huì )問(wèn)題分析等)。
  面向政府的大數據
  最近,
  奧巴馬政府宣布投資2億美元,推動(dòng)大數據相關(guān)產(chǎn)業(yè)發(fā)展,將“大數據戰略”提升為國家意志。奧巴馬政府將數據定義為“未來(lái)的新石油”,并表示一個(gè)國家擁有數據的規模、活動(dòng)、解釋和使用的能力將成為綜合國力的重要組成部分,未來(lái),數據的擁有和控制甚至將成為國家除土地之外的另一項核心資產(chǎn), ??樟α?。
  在我國,所有政府部門(mén)都有構成社會(huì )基礎的原創(chuàng )
數據,如氣象數據、財務(wù)數據、信用數據、電力數據、燃氣數據、自來(lái)水數據、道路交通數據、客運數據、安全刑事案件數據、住房數據、海關(guān)數據、出入境數據、旅游數據、醫療數據、教育數據、環(huán)保數據等。這些數據在每個(gè)政府部門(mén)內似乎是單一和靜態(tài)的。但是,如果政府能夠關(guān)聯(lián)這些數據,并對這些數據進(jìn)行有效的相關(guān)性分析和統一管理,這些數據必將重生,其價(jià)值不可估量。
  具體來(lái)說(shuō),城市現在正朝著(zhù)智能化、智慧智慧化、智慧化城市邁進(jìn),比如智能電網(wǎng)、智慧交通、智慧醫療、智慧環(huán)保、智慧城市,這些都依賴(lài)于大數據,可以說(shuō)大數據是智慧的核心能量。從我國整體投資規模來(lái)看,到2012年底,全國城市數量將開(kāi)始建設智慧城市,通信網(wǎng)絡(luò )、數據平臺等基礎設施建設投資規模接近5000億元?!笆濉逼陂g,智慧城市建設帶動(dòng)的設備投資規模將達到1萬(wàn)億元。大數據為智慧城市的所有領(lǐng)域提供決策支持。在城市規劃方面,通過(guò)挖掘城市地理、氣象等自然信息和經(jīng)濟、社會(huì )、文化、人口等人文社會(huì )信息,為城市規劃提供決策,增強城市管理服務(wù)的科學(xué)性和前瞻性。在交通管理方面,通過(guò)對道路交通信息的實(shí)時(shí)挖掘,可以有效緩解交通擁堵,快速應對突發(fā)事件,為城市交通良性運行提供科學(xué)決策依據。在輿情監測方面,通過(guò)網(wǎng)絡(luò )關(guān)鍵詞搜索和語(yǔ)義智能分析,可以提高輿情分析的及時(shí)性和全面性,全面掌握社會(huì )狀況和輿情,提高公共服務(wù)能力,應對互聯(lián)網(wǎng)突發(fā)公共事件,打擊違法犯罪。在安防災害領(lǐng)域,通過(guò)大數據挖掘,及時(shí)發(fā)現人為或自然災害和恐怖事件,提高應急處置能力和安全防范能力。
  此外,作為國家的管理者,政府應該有勇氣逐步將手中的數據開(kāi)放給更有能力的組織或個(gè)人進(jìn)行分析和利用,以加速造福人類(lèi)。比如美國政府建了一個(gè)網(wǎng)站,這是奧巴馬總統任期內的重要一步:要求政府透明,核心是公開(kāi)政府機構的數據。到目前為止,已經(jīng)開(kāi)放了91054個(gè)數據集;349個(gè)公民開(kāi)發(fā)的應用程序;137個(gè)移動(dòng)應用程序;175個(gè)機構和子機構;87個(gè)畫(huà)廊;295個(gè)政府API。
  面向企業(yè)的大數據
  企業(yè)的CXO最關(guān)心的是報告曲線(xiàn)背后能有什么樣的信息,他應該做出什么樣的決策,其實(shí)這一切都需要數據的傳遞和支撐。在理想的世界中,大數據是一個(gè)巨大的杠桿,可以改變公司的影響力,區分競爭對手,省錢(qián),增加利潤,取悅買(mǎi)家,獎勵忠誠用戶(hù),將潛在客戶(hù)轉化為客戶(hù),增加吸引力,擊敗競爭對手,擴大用戶(hù)群,創(chuàng )造市場(chǎng)。
  那么,哪些傳統企業(yè)最需要大數據服務(wù)呢?我們舉幾個(gè)例子:1)向大量消費者提供產(chǎn)品或服務(wù)的企業(yè)(精準營(yíng)銷(xiāo));2)做中長(cháng)尾企業(yè)(服務(wù)轉型)的小而美典范;3)在互聯(lián)網(wǎng)(生死攸關(guān))的壓力下必須轉型的傳統企業(yè)。
  對于企業(yè)的大數據,
  還有一個(gè)預測:隨著(zhù)數據逐漸成為企業(yè)的資產(chǎn),數據產(chǎn)業(yè)將發(fā)展到傳統企業(yè)的供應鏈模式,最終形成“數據供應鏈”。特別是,有兩件事是顯而易見(jiàn)的:1)外部數據比內部數據越來(lái)越重要。在互聯(lián)互通的互聯(lián)網(wǎng)時(shí)代,單個(gè)企業(yè)的內部數據與整個(gè)互聯(lián)網(wǎng)數據相比只是滄海一粟;2)能夠提供數據供應、數據集成處理、數據應用等多鏈路服務(wù)的企業(yè)將具有明顯的綜合競爭優(yōu)勢。
  對于提供大數據服務(wù)的公司來(lái)說(shuō),他們正在等待合作的機會(huì ),正如微軟史密斯所說(shuō):“給我一些數據,我可以做出一些改變。如果你把所有的數據都給我,我就能拯救世界。"
  然而,一直做企業(yè)服務(wù)的巨頭們不會(huì )有優(yōu)勢,他們不得不眼睜睜地看著(zhù)新興互聯(lián)網(wǎng)公司加入戰斗,開(kāi)啟殘酷的競爭模式。為什么會(huì )這樣?從IT行業(yè)發(fā)展來(lái)看,第一代IT巨頭大多是ToB,如IBM、微軟、甲骨文、SAP、惠普等傳統IT企業(yè);第二代IT巨頭大多是ToC,如雅虎、谷歌、亞馬遜、Facebook等互聯(lián)網(wǎng)公司。在大數據到來(lái)之前,這兩類(lèi)公司基本互不逆河;但在當前大數據時(shí)代,這兩類(lèi)公司已經(jīng)開(kāi)始直接競爭。例如,亞馬遜已經(jīng)開(kāi)始提供基于云的數據倉庫服務(wù),直接搶占了IBM和甲骨文的市場(chǎng)。這種現象出現的本質(zhì)原因是:在互聯(lián)網(wǎng)巨頭的推動(dòng)下,傳統IT巨頭的客戶(hù)普遍開(kāi)始從事電子商務(wù)業(yè)務(wù),而正是因為客戶(hù)進(jìn)入了互聯(lián)網(wǎng),所以傳統IT巨頭才被不情愿地拖入互聯(lián)網(wǎng)領(lǐng)域。如果他們不進(jìn)入互聯(lián)網(wǎng),他們的業(yè)務(wù)就會(huì )萎縮。進(jìn)入互聯(lián)網(wǎng)后,必須將云技術(shù)、大數據等互聯(lián)網(wǎng)最具優(yōu)勢的技術(shù)打包到自己的產(chǎn)品中,然后提供給企業(yè)。
  例如,IBM在過(guò)去十年中已經(jīng)放棄了PC,并成功轉向軟件和服務(wù),這一次他們將遠離服務(wù)和咨詢(xún),更多地關(guān)注大數據分析軟件帶來(lái)的新業(yè)務(wù)增長(cháng)。IBM首席執行官Rometty Romet認為,“數據將成為決定所有行業(yè)成敗的根本因素,最終數據將成為人類(lèi)至關(guān)重要的自然資源。IBM積極提出“大數據平臺”架構。該平臺的四個(gè)核心功能包括Hadoop,流計算,數據倉庫以及信息集成和治理。
  IBM 大數據
  另一家需要通過(guò)云和大數據戰略進(jìn)行恢復的巨頭惠普也推出了自己的產(chǎn)品:HAVEn,這是一種可以自由擴展和擴展的大數據解決方案。該解決方案包括四種技術(shù):HP Autonomy、HP Vertica、HP ArcSight 和 HP Operations Management。它還支持Hadoop等通用技術(shù)。HAVEn不是一個(gè)軟件平臺,而是一個(gè)生態(tài)系統。四大組件滿(mǎn)足不同應用場(chǎng)景的需求,Autonomy是解決音視頻識別的重要解決方案;Vertica 的解決方案,用于解決數據處理的速度和效率問(wèn)題;ArcSight解決了機器的記錄信息處理,幫助企業(yè)獲得更高級別的安全管理;運營(yíng)管理不僅涉及外部數據的處理,還涉及IT基礎架構生成的數據。
  個(gè)人大數據
  個(gè)人大數據的概念很少被提及,簡(jiǎn)單來(lái)說(shuō),在有效采集
了與個(gè)人相關(guān)的各種有價(jià)值的數據信息后,可以得到本人的授權,提供給第三方進(jìn)行處理和使用,獲得第三方提供的數據服務(wù)。
  用一個(gè)例子來(lái)說(shuō)明會(huì )更清楚:
  未來(lái),每個(gè)用戶(hù)都可以在互聯(lián)網(wǎng)上注冊一個(gè)個(gè)人數據中心來(lái)存儲個(gè)人大數據信息。用戶(hù)可以確定可以采集
哪些個(gè)人數據,并通過(guò)可穿戴設備或植入芯片等感知技術(shù)采集
和捕獲個(gè)人大數據,如牙科監測數據、心率數據、體溫數據、視覺(jué)數據、記憶能力、地理位置信息、社交關(guān)系數據、運動(dòng)數據、飲食數據、購物數據等。用戶(hù)可以將牙科監測數據授權給XX牙科診所使用,他們可以監控和使用這些數據,為用戶(hù)制定有效的牙齒預防和保養計劃;也可以授權將個(gè)人的運動(dòng)數據提供給體育和健身機構,該機構將監測其身體運動(dòng)功能,并有針對性地制定和調整其個(gè)人運動(dòng)計劃;您還可以將您的個(gè)人消費數據委托給金融機構,他們可以幫助您制定合理的財務(wù)計劃并預測收益。當然,其中一些個(gè)人數據可以提供給國家相關(guān)部門(mén)進(jìn)行實(shí)時(shí)監控,而無(wú)需個(gè)人授權,例如犯罪預防和監測中心,它可以實(shí)時(shí)監控該地區每個(gè)人的情緒和心理狀態(tài),以防止自殺和犯罪。
  以個(gè)人為中心的大數據具有一些特征:數據僅
  保留在個(gè)人中心,其他第三方機構僅授權使用(數據有一定的使用期限),使用后必須接受立即銷(xiāo)毀的監督。個(gè)人數據的采集
應明確分類(lèi),其他類(lèi)型的數據由用戶(hù)自己采集
,但國家立法明確要求監控的數據除外。數據的使用僅由用戶(hù)授權,數據中心可以幫助監控個(gè)人數據的整個(gè)生命周期。
  前景太好了,也許個(gè)人數據中心的實(shí)現會(huì )
  在遙遠的地方,也許這不是解決個(gè)人數據隱私的最好方法,也許行業(yè)對大數據的無(wú)限渴望會(huì )阻止數據個(gè)人中心的實(shí)現,但隨著(zhù)數據越來(lái)越多,在缺乏監管之后,必然會(huì )出現一場(chǎng)激烈的博弈:數據重要還是隱私重要;無(wú)論是以業(yè)務(wù)為中心還是以個(gè)人為中心。
  結束
  版權聲明:轉載文章來(lái)源于公眾網(wǎng)絡(luò ),僅供學(xué)習使用,不會(huì )用于任何商業(yè)目的,如來(lái)源錯誤或侵犯原作者權益,請聯(lián)系我們進(jìn)行刪除或授權,聯(lián)系郵箱:。請注明轉載大數據公眾號文章的原創(chuàng )
鏈接和作者,否則產(chǎn)生的版權糾紛與大數據無(wú)關(guān)。
  解讀:什么是原創(chuàng )文章?原創(chuàng )文章與偽原創(chuàng )文章區別?皆知傳媒為您解答?
  什么是原創(chuàng )文章?原創(chuàng )文章和seo偽原創(chuàng )有什么區別?接下來(lái),知乎傳媒將為您詳細解讀。說(shuō)白了,原創(chuàng )文章就是從頭到尾所有的內容都是用自己的話(huà)來(lái)表達的。偽原創(chuàng )就是文章的開(kāi)頭和結尾都是自己寫(xiě)的。,其余內容是摘錄別人在網(wǎng)上的文章修改的,稍微修改一下別人的內容,冒充自己寫(xiě)的。下面說(shuō)說(shuō)原創(chuàng )文章和偽原創(chuàng )文章的區別。
  
  原創(chuàng )文章:未被搜索引擎收錄的文章。它利用谷歌通過(guò)翻墻軟件查找英文資料,然后翻譯成中文。方法是翻簡(jiǎn)的方法,通過(guò)Kimo搜索引擎找到和你網(wǎng)站相關(guān)的文章,用網(wǎng)頁(yè)編輯器對內容進(jìn)行格式化,然后創(chuàng )建一個(gè)word文檔選擇里面的所有內容,通過(guò)審核給翻簡(jiǎn)。通過(guò)圖像識別創(chuàng )作原創(chuàng )文章,需要高清相機或手機、dopdf-7虛擬打印機、rj_nd1854圖像識別軟件。用word打開(kāi)你準備好的圖片文件,用你安裝的虛擬打印機的pdf格式打印出來(lái),放在合適的位置。使用圖像識別軟件打開(kāi)此pdf文件并選擇一個(gè)區域進(jìn)行識別。
  偽原創(chuàng ):一般來(lái)說(shuō),偽原創(chuàng )占網(wǎng)站的70%左右。就是對原創(chuàng )文章進(jìn)行處理,讓文章以為是自己的。修改一篇文章的標題,先把這個(gè)標題放到百度的搜索框里,看這個(gè)標題出現頻率高不高,再看這個(gè)標題下的搜索結果是不是全部都是紅色的。要修改的標題必須收錄
關(guān)鍵詞。文章的第一段最好自己寫(xiě),第一段在文章的關(guān)鍵詞加上錨文本。文章中間的段落需要自己寫(xiě)或修改,需要文章的關(guān)鍵詞,文章的結尾需要自己寫(xiě),有關(guān)鍵詞。這種偽原創(chuàng )文章至少要經(jīng)過(guò)80%的工具檢測才能發(fā)表。它可以用作更新站點(diǎn)內容的方法,并與原創(chuàng )
文章結合使用。
  
  站外平臺發(fā)布可以使用偽原創(chuàng )文章,但是要注意站內文章不要重復,那么站外怎么發(fā)呢。你可以天天用這個(gè)偽原創(chuàng )seo的工具進(jìn)行批量站外發(fā)布,為自己的網(wǎng)站引入流量。網(wǎng)站的內容怎么寫(xiě),很容易引起網(wǎng)友的興趣。第一種形式是軟文。簡(jiǎn)單來(lái)說(shuō),軟文就是廣告。這種軟件通常隱藏在故事情節中。廣告自然地穿插在劇情中間。第二種是新聞文章。這類(lèi)文章具有權威性,比較真實(shí)可靠。第三種是知識分享文章的內容,很容易引起客戶(hù)的共鳴,啟發(fā)客戶(hù)。第四類(lèi)是有爭議的文章內容。

解決方案:使用Flume+Kafka+SparkStreaming進(jìn)行實(shí)時(shí)日志分析

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 253 次瀏覽 ? 2022-11-17 09:44 ? 來(lái)自相關(guān)話(huà)題

  解決方案:使用Flume+Kafka+SparkStreaming進(jìn)行實(shí)時(shí)日志分析
  每個(gè)公司都想進(jìn)行數據分析或數據挖掘。采集日志和 ETL 是第一步。今天講一下如何實(shí)時(shí)采集日志(準實(shí)時(shí),每分鐘分析一次),處理日志,存儲處理后的記錄。保存在Hive中,附上完整的實(shí)戰代碼
  一、總體結構
  想一想,正常情況下我們是如何采集和分析日志的呢?
  首先,業(yè)務(wù)日志會(huì )通過(guò)Nginx(或者其他方式,我們使用Nginx來(lái)寫(xiě)日志)每分鐘寫(xiě)入一次磁盤(pán)?,F在如果我們要使用Spark來(lái)分析日志,我們需要先將磁盤(pán)中的文件上傳到HDFS。然后Spark對其進(jìn)行處理,最后存儲到Hive表中,如圖:
  我們之前使用這種方法每天分析一次日志,但是這樣有幾個(gè)缺點(diǎn):
  首先,我們的日志通過(guò)Nginx每分鐘保存為一個(gè)文件,所以一天的文件很多,不利于后續的分析任務(wù),所以我們要先合并一天所有的日志文件
  合并后需要將文件從磁盤(pán)傳輸到hdfs,但是我們的日志服務(wù)器不在hadoop集群中,所以沒(méi)有辦法直接傳輸到hdfs,需要先將文件從日志服務(wù)器傳輸到Hadoop集群所在服務(wù)器,然后再上傳到Hdfs
  最后,也是最重要的一點(diǎn),延遲一天的數據分析已經(jīng)不能滿(mǎn)足我們新的業(yè)務(wù)需求。滯后時(shí)間最好控制在一小時(shí)以?xún)?br />   可以看出,我們之前采集分析日志的方法比較原創(chuàng ),比較耗時(shí)。大量時(shí)間浪費在網(wǎng)絡(luò )傳輸上。如果日志量很大,有可能會(huì )丟失數據,所以我們在此基礎上進(jìn)行了改進(jìn)。建筑學(xué):
  整個(gè)過(guò)程就是Flume會(huì )實(shí)時(shí)監控寫(xiě)入日志的磁盤(pán)。只要有新的日志寫(xiě)入,Flume就會(huì )將日志以消息的形式傳遞給Kafka,然后Spark Streaming會(huì )實(shí)時(shí)消費消息傳遞給Hive。
  那么Flume是什么,它為什么能監控一個(gè)磁盤(pán)文件呢?總之,Flume是一個(gè)開(kāi)源的采集、聚合、移動(dòng)大量日志文件的框架,所以非常適合這種實(shí)時(shí)采集和投遞日志的場(chǎng)景
  Kafka 是一個(gè)消息系統。Flume采集的日志可以移動(dòng)到Kafka消息隊列中,然后可以多地消費,保證不丟數據。
  通過(guò)這種架構,采集到的日志可以被Flume發(fā)現并及時(shí)發(fā)送給Kafka。通過(guò)Kafka,我們可以在各個(gè)地方使用日志。同樣的日志可以存儲在Hdfs中,離線(xiàn)分析,實(shí)時(shí)計算。安全性可以得到保證,實(shí)時(shí)性要求基本可以滿(mǎn)足
  整個(gè)流程已經(jīng)清楚了,下面有突破,我們開(kāi)始實(shí)施整個(gè)系統
  2. 實(shí)戰 2.1 安裝Kafka
  下載并安裝 Kafka 并在此處發(fā)送一些基本命令:Kafka Installation and Introduction
  安裝后,創(chuàng )建一個(gè)名為 launcher_click 的新主題:
  bin/kafka-topics.sh --create --zookeeper hxf:2181,cfg:2181,jqs:2181,jxf:2181,sxtb:2181 --replication-factor 2 --partitions 2 --topic launcher_click
  看看這個(gè)話(huà)題:
  bin/kafka-topics.sh --describe --zookeeper hxf:2181,cfg:2181,jqs:2181,jxf:2181,sxtb:2181 --topic launcher_click
  2.2 安裝水槽
  1.下載解壓
  下載鏈接:
  注意進(jìn)入下載地址頁(yè)面,使用清華的地址,否則會(huì )很慢
  wget http://apache.fayea.com/flume/ ... ar.gz
tar -xvf apache-flume-1.7.0-bin.tar.gz
  2.修改配置文件
  進(jìn)入flume目錄,修改conf/flume-env.sh
  export JAVA_HOME=/data/install/jdk
export JAVA_OPTS="-Xms1000m -Xmx2000m -Dcom.sun.management.jmxremote"
  添加配置文件:conf/flume_launcherclick.conf
  # logser可以看做是flume服務(wù)的名稱(chēng),每個(gè)flume都由sources、channels和sinks三部分組成
# sources可以看做是數據源頭、channels是中間轉存的渠道、sinks是數據后面的去向
logser.sources = src_launcherclick
logser.sinks = kfk_launcherclick
logser.channels = ch_launcherclick
<p>
# source
# 源頭類(lèi)型是TAILDIR,就可以實(shí)時(shí)監控以追加形式寫(xiě)入文件的日志
logser.sources.src_launcherclick.type = TAILDIR
# positionFile記錄所有監控的文件信息
logser.sources.src_launcherclick.positionFile = /data/install/flume/position/launcherclick/taildir_position.json
# 監控的文件組
logser.sources.src_launcherclick.filegroups = f1
# 文件組包含的具體文件,也就是我們監控的文件
logser.sources.src_launcherclick.filegroups.f1 = /data/launcher/stat_app/.*
# interceptor
# 寫(xiě)kafka的topic即可
logser.sources.src_launcherclick.interceptors = i1 i2
logser.sources.src_launcherclick.interceptors.i1.type=static
logser.sources.src_launcherclick.interceptors.i1.key = type
logser.sources.src_launcherclick.interceptors.i1.value = launcher_click
logser.sources.src_launcherclick.interceptors.i2.type=static
logser.sources.src_launcherclick.interceptors.i2.key = topic
logser.sources.src_launcherclick.interceptors.i2.value = launcher_click
# channel
logser.channels.ch_launcherclick.type = memory
logser.channels.ch_launcherclick.capacity = 10000
logser.channels.ch_launcherclick.transactionCapacity = 1000
# kfk sink
# 指定sink類(lèi)型是Kafka,說(shuō)明日志最后要發(fā)送到Kafka
logser.sinks.kfk_launcherclick.type = org.apache.flume.sink.kafka.KafkaSink
# Kafka broker
logser.sinks.kfk_launcherclick.brokerList = 10.0.0.80:9092,10.0.0.140:9092
# Bind the source and sink to the channel
logser.sources.src_launcherclick.channels = ch_launcherclick
logser.sinks.kfk_launcherclick.channel = ch_launcherclick</p>
  3.開(kāi)始
  nohup bin/flume-ng agent --conf conf/ --conf-file conf/flume_launcherclick.conf --name logser -Dflume.root.logger=INFO,console >> logs/flume_launcherclick.log &
  這個(gè)時(shí)候Kafka和Flume都已經(jīng)啟動(dòng)了。從配置我們可以看出Flume的監控文件是/data/launcher/stat_app/.*,所以只要這個(gè)目錄下的文件內容增加,就會(huì )發(fā)送給kafka??梢宰约禾砑右恍?把測試日志放到這個(gè)目錄下的文件中,然后打開(kāi)一個(gè)Kafka Consumer,看看Kafka有沒(méi)有收到消息。這里我們將看到完成SparkStreaming后的測試結果
  2.3 Spark流式編程
  SparkStreaming是Spark用來(lái)處理實(shí)時(shí)流的,可以實(shí)時(shí)到秒級。我們這里不需要這樣的實(shí)時(shí)。日志分析程序每分鐘執行一次。主要代碼如下:
   def main(args: Array[String]) {
<p>
Logger.getLogger("org.apache.spark").setLevel(Level.WARN)
System.setProperty("spark.serializer", "org.apache.spark.serializer.KryoSerializer")
val sparkConf = new SparkConf().setAppName("LauncherStreaming")
//每60秒一個(gè)批次
val ssc = new StreamingContext(sparkConf, Seconds(60))
// 從Kafka中讀取數據
val kafkaStream = KafkaUtils.createStream(
ssc,
"hxf:2181,cfg:2181,jqs:2181,jxf:2181,sxtb:2181", // Kafka集群使用的zookeeper
"launcher-streaming", // 該消費者使用的group.id
Map[String, Int]("launcher_click" -> 0, "launcher_click" -> 1), // 日志在Kafka中的topic及其分區
StorageLevel.MEMORY_AND_DISK_SER).map(_._2) // 獲取日志內容
kafkaStream.foreachRDD((rdd: RDD[String], time: Time) => {
val result = rdd.map(log => parseLog(log)) // 分析處理原始日志
.filter(t => StringUtils.isNotBlank(t._1) && StringUtils.isNotBlank(t._2))
// 存入hdfs
result.saveAsHadoopFile(HDFS_DIR, classOf[String], classOf[String], classOf[LauncherMultipleTextOutputFormat[String, String]])
})
ssc.start()
// 等待實(shí)時(shí)流
ssc.awaitTermination()
}</p>
  內容有限,完整代碼訪(fǎng)問(wèn)我的github:
  然后打包上傳到master上運行:
  nohup /data/install/spark-2.0.0-bin-hadoop2.7/bin/spark-submit --master spark://hxf:7077 --executor-memory 1G --total-executor-cores 4 --class com.analysis.main.LauncherStreaming --jars /home/hadoop/jar/kafka-clients-0.10.0.0.jar,/home/hadoop/jar/metrics-core-2.2.0.jar,/home/hadoop/jar/zkclient-0.3.jar,/home/hadoop/jar/spark-streaming-kafka-0-8_2.11-2.0.0.jar,/home/hadoop/jar/kafka_2.11-0.8.2.1.jar /home/hadoop/jar/SparkLearning.jar >> /home/hadoop/logs/LauncherDM.log &
  然后開(kāi)始測試,將日志寫(xiě)入Flume監控目錄/data/launcher/stat_app/.*。原創(chuàng )日志內容類(lèi)似如下:
  118.120.102.3|1495608541.238|UEsDBBQACAgIACB2uEoAAAAAAAAAAAAAAAABAAAAMGWUbW7bMAyGb6NfnUFRFEWhJ+gBdgBZVjpjjp04brMAO*yY2DKa9Y+B1+DnQ1LCztoITgK4wPGHfNUhmKGUPOn3DyP*zdOxSWM3T33XXMqy9OP7xXTZiTC1xlL0HgMEi+BfHoooBEGKr3fPpYy5jMse4Xzupus4TKkrs4kZOhI51CgWWKxsUQBRPMDr1*w5Hcuc0LiUEFBwdXQxAARXHb3+QXlOfzya0uZWOGwlEwBDwLD5oJBVFHsEEPF2U0EUToyr8k4tg9v8AkRrIcKmxGsU2eqQIM45dKuKFICo5oveEqOjh2JAIITImyIJqBk3JS4qh7Wby*TroxnL9ZKHXrsyWeBQoMXaEgXUKh6mOQ1l7NLc*Hwz8aDpAtndLFJEetkVc6S9V*bg+RFiKMvnTv6ahuGUTmWexqEfi3Elezx0botJrCCQn5jfCzWaqaUOqNpFYO23ckYl5GOlx4rLQuUllh27SsjZyLQTUn4K+3uVczlOi+7uuMzTYLoibeIspk71DtKuJC+7T5qXPg9lLddaZs6+Lolnj7ANW0dBGKOn72m3cbQJI2Kq4*C6Xhz9E5Pzeeg*i2l1IAJtpReILNq6DY4peFjHeO5vffPZd2UyejEJ28Puo0sI*2*5ojvhfNcquWomFMVp02Pz++M6Nach3e6XR5wOlrdSg4T7RkgtQAuC6HYl2sc62i6dUq*om+HWjvdHAPSk8hYkegHraxC8PwPons73XZeozDfXmaRzzzaD2XI4fX0QX*8BUEsHCKeftc48AgAAmQQAAA==
  檢查HDFS對應目錄是否有內容:
  分析后存儲在HDFS中的日志內容如下:
  99000945863664;864698037273329|119.176.140.248|1495594615129|2017-05-24 10:56:55|xiaomi|redmi4x|com.jingdong.app.mall&0ae359b6&1495534579412&1;com.autonavi.minimap&279f562f&1495534597934,1495534616627&2;com.android.contacts&91586932&1495538267103,1495540527138,1495576834653,1495583404117,1495591231535&5
  SparkStreaming任務(wù)狀態(tài)如下:
  可以看出確實(shí)是每分鐘執行一次
  參考
  %E9%9B%86%E7%BE%A4%E5%8F%8A%E9%A1%B9%E7%9B%AE%E5%AE%9E%E6%88%98/
  解決方案:優(yōu)化手機端移動(dòng)端百度網(wǎng)站seo排名好的方式是什么?
  企業(yè)快速獲取百度移動(dòng)端SEO優(yōu)化排名主要有四種技巧,有需要的可以參考這些內容。
  1.百度移動(dòng)端優(yōu)化排名域名選擇
  無(wú)論是優(yōu)化移動(dòng)端網(wǎng)站還是PC端,網(wǎng)站的域名都很重要,域名的選擇要簡(jiǎn)潔明了。移動(dòng)端網(wǎng)站優(yōu)化選擇較短的域名,這樣會(huì )讓人更容易記憶,輸入簡(jiǎn)單,讓人的思想更中心化,便于搜索引擎抓取。
  
  2.排行優(yōu)化移動(dòng)端與PC適配轉換
  現在有很多seo移動(dòng)端網(wǎng)站做了響應式,可以實(shí)現seo百度移動(dòng)端和網(wǎng)站端的跳轉,避免二次建站,很方便,但是對于這種網(wǎng)站還需要做相應的導航跳轉鏈接,讓用戶(hù)在seo優(yōu)化后的手機端和電腦端來(lái)回切換,保證安全正常運行。&gt; 也有點(diǎn)幫助。
  3. 網(wǎng)站移動(dòng)優(yōu)化頁(yè)面簡(jiǎn)潔
  因為seo排名移動(dòng)端的網(wǎng)站受限于屏幕大小,所以移動(dòng)端優(yōu)化的網(wǎng)站移動(dòng)端頁(yè)面一定要更加簡(jiǎn)潔,能夠直接展示最重要的內容以吸引用戶(hù)瀏覽。同時(shí),百度移動(dòng)端排名網(wǎng)站簡(jiǎn)潔明了的內容也可以提高移動(dòng)端關(guān)鍵詞優(yōu)化網(wǎng)站的訪(fǎng)問(wèn)速度。
  
  4. 移動(dòng)關(guān)鍵詞 SEO優(yōu)化網(wǎng)站結構
  對于seo mobile網(wǎng)站,網(wǎng)站必須設置成樹(shù)狀結構,樹(shù)狀結構一般分為三層:首頁(yè),頻道,文章頁(yè)面,理想網(wǎng)站 結構要扁平化,從首頁(yè)到內容頁(yè)的層級盡量減少,這樣搜索引擎會(huì )比較容易處理。
  以上就是為大家總結的百度移動(dòng)端優(yōu)化排名技巧。以上移動(dòng)端網(wǎng)站排名優(yōu)化的內容相信大家都知道。優(yōu)化百度移動(dòng)端排名可以幫助企業(yè)獲得更多流量。促進(jìn)利益轉化,提升網(wǎng)站品牌形象。 查看全部

  解決方案:使用Flume+Kafka+SparkStreaming進(jìn)行實(shí)時(shí)日志分析
  每個(gè)公司都想進(jìn)行數據分析或數據挖掘。采集日志和 ETL 是第一步。今天講一下如何實(shí)時(shí)采集日志(準實(shí)時(shí),每分鐘分析一次),處理日志,存儲處理后的記錄。保存在Hive中,附上完整的實(shí)戰代碼
  一、總體結構
  想一想,正常情況下我們是如何采集和分析日志的呢?
  首先,業(yè)務(wù)日志會(huì )通過(guò)Nginx(或者其他方式,我們使用Nginx來(lái)寫(xiě)日志)每分鐘寫(xiě)入一次磁盤(pán)?,F在如果我們要使用Spark來(lái)分析日志,我們需要先將磁盤(pán)中的文件上傳到HDFS。然后Spark對其進(jìn)行處理,最后存儲到Hive表中,如圖:
  我們之前使用這種方法每天分析一次日志,但是這樣有幾個(gè)缺點(diǎn):
  首先,我們的日志通過(guò)Nginx每分鐘保存為一個(gè)文件,所以一天的文件很多,不利于后續的分析任務(wù),所以我們要先合并一天所有的日志文件
  合并后需要將文件從磁盤(pán)傳輸到hdfs,但是我們的日志服務(wù)器不在hadoop集群中,所以沒(méi)有辦法直接傳輸到hdfs,需要先將文件從日志服務(wù)器傳輸到Hadoop集群所在服務(wù)器,然后再上傳到Hdfs
  最后,也是最重要的一點(diǎn),延遲一天的數據分析已經(jīng)不能滿(mǎn)足我們新的業(yè)務(wù)需求。滯后時(shí)間最好控制在一小時(shí)以?xún)?br />   可以看出,我們之前采集分析日志的方法比較原創(chuàng ),比較耗時(shí)。大量時(shí)間浪費在網(wǎng)絡(luò )傳輸上。如果日志量很大,有可能會(huì )丟失數據,所以我們在此基礎上進(jìn)行了改進(jìn)。建筑學(xué):
  整個(gè)過(guò)程就是Flume會(huì )實(shí)時(shí)監控寫(xiě)入日志的磁盤(pán)。只要有新的日志寫(xiě)入,Flume就會(huì )將日志以消息的形式傳遞給Kafka,然后Spark Streaming會(huì )實(shí)時(shí)消費消息傳遞給Hive。
  那么Flume是什么,它為什么能監控一個(gè)磁盤(pán)文件呢?總之,Flume是一個(gè)開(kāi)源的采集、聚合、移動(dòng)大量日志文件的框架,所以非常適合這種實(shí)時(shí)采集和投遞日志的場(chǎng)景
  Kafka 是一個(gè)消息系統。Flume采集的日志可以移動(dòng)到Kafka消息隊列中,然后可以多地消費,保證不丟數據。
  通過(guò)這種架構,采集到的日志可以被Flume發(fā)現并及時(shí)發(fā)送給Kafka。通過(guò)Kafka,我們可以在各個(gè)地方使用日志。同樣的日志可以存儲在Hdfs中,離線(xiàn)分析,實(shí)時(shí)計算。安全性可以得到保證,實(shí)時(shí)性要求基本可以滿(mǎn)足
  整個(gè)流程已經(jīng)清楚了,下面有突破,我們開(kāi)始實(shí)施整個(gè)系統
  2. 實(shí)戰 2.1 安裝Kafka
  下載并安裝 Kafka 并在此處發(fā)送一些基本命令:Kafka Installation and Introduction
  安裝后,創(chuàng )建一個(gè)名為 launcher_click 的新主題:
  bin/kafka-topics.sh --create --zookeeper hxf:2181,cfg:2181,jqs:2181,jxf:2181,sxtb:2181 --replication-factor 2 --partitions 2 --topic launcher_click
  看看這個(gè)話(huà)題:
  bin/kafka-topics.sh --describe --zookeeper hxf:2181,cfg:2181,jqs:2181,jxf:2181,sxtb:2181 --topic launcher_click
  2.2 安裝水槽
  1.下載解壓
  下載鏈接:
  注意進(jìn)入下載地址頁(yè)面,使用清華的地址,否則會(huì )很慢
  wget http://apache.fayea.com/flume/ ... ar.gz
tar -xvf apache-flume-1.7.0-bin.tar.gz
  2.修改配置文件
  進(jìn)入flume目錄,修改conf/flume-env.sh
  export JAVA_HOME=/data/install/jdk
export JAVA_OPTS="-Xms1000m -Xmx2000m -Dcom.sun.management.jmxremote"
  添加配置文件:conf/flume_launcherclick.conf
  # logser可以看做是flume服務(wù)的名稱(chēng),每個(gè)flume都由sources、channels和sinks三部分組成
# sources可以看做是數據源頭、channels是中間轉存的渠道、sinks是數據后面的去向
logser.sources = src_launcherclick
logser.sinks = kfk_launcherclick
logser.channels = ch_launcherclick
<p>
# source
# 源頭類(lèi)型是TAILDIR,就可以實(shí)時(shí)監控以追加形式寫(xiě)入文件的日志
logser.sources.src_launcherclick.type = TAILDIR
# positionFile記錄所有監控的文件信息
logser.sources.src_launcherclick.positionFile = /data/install/flume/position/launcherclick/taildir_position.json
# 監控的文件組
logser.sources.src_launcherclick.filegroups = f1
# 文件組包含的具體文件,也就是我們監控的文件
logser.sources.src_launcherclick.filegroups.f1 = /data/launcher/stat_app/.*
# interceptor
# 寫(xiě)kafka的topic即可
logser.sources.src_launcherclick.interceptors = i1 i2
logser.sources.src_launcherclick.interceptors.i1.type=static
logser.sources.src_launcherclick.interceptors.i1.key = type
logser.sources.src_launcherclick.interceptors.i1.value = launcher_click
logser.sources.src_launcherclick.interceptors.i2.type=static
logser.sources.src_launcherclick.interceptors.i2.key = topic
logser.sources.src_launcherclick.interceptors.i2.value = launcher_click
# channel
logser.channels.ch_launcherclick.type = memory
logser.channels.ch_launcherclick.capacity = 10000
logser.channels.ch_launcherclick.transactionCapacity = 1000
# kfk sink
# 指定sink類(lèi)型是Kafka,說(shuō)明日志最后要發(fā)送到Kafka
logser.sinks.kfk_launcherclick.type = org.apache.flume.sink.kafka.KafkaSink
# Kafka broker
logser.sinks.kfk_launcherclick.brokerList = 10.0.0.80:9092,10.0.0.140:9092
# Bind the source and sink to the channel
logser.sources.src_launcherclick.channels = ch_launcherclick
logser.sinks.kfk_launcherclick.channel = ch_launcherclick</p>
  3.開(kāi)始
  nohup bin/flume-ng agent --conf conf/ --conf-file conf/flume_launcherclick.conf --name logser -Dflume.root.logger=INFO,console >> logs/flume_launcherclick.log &
  這個(gè)時(shí)候Kafka和Flume都已經(jīng)啟動(dòng)了。從配置我們可以看出Flume的監控文件是/data/launcher/stat_app/.*,所以只要這個(gè)目錄下的文件內容增加,就會(huì )發(fā)送給kafka??梢宰约禾砑右恍?把測試日志放到這個(gè)目錄下的文件中,然后打開(kāi)一個(gè)Kafka Consumer,看看Kafka有沒(méi)有收到消息。這里我們將看到完成SparkStreaming后的測試結果
  2.3 Spark流式編程
  SparkStreaming是Spark用來(lái)處理實(shí)時(shí)流的,可以實(shí)時(shí)到秒級。我們這里不需要這樣的實(shí)時(shí)。日志分析程序每分鐘執行一次。主要代碼如下:
   def main(args: Array[String]) {
<p>
Logger.getLogger("org.apache.spark").setLevel(Level.WARN)
System.setProperty("spark.serializer", "org.apache.spark.serializer.KryoSerializer")
val sparkConf = new SparkConf().setAppName("LauncherStreaming")
//每60秒一個(gè)批次
val ssc = new StreamingContext(sparkConf, Seconds(60))
// 從Kafka中讀取數據
val kafkaStream = KafkaUtils.createStream(
ssc,
"hxf:2181,cfg:2181,jqs:2181,jxf:2181,sxtb:2181", // Kafka集群使用的zookeeper
"launcher-streaming", // 該消費者使用的group.id
Map[String, Int]("launcher_click" -> 0, "launcher_click" -> 1), // 日志在Kafka中的topic及其分區
StorageLevel.MEMORY_AND_DISK_SER).map(_._2) // 獲取日志內容
kafkaStream.foreachRDD((rdd: RDD[String], time: Time) => {
val result = rdd.map(log => parseLog(log)) // 分析處理原始日志
.filter(t => StringUtils.isNotBlank(t._1) && StringUtils.isNotBlank(t._2))
// 存入hdfs
result.saveAsHadoopFile(HDFS_DIR, classOf[String], classOf[String], classOf[LauncherMultipleTextOutputFormat[String, String]])
})
ssc.start()
// 等待實(shí)時(shí)流
ssc.awaitTermination()
}</p>
  內容有限,完整代碼訪(fǎng)問(wèn)我的github:
  然后打包上傳到master上運行:
  nohup /data/install/spark-2.0.0-bin-hadoop2.7/bin/spark-submit --master spark://hxf:7077 --executor-memory 1G --total-executor-cores 4 --class com.analysis.main.LauncherStreaming --jars /home/hadoop/jar/kafka-clients-0.10.0.0.jar,/home/hadoop/jar/metrics-core-2.2.0.jar,/home/hadoop/jar/zkclient-0.3.jar,/home/hadoop/jar/spark-streaming-kafka-0-8_2.11-2.0.0.jar,/home/hadoop/jar/kafka_2.11-0.8.2.1.jar /home/hadoop/jar/SparkLearning.jar >> /home/hadoop/logs/LauncherDM.log &
  然后開(kāi)始測試,將日志寫(xiě)入Flume監控目錄/data/launcher/stat_app/.*。原創(chuàng )日志內容類(lèi)似如下:
  118.120.102.3|1495608541.238|UEsDBBQACAgIACB2uEoAAAAAAAAAAAAAAAABAAAAMGWUbW7bMAyGb6NfnUFRFEWhJ+gBdgBZVjpjjp04brMAO*yY2DKa9Y+B1+DnQ1LCztoITgK4wPGHfNUhmKGUPOn3DyP*zdOxSWM3T33XXMqy9OP7xXTZiTC1xlL0HgMEi+BfHoooBEGKr3fPpYy5jMse4Xzupus4TKkrs4kZOhI51CgWWKxsUQBRPMDr1*w5Hcuc0LiUEFBwdXQxAARXHb3+QXlOfzya0uZWOGwlEwBDwLD5oJBVFHsEEPF2U0EUToyr8k4tg9v8AkRrIcKmxGsU2eqQIM45dKuKFICo5oveEqOjh2JAIITImyIJqBk3JS4qh7Wby*TroxnL9ZKHXrsyWeBQoMXaEgXUKh6mOQ1l7NLc*Hwz8aDpAtndLFJEetkVc6S9V*bg+RFiKMvnTv6ahuGUTmWexqEfi3Elezx0botJrCCQn5jfCzWaqaUOqNpFYO23ckYl5GOlx4rLQuUllh27SsjZyLQTUn4K+3uVczlOi+7uuMzTYLoibeIspk71DtKuJC+7T5qXPg9lLddaZs6+Lolnj7ANW0dBGKOn72m3cbQJI2Kq4*C6Xhz9E5Pzeeg*i2l1IAJtpReILNq6DY4peFjHeO5vffPZd2UyejEJ28Puo0sI*2*5ojvhfNcquWomFMVp02Pz++M6Nach3e6XR5wOlrdSg4T7RkgtQAuC6HYl2sc62i6dUq*om+HWjvdHAPSk8hYkegHraxC8PwPons73XZeozDfXmaRzzzaD2XI4fX0QX*8BUEsHCKeftc48AgAAmQQAAA==
  檢查HDFS對應目錄是否有內容:
  分析后存儲在HDFS中的日志內容如下:
  99000945863664;864698037273329|119.176.140.248|1495594615129|2017-05-24 10:56:55|xiaomi|redmi4x|com.jingdong.app.mall&0ae359b6&1495534579412&1;com.autonavi.minimap&279f562f&1495534597934,1495534616627&2;com.android.contacts&91586932&1495538267103,1495540527138,1495576834653,1495583404117,1495591231535&5
  SparkStreaming任務(wù)狀態(tài)如下:
  可以看出確實(shí)是每分鐘執行一次
  參考
  %E9%9B%86%E7%BE%A4%E5%8F%8A%E9%A1%B9%E7%9B%AE%E5%AE%9E%E6%88%98/
  解決方案:優(yōu)化手機端移動(dòng)端百度網(wǎng)站seo排名好的方式是什么?
  企業(yè)快速獲取百度移動(dòng)端SEO優(yōu)化排名主要有四種技巧,有需要的可以參考這些內容。
  1.百度移動(dòng)端優(yōu)化排名域名選擇
  無(wú)論是優(yōu)化移動(dòng)端網(wǎng)站還是PC端,網(wǎng)站的域名都很重要,域名的選擇要簡(jiǎn)潔明了。移動(dòng)端網(wǎng)站優(yōu)化選擇較短的域名,這樣會(huì )讓人更容易記憶,輸入簡(jiǎn)單,讓人的思想更中心化,便于搜索引擎抓取。
  
  2.排行優(yōu)化移動(dòng)端與PC適配轉換
  現在有很多seo移動(dòng)端網(wǎng)站做了響應式,可以實(shí)現seo百度移動(dòng)端和網(wǎng)站端的跳轉,避免二次建站,很方便,但是對于這種網(wǎng)站還需要做相應的導航跳轉鏈接,讓用戶(hù)在seo優(yōu)化后的手機端和電腦端來(lái)回切換,保證安全正常運行。&gt; 也有點(diǎn)幫助。
  3. 網(wǎng)站移動(dòng)優(yōu)化頁(yè)面簡(jiǎn)潔
  因為seo排名移動(dòng)端的網(wǎng)站受限于屏幕大小,所以移動(dòng)端優(yōu)化的網(wǎng)站移動(dòng)端頁(yè)面一定要更加簡(jiǎn)潔,能夠直接展示最重要的內容以吸引用戶(hù)瀏覽。同時(shí),百度移動(dòng)端排名網(wǎng)站簡(jiǎn)潔明了的內容也可以提高移動(dòng)端關(guān)鍵詞優(yōu)化網(wǎng)站的訪(fǎng)問(wèn)速度。
  
  4. 移動(dòng)關(guān)鍵詞 SEO優(yōu)化網(wǎng)站結構
  對于seo mobile網(wǎng)站,網(wǎng)站必須設置成樹(shù)狀結構,樹(shù)狀結構一般分為三層:首頁(yè),頻道,文章頁(yè)面,理想網(wǎng)站 結構要扁平化,從首頁(yè)到內容頁(yè)的層級盡量減少,這樣搜索引擎會(huì )比較容易處理。
  以上就是為大家總結的百度移動(dòng)端優(yōu)化排名技巧。以上移動(dòng)端網(wǎng)站排名優(yōu)化的內容相信大家都知道。優(yōu)化百度移動(dòng)端排名可以幫助企業(yè)獲得更多流量。促進(jìn)利益轉化,提升網(wǎng)站品牌形象。

直觀(guān):如何從一個(gè)像素點(diǎn)采集數據中獲取像素值?

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 129 次瀏覽 ? 2022-11-14 11:18 ? 來(lái)自相關(guān)話(huà)題

  直觀(guān):如何從一個(gè)像素點(diǎn)采集數據中獲取像素值?
  文章實(shí)時(shí)采集到的數據與圖片采集原理相似,但注意一個(gè)關(guān)鍵點(diǎn),現在pc上不是不可以也不是沒(méi)有,而是你只能采集一個(gè)像素的圖片。今天大雪就教教大家,如何從一個(gè)像素點(diǎn)采集數據。什么意思呢?就是說(shuō)你無(wú)法獲取一個(gè)一維像素點(diǎn),但是可以獲取一個(gè)一維數組(普通的任何語(yǔ)言,c++,java,javascript)。首先來(lái)看下數組的結構,表示一個(gè)數組,表示你提供的像素點(diǎn)數據,一共有五組數據,縱坐標表示點(diǎn)的數量,橫坐標表示數據的數量,每一組值對應一個(gè)值,為什么是有點(diǎn),而不是一個(gè)坐標呢?因為一個(gè)坐標才能取整數,一個(gè)像素點(diǎn)連續取反取整數,那是不是就沒(méi)有任何意義了呢?如果能取出一組固定的值,那就完全沒(méi)有區別了。
  
  這里需要記住一個(gè)點(diǎn),數組里每一個(gè)值代表著(zhù)坐標。所以怎么能獲取一個(gè)固定的坐標,那就只能讓數組包含個(gè)整數,也就是采樣??偨Y起來(lái)就是從像素值的五個(gè)位置取取整數,然后這5個(gè)值組成一個(gè)數組,從這個(gè)數組再取值,然后用這個(gè)值去取整數,組成一個(gè)新的像素。我們用圖來(lái)理解一下,這就像一張大的地圖,你在一個(gè)位置走一次,那就把整張地圖看成一個(gè)點(diǎn),但是我們總是走動(dòng),我們就把一張地圖分成了許多條線(xiàn),就像是遍歷遍歷,分別沿著(zhù)一條路走一次,一條線(xiàn)能走動(dòng)多少個(gè)點(diǎn)就把這些點(diǎn)表示出來(lái)。
  那么總共走了多少步,我們就知道地圖的大致情況了。那么我們再想一下,如果我們在一個(gè)點(diǎn)附近也定一條線(xiàn),在這條線(xiàn)上取一個(gè)值,然后總共取多少條線(xiàn),然后他們就組成了一條線(xiàn)。這樣既然是遍歷遍歷,那就可以不停循環(huán),但是現在我們考慮中間位置。我們在二維空間或者三維空間內,我們可以不斷的遍歷,直到遍歷所有位置,那么這個(gè)數組的每一個(gè)元素對應一個(gè)位置,這條線(xiàn),那么代表了多少條對應位置的路徑就成了一個(gè)點(diǎn)的路徑代表的數據。
  
  那么位置是一個(gè)二維數組,有的像素點(diǎn)包含了多條線(xiàn),那么這個(gè)點(diǎn)的方向就是經(jīng)過(guò)多少條線(xiàn)。至于為什么前面也講過(guò),一個(gè)像素點(diǎn)連續取反取整數,那么這么多個(gè)取整數組成了一個(gè)點(diǎn)的數組,然后用這個(gè)點(diǎn)去取值。其實(shí)數組存取原理就是一個(gè)鍵值對,這個(gè)是用鍵盤(pán)輸入數字組成的數組,比如說(shuō)我們輸入十億個(gè)字符,我們能構建出兩個(gè)數組。不過(guò)如果我們的數量增加,那么這兩個(gè)數組的鍵值對也要擴展到十億,也就是多個(gè)操作。
  所以一個(gè)像素點(diǎn)不用多選,一組像素點(diǎn)最好是存一個(gè),當然這只是理論上的可能,因為操作越多,判斷時(shí)間越長(cháng)。整體思路就是,你在采集數據的時(shí)候,先把每一組用一個(gè)鍵值對記錄下來(lái),然后不斷遍歷直到每個(gè)元素都獲取到,得到最后一組元素,最后把這個(gè)數組里的數據輸出。 查看全部

  直觀(guān):如何從一個(gè)像素點(diǎn)采集數據中獲取像素值?
  文章實(shí)時(shí)采集到的數據與圖片采集原理相似,但注意一個(gè)關(guān)鍵點(diǎn),現在pc上不是不可以也不是沒(méi)有,而是你只能采集一個(gè)像素的圖片。今天大雪就教教大家,如何從一個(gè)像素點(diǎn)采集數據。什么意思呢?就是說(shuō)你無(wú)法獲取一個(gè)一維像素點(diǎn),但是可以獲取一個(gè)一維數組(普通的任何語(yǔ)言,c++,java,javascript)。首先來(lái)看下數組的結構,表示一個(gè)數組,表示你提供的像素點(diǎn)數據,一共有五組數據,縱坐標表示點(diǎn)的數量,橫坐標表示數據的數量,每一組值對應一個(gè)值,為什么是有點(diǎn),而不是一個(gè)坐標呢?因為一個(gè)坐標才能取整數,一個(gè)像素點(diǎn)連續取反取整數,那是不是就沒(méi)有任何意義了呢?如果能取出一組固定的值,那就完全沒(méi)有區別了。
  
  這里需要記住一個(gè)點(diǎn),數組里每一個(gè)值代表著(zhù)坐標。所以怎么能獲取一個(gè)固定的坐標,那就只能讓數組包含個(gè)整數,也就是采樣??偨Y起來(lái)就是從像素值的五個(gè)位置取取整數,然后這5個(gè)值組成一個(gè)數組,從這個(gè)數組再取值,然后用這個(gè)值去取整數,組成一個(gè)新的像素。我們用圖來(lái)理解一下,這就像一張大的地圖,你在一個(gè)位置走一次,那就把整張地圖看成一個(gè)點(diǎn),但是我們總是走動(dòng),我們就把一張地圖分成了許多條線(xiàn),就像是遍歷遍歷,分別沿著(zhù)一條路走一次,一條線(xiàn)能走動(dòng)多少個(gè)點(diǎn)就把這些點(diǎn)表示出來(lái)。
  那么總共走了多少步,我們就知道地圖的大致情況了。那么我們再想一下,如果我們在一個(gè)點(diǎn)附近也定一條線(xiàn),在這條線(xiàn)上取一個(gè)值,然后總共取多少條線(xiàn),然后他們就組成了一條線(xiàn)。這樣既然是遍歷遍歷,那就可以不停循環(huán),但是現在我們考慮中間位置。我們在二維空間或者三維空間內,我們可以不斷的遍歷,直到遍歷所有位置,那么這個(gè)數組的每一個(gè)元素對應一個(gè)位置,這條線(xiàn),那么代表了多少條對應位置的路徑就成了一個(gè)點(diǎn)的路徑代表的數據。
  
  那么位置是一個(gè)二維數組,有的像素點(diǎn)包含了多條線(xiàn),那么這個(gè)點(diǎn)的方向就是經(jīng)過(guò)多少條線(xiàn)。至于為什么前面也講過(guò),一個(gè)像素點(diǎn)連續取反取整數,那么這么多個(gè)取整數組成了一個(gè)點(diǎn)的數組,然后用這個(gè)點(diǎn)去取值。其實(shí)數組存取原理就是一個(gè)鍵值對,這個(gè)是用鍵盤(pán)輸入數字組成的數組,比如說(shuō)我們輸入十億個(gè)字符,我們能構建出兩個(gè)數組。不過(guò)如果我們的數量增加,那么這兩個(gè)數組的鍵值對也要擴展到十億,也就是多個(gè)操作。
  所以一個(gè)像素點(diǎn)不用多選,一組像素點(diǎn)最好是存一個(gè),當然這只是理論上的可能,因為操作越多,判斷時(shí)間越長(cháng)。整體思路就是,你在采集數據的時(shí)候,先把每一組用一個(gè)鍵值對記錄下來(lái),然后不斷遍歷直到每個(gè)元素都獲取到,得到最后一組元素,最后把這個(gè)數組里的數據輸出。

解決方案:博學(xué)谷-基于大數據的智慧學(xué)成項目課程

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 142 次瀏覽 ? 2022-11-10 12:26 ? 來(lái)自相關(guān)話(huà)題

  解決方案:博學(xué)谷-基于大數據的智慧學(xué)成項目課程
  博雪谷——基于大數據的智慧學(xué)習項目課程1
  課程介紹(A000474):
  智慧學(xué)習項目是在線(xiàn)教育業(yè)務(wù)大數據統計分析系統。采用企業(yè)級ETL標準化流程和數據倉庫建模思想,根據課程、用戶(hù)等不同維度進(jìn)行數據分析。采用Hadoop和Spark技術(shù)棧開(kāi)發(fā),為數據倉庫、ETL、離線(xiàn)和實(shí)時(shí)分析提供解決方案。
  課程目錄:
  博雪谷——基于大數據的智能學(xué)習項目課程二
  文件目錄:
  博雪谷——基于大數據的智慧學(xué)習項目課程,
  │ └─08. 第 8 階段智慧學(xué)習計劃,
  │ ├─01. 第一章智慧學(xué)習——項目介紹環(huán)境搭建,
  │ │ 01-項目介紹-學(xué)習目標&amp;項目背景及概述_mp4,
  │ │ 02-項目介紹-業(yè)務(wù)流程_mp4,
  │ │ 03-項目介紹-功能模塊_mp4,
  │ │ 04-項目介紹-技術(shù)架構_mp4,
  │ │ 05-環(huán)境建設-學(xué)習目標&amp;CDH組件介紹_mp4,
  │ │ 06-環(huán)境建設-鼎暉環(huán)境建設_mp4,
  │ │ 07-環(huán)境搭建-配置hosts_mp4,
  │ │ 08-環(huán)境建設-配置Maven_mp4,
  │ │ 09-環(huán)境搭建-IDEA環(huán)境配置_mp4,
  │ │ 10-環(huán)境建設-導入Scala基礎工程&amp;基礎工程介紹_mp4,
  │ │ 11-環(huán)境建設-wordcount代碼編寫(xiě)和idea代碼測試_mp4,
  │ │ 12-環(huán)境搭建-wordcount任務(wù)提交集群執行_mp4,
  │ │ 13-Zeppelin簡(jiǎn)介,Zeppelin調制的Spark程序_mp4,
  │ │ 14-Hue介紹,Hue操作hive和hdfs_mp4,
  │ │ 15-數據倉庫-學(xué)習目標,數據倉庫簡(jiǎn)介_(kāi)mp4,
  │ │ 16-數據倉庫-數據倉庫的特點(diǎn)_mp4,
  │ │ 17-數據倉庫-維度分析_mp4,
  │ │ 18-Data Warehouse-Data Warehouse Modeling_mp4,
  │ │ 19-數據倉庫-Hive創(chuàng )建數據倉庫_mp4,
  │ │
  │ ├─02. 第 2 章智慧學(xué)習 - 數據倉庫和 ETL,
  │ │ 01-ETL-學(xué)習目標_mp4,
  │ │ 02-ETL-ETL介紹_mp4,
  │ │ 03-ETL-課程訪(fǎng)問(wèn)需求分析-_mp4,
  │ │ 04-ETL-采集系統介紹_mp4,
  │ │ 05-ETL-采集系統構建_mp4,
  │ │ 06-ETL-采集系統測試采集課程訪(fǎng)問(wèn)_mp4,
  │ │ 07-ETL-NiFi介紹_mp4,
  │ │ 08-ETL-快速入門(mén)_mp4,
  │ │ 09-ETL-維度數據采集-維度介紹-_mp4,
  │ │ 10-ETL-維度數據采集-導入學(xué)城在線(xiàn)業(yè)務(wù)數據_mp4,
  │ │ 11-ETL-維數據采集-導入NiFi源碼并執行采集_mp4,
  │ │ 12-ETL-Dimensional Data采集-Notes-NiFi采集亂碼處理_mp4,
  │ │ 13-ETL-維度數據采集-區域維度原創(chuàng )文件上傳HDFS&amp;spark讀取file_mp4,
  │ │ 14-ETL-維度數據采集-區域維度原創(chuàng )文件數據和實(shí)體映射_mp4,
  │ │ 15-ETL-維度數據采集-區域維度字段關(guān)聯(lián)與區域維度數據storage_mp4,
  │ │ 16-ETL-維度數據采集-區域維度-注釋?zhuān)簑inutils configuration_mp4,
  │ │
  │ ├─03.Chapter 3 智慧學(xué)習-課程分析,
  │ │ ├─1. 數據清洗,
  │ │ │ 01-ETL-數據清洗-課程訪(fǎng)問(wèn)Fact Table Field Introduction&amp;清洗邏輯Introduction_mp4,
  │ │ │ 02-ETL-數據清洗-課程訪(fǎng)問(wèn)清洗-獲取維度數據&amp;原創(chuàng )數據_mp4,
  │ │ │ 03-ETL-數據清洗-課程參觀(guān)清洗-過(guò)濾機器人及相關(guān)維度_mp4,
  │ │ │ 04-ETL-數據清洗-課程走訪(fǎng)清洗-去重&amp;保存到數據倉庫_mp4,
  │ │ │ 05-ETL-數據清洗-課程訪(fǎng)問(wèn)清洗-Test_mp4,
  │ │ │ 06-ETL-數據清洗-課程流量清洗-使用NiFi生產(chǎn)數據和Test_mp4,
  │ │ │ 07-課程分析-學(xué)習目標_mp4,
  │ │ │ 08-課程分析-課程流量分析-功能概述&amp;統計分析Steps_mp4,
  │ │ │ 09-課程分析-課程訪(fǎng)問(wèn)分析-步驟1:閱讀課程訪(fǎng)問(wèn)事實(shí)表Data_mp4,
  │ │ │ 10-課程分析-課程訪(fǎng)問(wèn)分析-步驟2:課程訪(fǎng)問(wèn)統計總和_mp4,
  │ │ │ 11-Course Analysis-Course Visits Analysis-Step 3: Course Visits Statistics Save Data Warehouse_mp4,
  │ │ │ 12-課程分析-課程流量分析-使用NiFi將課程流量分析結果同步到MySQl_mp4,
  │ │ │ 13-Course Analysis-Course Traffic Analysis-Integration Test Overview_mp4,
  │ │ │ 14-課程分析-課程流量分析-集成測試-數據清洗統計分析NiFi Scheduling_mp4,
  │ │ │ 15門(mén)課程分析-課程流量分析-集成測試-聯(lián)動(dòng)(清理、統計分析、同步到業(yè)務(wù)庫)配置和test_mp4,
  
  │ │ │ 16-業(yè)務(wù)報表系統搭建-Web前端說(shuō)明&amp;雅皮說(shuō)明_mp4,
  │ │ │ 17-搭建業(yè)務(wù)報表系統-使用業(yè)務(wù)后臺界面展示業(yè)務(wù)報表_mp4,
  │ │ │
  │ │ ├─2. 課程分析,
  │ │ │ 01-課程分析-課程采購-需求分析_mp4,
  │ │ │ 02-課程分析-課程采購-采集現場(chǎng)與存儲分析_mp4,
  │ │ │ 03-課程分析-課程購買(mǎi)-MySQL采集Notes_mp4,
  │ │ │ 04-課程分析-課程購買(mǎi)-NiFi采集MySQL Configuration_mp4,
  │ │ │ 05-課程分析-課程購買(mǎi)-測試NiFi采集MySQL_mp4,
  │ │ │ 06-課程分析-課程采購-NiFi生產(chǎn)訂單數據保存到MySQL&amp;實(shí)時(shí)處理采集_mp4,
  │ │ │ 07-課程分析-課程采購-數據清洗-DWD(事實(shí)表)結構分析_mp4,
  │ │ │ 08-課程分析-課程購買(mǎi)-數據清洗-用戶(hù)維度采集_mp4,
  │ │ │ 09-課程分析-課程采購-DWD代碼-維度數據采集_mp4,
  │ │ │ 10-課程分析-課程采購-DWD代碼-事實(shí)表數據封裝_mp4,
  │ │ │ 11-課程分析-課程購買(mǎi)-DWD代碼-保存到數據倉庫_mp4,
  │ │ │ 12-課程分析-課程采購-DWD代碼-測試清理存儲_mp4,
  │ │ │ 13-課程分析-課程采購-DWM層結構分析_mp4,
  │ │ │ 14-課程分析-課程采購-DWM代碼-輕聚合包數據_mp4,
  │ │ │ 15-課程分析-課程采購-DWM代碼-保存到數據倉庫&amp;測試存儲_mp4,
  │ │ │ 16-課程分析-課程采購-統計分析_mp4,
  │ │ │ 17-課程分析-課程采購-使用NiFi將業(yè)務(wù)數據從數據倉庫同步到MySQL_mp4,
  │ │ │ 18-Course Analysis-Course Purchases-Integration Testing-Overview &amp; NiFi Scheduling Data Cleaning Analysis Task_mp4,
  │ │ │ 19-課程分析-課程采購-集成測試-聯(lián)動(dòng)配置&amp;全過(guò)程測試_mp4,
  │ │ │
  │ │ └─3.熱門(mén)學(xué)科排名,
  │ │ 01-熱門(mén)學(xué)科排名-需求分析_mp4,
  │ │ 02-熱門(mén)學(xué)科排名-業(yè)務(wù)報表系統領(lǐng)域分析_mp4,
  │ │ 03-熱門(mén)學(xué)科排名-采集領(lǐng)域與存儲分析_mp4,
  │ │ 04-熱門(mén)學(xué)科排名-NiFi采集用戶(hù)選課數據&amp;Test_mp4,
  │ │ 05-熱門(mén)學(xué)科排行榜-NiFi制作用戶(hù)選課數據保存到MySQL&amp;實(shí)時(shí)采集_mp4,
  │ │ 06-熱門(mén)學(xué)科排名-用戶(hù)選課DWD層字段描述&amp;清洗分析_mp4,
  │ │ 07-熱門(mén)學(xué)科排名-用戶(hù)選課-DWD代碼-獲取維度數據&amp;用戶(hù)選課原創(chuàng )數據_mp4,
  │ │ 08-熱門(mén)學(xué)科排名-用戶(hù)選課-DWD代碼-事實(shí)表數據封裝&amp;保存到數據倉庫_mp4,
  │ │ 09-熱門(mén)學(xué)科排名-用戶(hù)選課-DWD代碼-測試清理存儲_mp4,
  │ │ 10-Top Subject Ranking-統計分析概述&amp;課程分類(lèi)維度采集_mp4,
  │ │ 11-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售-周數-統計分析Steps_mp4,
  │ │ 12-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售-周-代碼-獲取每周日期_mp4,
  │ │ 13-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售-周數-編碼-按日期獲取數據并計算增加_mp4,
  │ │ 14-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售-周-代碼-維度關(guān)聯(lián)&amp;保存到數據倉庫_mp4,
  │ │ 15-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售周-代碼-提取工具&amp;測試存儲_mp4,
  │ │ 16-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)量-月份-統計分析步驟和代碼編寫(xiě)_mp4,
  │ │ 17-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售-月-測試存儲_mp4,
  │ │ 18-熱門(mén)學(xué)科排名-統計分析-學(xué)生人數-周數-統計分析步驟_mp4,
  │ │ 19-熱門(mén)學(xué)科排名-統計分析-學(xué)生人數-周數-代碼-獲取周區間&amp;獲取數據&amp;計算增加_mp4,
  │ │ 20-熱門(mén)學(xué)科排名-統計分析-學(xué)生人數-周-代碼-維度關(guān)聯(lián)&amp;保存到數據倉庫_mp4,
  │ │ 21-熱門(mén)學(xué)科排名-統計分析-學(xué)生人數-周數-代碼-提取工具&amp;試題存儲_mp4,
  │ │ 22-熱門(mén)學(xué)科排名-統計分析-學(xué)生人數-月-統計分析步驟&amp;代碼編寫(xiě)_mp4,
  │ │ 23-熱門(mén)學(xué)科排名-統計分析-學(xué)生人數-月-考試存儲_mp4,
  │ │ 24-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售-周-統計分析步驟&amp;代碼編寫(xiě)_mp4,
  │ │ 25-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售-周-測試存儲_mp4,
  │ │ 26-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)量-月份-統計分析步驟&amp;代碼編寫(xiě)_mp4,
  │ │ 27-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售-月-測試存儲_mp4,
  │ │ 28-Top Subject Ranking-統計分析-使用NiFi將業(yè)務(wù)數據從Data Warehouse同步到MySQL_mp4,
  │ │ 29-熱門(mén)學(xué)科排名-集成測試-配置NiFi調度數據清洗和分析任務(wù)_mp4,
  │ │ 30-熱門(mén)學(xué)科排名-綜合測試-測試NiFi調度數據清洗分析_mp4,
  │ │ 31-熱門(mén)學(xué)科排名-綜合測試-聯(lián)動(dòng)配置&amp;測試_mp4,
  │ │ 32-熱門(mén)學(xué)科排名-綜合測試-報告系統網(wǎng)頁(yè)展示_mp4,
  │ │
  │ ├─04. 第 4 章智慧學(xué)習 - 平板電腦支架,
  │ │ 01-實(shí)時(shí)分析-學(xué)習目標_mp4,
  │ │ 02-實(shí)時(shí)分析-平臺看板需求分析&amp;實(shí)時(shí)分析應用場(chǎng)景_mp4,
  │ │ 03-實(shí)時(shí)分析-實(shí)時(shí)分析技術(shù)方案_mp4,
  │ │ 04-實(shí)時(shí)分析-索引和維度分析&amp;數據存儲分析_mp4,
  │ │ 05-實(shí)時(shí)分析-今日訪(fǎng)問(wèn)量-概覽&amp;數據采集_mp4,
  │ │ 06-實(shí)時(shí)分析-今日訪(fǎng)問(wèn)量-統計分析邏輯_mp4,
  │ │ 07-實(shí)時(shí)分析-今天的流量-代碼-redis獲取kafka的offset_mp4,
  
  │ │ 08-實(shí)時(shí)分析-今日流量-代碼-SparkStreaming獲取kafka_mp4中的數據,
  │ │ 09-實(shí)時(shí)分析-今日流量-代碼-重新計算實(shí)時(shí)流量&amp;保存redis_mp4,
  │ │ 10-實(shí)時(shí)分析-今天的流量-代碼-將當前偏移進(jìn)度保存在redis_mp4中,
  │ │ 11-實(shí)時(shí)分析-今日流量-代碼-test_mp4,
  │ │ 12-實(shí)時(shí)分析-今日走訪(fǎng)-NiFi生產(chǎn)數據&amp;Test_mp4,
  │ │ 13-實(shí)時(shí)分析-新用戶(hù)-概覽&amp;數據采集_mp4,
  │ │ 14-實(shí)時(shí)分析-新用戶(hù)-統計分析邏輯_mp4,
  │ │ 15-實(shí)時(shí)分析-新用戶(hù)-代碼-新用戶(hù)實(shí)時(shí)計算_mp4,
  │ │ 16-實(shí)時(shí)分析-新用戶(hù)-code-test_mp4,
  │ │ 17-實(shí)時(shí)分析-新用戶(hù)-NiFi Production Data&amp;Test_mp4,
  │ │ 18-實(shí)時(shí)分析-今日采購-概覽&amp;數據采集_mp4,
  │ │ 19-實(shí)時(shí)分析-今日采購-統計分析邏輯&amp;代碼_mp4,
  │ │ 20-實(shí)時(shí)分析-今日采購-代碼-Test_mp4,
  │ │ 21-實(shí)時(shí)分析-今日采購-NiFi生產(chǎn)數據&amp;Test_mp4,
  │ │ 22-實(shí)時(shí)分析-集成測試-NiFi調度配置_mp4,
  │ │ 23-實(shí)時(shí)分析-集成測試-test&amp;web display_mp4,
  │ │
  │ ├─05.Chapter 5 Wisdom Learning-Instant Query,
  │ │ 01 Instant Query-Learning Objective_mp4,
  │ │ 02 即時(shí)查詢(xún)-需求分析與技術(shù)解決方案_mp4,
  │ │ 03 即時(shí)查詢(xún)-技術(shù)方案-代碼演示-保存-Code_mp4,
  │ │ 04 即時(shí)查詢(xún)-技術(shù)方案-代碼演示-保存-Test_mp4,
  │ │ 05 即時(shí)查詢(xún)-技術(shù)方案-代碼演示-查詢(xún)-代碼&amp;Test_mp4,
  │ │ 06 即時(shí)查詢(xún)-采集分析與存儲分析_mp4,
  │ │ 07 即時(shí)查詢(xún)-數據采集-用戶(hù)學(xué)習采集_mp4,
  │ │ 08 即時(shí)查詢(xún)-資料采集-課程視頻維度采集_mp4,
  │ │ 09 Instant Query - 統計分析 - Overview &amp; Step 1 Statistical Logic &amp; Intermediate Table Introduction_mp4,
  │ │ 10 Instant Query - Statistical Analysis - Step 1: Code - Get Raw Data _mp4,
  │ │ 11 即時(shí)查詢(xún)-統計分析-第1步:代碼-注冊udf函數_mp4,
  │ │ 12 Instant Query-Statistical Analysis-Step 1:代碼關(guān)聯(lián)相關(guān)維度&amp;統計學(xué)習時(shí)長(cháng)_mp4,
  │ │ 13 即時(shí)查詢(xún)-統計分析-第1步:代碼-測試_mp4,
  │ │ 14 Instant Query - 統計分析 - Step 2: Overview_mp4,
  │ │ 15 即時(shí)查詢(xún)-統計分析-第2步:代碼_mp4,
  │ │ 16 即時(shí)查詢(xún) - 統計分析 - 第 2 步:Test_mp4,
  │ │ 17 Instant Query - 統計分析 - hbase_mp4使用注意事項,
  │ │ 18即時(shí)查詢(xún)-統計分析-NiFi生產(chǎn)數據-Configuration_mp4,
  │ │ 19 即時(shí)查詢(xún)-統計分析-NiFi生產(chǎn)數據-測試&amp;代碼Test_mp4,
  │ │ 20 Instant Query-Integration Test-Configuration_mp4,
  │ │ 21 Instant Query - Integration Test - Test &amp; Web Display_mp4,
  │ │
  │ ├─06. 第6章智慧學(xué)習-系統集成測試,
  │ │ 01 系統集成測試 - 學(xué)習目標和概述_mp4,
  │ │ 02 系統集成測試-代碼重新打包-代碼修改_mp4,
  │ │ 03 系統集成測試-代碼重新打包-上傳NiFi container_mp4,
  │ │ 04系統集成測試-NiFi采集-清洗-統計分析-概述&amp;清洗業(yè)務(wù)數據_mp4,
  │ │ 05系統集成測試-NiFi采集-清洗-統計分析-即時(shí)查詢(xún)_mp4,
  │ │ 06系統集成測試-NiFi采集-清洗-統計分析-離線(xiàn)分析-課程訪(fǎng)問(wèn)_mp4,
  │ │ 07系統集成測試-NiFi采集-清洗-統計分析-離線(xiàn)分析-課程采購_mp4,
  │ │ 08系統集成測試-NiFi采集-清理-統計分析-離線(xiàn)分析-熱門(mén)學(xué)科排名_mp4,
  │ │ 09系統集成測試-NiFi采集-清洗-統計分析-實(shí)時(shí)分析_mp4,
  │ │ 10 系統集成測試-NiFi采集-清洗-統計分析-Web Display_mp4,
  │ │
  │ └─07. 第七章智慧學(xué)習——項目就業(yè)指導,
  │ 01項目就業(yè)指導-就業(yè)指導概述&amp;項目功能模塊_mp4,
  │ 02 項目就業(yè)指導-技術(shù)架構&amp;技術(shù)棧-1_mp4,
  │ 03 項目就業(yè)指導-技術(shù)架構&amp;技術(shù)棧-2_mp4,
  │ 04 項目就業(yè)指導——數據倉庫是如何設計的?_mp4,
  │ 05 項目就業(yè)指導——數據采集是如何實(shí)現的?_mp4,
  │ 06 項目職業(yè)指導 - ETL如何運作?_mp4,
  │ 07 項目就業(yè)指導——線(xiàn)下分析如何實(shí)施?_mp4,
  │ 08 項目用工指導——同比分析在項目中的應用?_mp4,
  │ 09 項目就業(yè)指導——實(shí)時(shí)分析是如何做的?_mp4,
  │ 10 項目就業(yè)指導——如何從海量數據中查詢(xún)到想要的數據?_mp4,
  │ 11 項目就業(yè)指導——項目中的任務(wù)調度是如何進(jìn)行的?_mp4,
  解決方案:多用戶(hù)自助建站-巔云V8門(mén)戶(hù)自助建站系統可以說(shuō)是目前優(yōu)秀的建站平臺軟件了
  我們強調:點(diǎn)云是工廠(chǎng)式自助建站平臺軟件(功能大集合——自配置功能,預制工廠(chǎng)),不是網(wǎng)站模板,也不是模板(模板也是一種保存的排版結果),可以說(shuō)模板在點(diǎn)云系統中一文不值。
  目的:幫助正在開(kāi)發(fā)網(wǎng)站的網(wǎng)絡(luò )公司或個(gè)人創(chuàng )業(yè)者搭建自助網(wǎng)站服務(wù)平臺。解決技術(shù)壁壘,提高業(yè)務(wù)效率,降低業(yè)務(wù)成本。
  用戶(hù)訪(fǎng)問(wèn)您的平臺-注冊成為會(huì )員-自助開(kāi)通網(wǎng)站-綁定域名-會(huì )員自助視覺(jué)拼圖設計您自己的網(wǎng)站-續費-升級您是頂級網(wǎng)站建設者
  點(diǎn)云門(mén)戶(hù)站搭建系統V8.0 功能介紹:采用TP6+VUE+js+layui+css+html5+nginx+php8等開(kāi)源框架開(kāi)發(fā),不僅支持可視化拖拽生產(chǎn)企業(yè)網(wǎng)站,同時(shí)還集成了多用戶(hù)商城、論壇、視頻、分類(lèi)信息等網(wǎng)站等常用模塊,還集成了網(wǎng)站業(yè)務(wù)發(fā)展所需的域名注冊功能和網(wǎng)站開(kāi)通功能。
  技術(shù)實(shí)現
  1、自助建站平臺的功能包括建站包產(chǎn)品的建立、建站模板的管理、西數域名系統等,可以輕松開(kāi)展建站業(yè)務(wù)。
  2. 文章管理信息分類(lèi)、權限配置、單頁(yè)、新聞列表、友情鏈接、文章采集
  3.商品管理系統商品參數、商品品牌、權限配置、商品列表、商品類(lèi)型、商品分類(lèi)、商品回收站、CVS導入
  
  4.前端可視化欄目管理、文件管理庫、可視化系統、區域設置、語(yǔ)言設置、HTML自定義自定義表單、tinymce編輯器、HTML模板、表單生成器
  5.微站小程序模板消息、關(guān)鍵詞回復、粉絲列表、自定義菜單、圖文消息、群消息、公眾號、小程序、小程序下載、訂閱消息、小程序代碼
  6.賬號站點(diǎn)賬號權限、平臺管理、財務(wù)管理、會(huì )員管理、登錄日志、用戶(hù)組權限管理、財務(wù)記錄、支付記錄、權限規則、會(huì )員列表、會(huì )員留言、評論管理、通知留言、會(huì )員組
  7.產(chǎn)品促銷(xiāo)功能 拍賣(mài)活動(dòng)、議價(jià)活動(dòng)、秒殺活動(dòng)、團體活動(dòng)、積分系統、傭金管理、優(yōu)惠券、抽獎活動(dòng)
  8、訂單管理訂單數據、訂單清單、發(fā)票管理、退貨處理
  9.系統配置標簽設置、系統設置、安全密碼修改、密碼修改、上傳設置、數據維護、清除緩存、前臺搜索
  10.擴展功能投票系統、任務(wù)規劃、地圖導航、物流配送、票據打印機、短信通知、郵件系統、支付設置、快速登錄、客服系統、廣告系統。
  11.門(mén)戶(hù)功能組件:文集小說(shuō)、問(wèn)答系統、視頻系統、論壇系統、圖庫系統、音頻系統、分類(lèi)信息(信息列表、組件配置、信息分類(lèi)、信息報告、信息獎勵、評論列表、信息采集) 、下載系統等
  
  12.系統升級機制
  軟件安裝
  1.服務(wù)器:云服務(wù)器,linux最好或windows
  2、安裝環(huán)境:php8+mysql5.7+Nginx
  3.上傳源代碼并運行你的域名.com/install進(jìn)行安裝。
  4. 建立數據庫,管理賬戶(hù)信息,按照提示進(jìn)行安裝。
  2.專(zhuān)業(yè)大師級秒殺廠(chǎng)商的排版功能。 查看全部

  解決方案:博學(xué)谷-基于大數據的智慧學(xué)成項目課程
  博雪谷——基于大數據的智慧學(xué)習項目課程1
  課程介紹(A000474):
  智慧學(xué)習項目是在線(xiàn)教育業(yè)務(wù)大數據統計分析系統。采用企業(yè)級ETL標準化流程和數據倉庫建模思想,根據課程、用戶(hù)等不同維度進(jìn)行數據分析。采用Hadoop和Spark技術(shù)棧開(kāi)發(fā),為數據倉庫、ETL、離線(xiàn)和實(shí)時(shí)分析提供解決方案。
  課程目錄:
  博雪谷——基于大數據的智能學(xué)習項目課程二
  文件目錄:
  博雪谷——基于大數據的智慧學(xué)習項目課程,
  │ └─08. 第 8 階段智慧學(xué)習計劃,
  │ ├─01. 第一章智慧學(xué)習——項目介紹環(huán)境搭建,
  │ │ 01-項目介紹-學(xué)習目標&amp;項目背景及概述_mp4,
  │ │ 02-項目介紹-業(yè)務(wù)流程_mp4,
  │ │ 03-項目介紹-功能模塊_mp4,
  │ │ 04-項目介紹-技術(shù)架構_mp4,
  │ │ 05-環(huán)境建設-學(xué)習目標&amp;CDH組件介紹_mp4,
  │ │ 06-環(huán)境建設-鼎暉環(huán)境建設_mp4,
  │ │ 07-環(huán)境搭建-配置hosts_mp4,
  │ │ 08-環(huán)境建設-配置Maven_mp4,
  │ │ 09-環(huán)境搭建-IDEA環(huán)境配置_mp4,
  │ │ 10-環(huán)境建設-導入Scala基礎工程&amp;基礎工程介紹_mp4,
  │ │ 11-環(huán)境建設-wordcount代碼編寫(xiě)和idea代碼測試_mp4,
  │ │ 12-環(huán)境搭建-wordcount任務(wù)提交集群執行_mp4,
  │ │ 13-Zeppelin簡(jiǎn)介,Zeppelin調制的Spark程序_mp4,
  │ │ 14-Hue介紹,Hue操作hive和hdfs_mp4,
  │ │ 15-數據倉庫-學(xué)習目標,數據倉庫簡(jiǎn)介_(kāi)mp4,
  │ │ 16-數據倉庫-數據倉庫的特點(diǎn)_mp4,
  │ │ 17-數據倉庫-維度分析_mp4,
  │ │ 18-Data Warehouse-Data Warehouse Modeling_mp4,
  │ │ 19-數據倉庫-Hive創(chuàng )建數據倉庫_mp4,
  │ │
  │ ├─02. 第 2 章智慧學(xué)習 - 數據倉庫和 ETL,
  │ │ 01-ETL-學(xué)習目標_mp4,
  │ │ 02-ETL-ETL介紹_mp4,
  │ │ 03-ETL-課程訪(fǎng)問(wèn)需求分析-_mp4,
  │ │ 04-ETL-采集系統介紹_mp4,
  │ │ 05-ETL-采集系統構建_mp4,
  │ │ 06-ETL-采集系統測試采集課程訪(fǎng)問(wèn)_mp4,
  │ │ 07-ETL-NiFi介紹_mp4,
  │ │ 08-ETL-快速入門(mén)_mp4,
  │ │ 09-ETL-維度數據采集-維度介紹-_mp4,
  │ │ 10-ETL-維度數據采集-導入學(xué)城在線(xiàn)業(yè)務(wù)數據_mp4,
  │ │ 11-ETL-維數據采集-導入NiFi源碼并執行采集_mp4,
  │ │ 12-ETL-Dimensional Data采集-Notes-NiFi采集亂碼處理_mp4,
  │ │ 13-ETL-維度數據采集-區域維度原創(chuàng )文件上傳HDFS&amp;spark讀取file_mp4,
  │ │ 14-ETL-維度數據采集-區域維度原創(chuàng )文件數據和實(shí)體映射_mp4,
  │ │ 15-ETL-維度數據采集-區域維度字段關(guān)聯(lián)與區域維度數據storage_mp4,
  │ │ 16-ETL-維度數據采集-區域維度-注釋?zhuān)簑inutils configuration_mp4,
  │ │
  │ ├─03.Chapter 3 智慧學(xué)習-課程分析,
  │ │ ├─1. 數據清洗,
  │ │ │ 01-ETL-數據清洗-課程訪(fǎng)問(wèn)Fact Table Field Introduction&amp;清洗邏輯Introduction_mp4,
  │ │ │ 02-ETL-數據清洗-課程訪(fǎng)問(wèn)清洗-獲取維度數據&amp;原創(chuàng )數據_mp4,
  │ │ │ 03-ETL-數據清洗-課程參觀(guān)清洗-過(guò)濾機器人及相關(guān)維度_mp4,
  │ │ │ 04-ETL-數據清洗-課程走訪(fǎng)清洗-去重&amp;保存到數據倉庫_mp4,
  │ │ │ 05-ETL-數據清洗-課程訪(fǎng)問(wèn)清洗-Test_mp4,
  │ │ │ 06-ETL-數據清洗-課程流量清洗-使用NiFi生產(chǎn)數據和Test_mp4,
  │ │ │ 07-課程分析-學(xué)習目標_mp4,
  │ │ │ 08-課程分析-課程流量分析-功能概述&amp;統計分析Steps_mp4,
  │ │ │ 09-課程分析-課程訪(fǎng)問(wèn)分析-步驟1:閱讀課程訪(fǎng)問(wèn)事實(shí)表Data_mp4,
  │ │ │ 10-課程分析-課程訪(fǎng)問(wèn)分析-步驟2:課程訪(fǎng)問(wèn)統計總和_mp4,
  │ │ │ 11-Course Analysis-Course Visits Analysis-Step 3: Course Visits Statistics Save Data Warehouse_mp4,
  │ │ │ 12-課程分析-課程流量分析-使用NiFi將課程流量分析結果同步到MySQl_mp4,
  │ │ │ 13-Course Analysis-Course Traffic Analysis-Integration Test Overview_mp4,
  │ │ │ 14-課程分析-課程流量分析-集成測試-數據清洗統計分析NiFi Scheduling_mp4,
  │ │ │ 15門(mén)課程分析-課程流量分析-集成測試-聯(lián)動(dòng)(清理、統計分析、同步到業(yè)務(wù)庫)配置和test_mp4,
  
  │ │ │ 16-業(yè)務(wù)報表系統搭建-Web前端說(shuō)明&amp;雅皮說(shuō)明_mp4,
  │ │ │ 17-搭建業(yè)務(wù)報表系統-使用業(yè)務(wù)后臺界面展示業(yè)務(wù)報表_mp4,
  │ │ │
  │ │ ├─2. 課程分析,
  │ │ │ 01-課程分析-課程采購-需求分析_mp4,
  │ │ │ 02-課程分析-課程采購-采集現場(chǎng)與存儲分析_mp4,
  │ │ │ 03-課程分析-課程購買(mǎi)-MySQL采集Notes_mp4,
  │ │ │ 04-課程分析-課程購買(mǎi)-NiFi采集MySQL Configuration_mp4,
  │ │ │ 05-課程分析-課程購買(mǎi)-測試NiFi采集MySQL_mp4,
  │ │ │ 06-課程分析-課程采購-NiFi生產(chǎn)訂單數據保存到MySQL&amp;實(shí)時(shí)處理采集_mp4,
  │ │ │ 07-課程分析-課程采購-數據清洗-DWD(事實(shí)表)結構分析_mp4,
  │ │ │ 08-課程分析-課程購買(mǎi)-數據清洗-用戶(hù)維度采集_mp4,
  │ │ │ 09-課程分析-課程采購-DWD代碼-維度數據采集_mp4,
  │ │ │ 10-課程分析-課程采購-DWD代碼-事實(shí)表數據封裝_mp4,
  │ │ │ 11-課程分析-課程購買(mǎi)-DWD代碼-保存到數據倉庫_mp4,
  │ │ │ 12-課程分析-課程采購-DWD代碼-測試清理存儲_mp4,
  │ │ │ 13-課程分析-課程采購-DWM層結構分析_mp4,
  │ │ │ 14-課程分析-課程采購-DWM代碼-輕聚合包數據_mp4,
  │ │ │ 15-課程分析-課程采購-DWM代碼-保存到數據倉庫&amp;測試存儲_mp4,
  │ │ │ 16-課程分析-課程采購-統計分析_mp4,
  │ │ │ 17-課程分析-課程采購-使用NiFi將業(yè)務(wù)數據從數據倉庫同步到MySQL_mp4,
  │ │ │ 18-Course Analysis-Course Purchases-Integration Testing-Overview &amp; NiFi Scheduling Data Cleaning Analysis Task_mp4,
  │ │ │ 19-課程分析-課程采購-集成測試-聯(lián)動(dòng)配置&amp;全過(guò)程測試_mp4,
  │ │ │
  │ │ └─3.熱門(mén)學(xué)科排名,
  │ │ 01-熱門(mén)學(xué)科排名-需求分析_mp4,
  │ │ 02-熱門(mén)學(xué)科排名-業(yè)務(wù)報表系統領(lǐng)域分析_mp4,
  │ │ 03-熱門(mén)學(xué)科排名-采集領(lǐng)域與存儲分析_mp4,
  │ │ 04-熱門(mén)學(xué)科排名-NiFi采集用戶(hù)選課數據&amp;Test_mp4,
  │ │ 05-熱門(mén)學(xué)科排行榜-NiFi制作用戶(hù)選課數據保存到MySQL&amp;實(shí)時(shí)采集_mp4,
  │ │ 06-熱門(mén)學(xué)科排名-用戶(hù)選課DWD層字段描述&amp;清洗分析_mp4,
  │ │ 07-熱門(mén)學(xué)科排名-用戶(hù)選課-DWD代碼-獲取維度數據&amp;用戶(hù)選課原創(chuàng )數據_mp4,
  │ │ 08-熱門(mén)學(xué)科排名-用戶(hù)選課-DWD代碼-事實(shí)表數據封裝&amp;保存到數據倉庫_mp4,
  │ │ 09-熱門(mén)學(xué)科排名-用戶(hù)選課-DWD代碼-測試清理存儲_mp4,
  │ │ 10-Top Subject Ranking-統計分析概述&amp;課程分類(lèi)維度采集_mp4,
  │ │ 11-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售-周數-統計分析Steps_mp4,
  │ │ 12-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售-周-代碼-獲取每周日期_mp4,
  │ │ 13-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售-周數-編碼-按日期獲取數據并計算增加_mp4,
  │ │ 14-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售-周-代碼-維度關(guān)聯(lián)&amp;保存到數據倉庫_mp4,
  │ │ 15-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售周-代碼-提取工具&amp;測試存儲_mp4,
  │ │ 16-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)量-月份-統計分析步驟和代碼編寫(xiě)_mp4,
  │ │ 17-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售-月-測試存儲_mp4,
  │ │ 18-熱門(mén)學(xué)科排名-統計分析-學(xué)生人數-周數-統計分析步驟_mp4,
  │ │ 19-熱門(mén)學(xué)科排名-統計分析-學(xué)生人數-周數-代碼-獲取周區間&amp;獲取數據&amp;計算增加_mp4,
  │ │ 20-熱門(mén)學(xué)科排名-統計分析-學(xué)生人數-周-代碼-維度關(guān)聯(lián)&amp;保存到數據倉庫_mp4,
  │ │ 21-熱門(mén)學(xué)科排名-統計分析-學(xué)生人數-周數-代碼-提取工具&amp;試題存儲_mp4,
  │ │ 22-熱門(mén)學(xué)科排名-統計分析-學(xué)生人數-月-統計分析步驟&amp;代碼編寫(xiě)_mp4,
  │ │ 23-熱門(mén)學(xué)科排名-統計分析-學(xué)生人數-月-考試存儲_mp4,
  │ │ 24-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售-周-統計分析步驟&amp;代碼編寫(xiě)_mp4,
  │ │ 25-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售-周-測試存儲_mp4,
  │ │ 26-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)量-月份-統計分析步驟&amp;代碼編寫(xiě)_mp4,
  │ │ 27-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售-月-測試存儲_mp4,
  │ │ 28-Top Subject Ranking-統計分析-使用NiFi將業(yè)務(wù)數據從Data Warehouse同步到MySQL_mp4,
  │ │ 29-熱門(mén)學(xué)科排名-集成測試-配置NiFi調度數據清洗和分析任務(wù)_mp4,
  │ │ 30-熱門(mén)學(xué)科排名-綜合測試-測試NiFi調度數據清洗分析_mp4,
  │ │ 31-熱門(mén)學(xué)科排名-綜合測試-聯(lián)動(dòng)配置&amp;測試_mp4,
  │ │ 32-熱門(mén)學(xué)科排名-綜合測試-報告系統網(wǎng)頁(yè)展示_mp4,
  │ │
  │ ├─04. 第 4 章智慧學(xué)習 - 平板電腦支架,
  │ │ 01-實(shí)時(shí)分析-學(xué)習目標_mp4,
  │ │ 02-實(shí)時(shí)分析-平臺看板需求分析&amp;實(shí)時(shí)分析應用場(chǎng)景_mp4,
  │ │ 03-實(shí)時(shí)分析-實(shí)時(shí)分析技術(shù)方案_mp4,
  │ │ 04-實(shí)時(shí)分析-索引和維度分析&amp;數據存儲分析_mp4,
  │ │ 05-實(shí)時(shí)分析-今日訪(fǎng)問(wèn)量-概覽&amp;數據采集_mp4,
  │ │ 06-實(shí)時(shí)分析-今日訪(fǎng)問(wèn)量-統計分析邏輯_mp4,
  │ │ 07-實(shí)時(shí)分析-今天的流量-代碼-redis獲取kafka的offset_mp4,
  
  │ │ 08-實(shí)時(shí)分析-今日流量-代碼-SparkStreaming獲取kafka_mp4中的數據,
  │ │ 09-實(shí)時(shí)分析-今日流量-代碼-重新計算實(shí)時(shí)流量&amp;保存redis_mp4,
  │ │ 10-實(shí)時(shí)分析-今天的流量-代碼-將當前偏移進(jìn)度保存在redis_mp4中,
  │ │ 11-實(shí)時(shí)分析-今日流量-代碼-test_mp4,
  │ │ 12-實(shí)時(shí)分析-今日走訪(fǎng)-NiFi生產(chǎn)數據&amp;Test_mp4,
  │ │ 13-實(shí)時(shí)分析-新用戶(hù)-概覽&amp;數據采集_mp4,
  │ │ 14-實(shí)時(shí)分析-新用戶(hù)-統計分析邏輯_mp4,
  │ │ 15-實(shí)時(shí)分析-新用戶(hù)-代碼-新用戶(hù)實(shí)時(shí)計算_mp4,
  │ │ 16-實(shí)時(shí)分析-新用戶(hù)-code-test_mp4,
  │ │ 17-實(shí)時(shí)分析-新用戶(hù)-NiFi Production Data&amp;Test_mp4,
  │ │ 18-實(shí)時(shí)分析-今日采購-概覽&amp;數據采集_mp4,
  │ │ 19-實(shí)時(shí)分析-今日采購-統計分析邏輯&amp;代碼_mp4,
  │ │ 20-實(shí)時(shí)分析-今日采購-代碼-Test_mp4,
  │ │ 21-實(shí)時(shí)分析-今日采購-NiFi生產(chǎn)數據&amp;Test_mp4,
  │ │ 22-實(shí)時(shí)分析-集成測試-NiFi調度配置_mp4,
  │ │ 23-實(shí)時(shí)分析-集成測試-test&amp;web display_mp4,
  │ │
  │ ├─05.Chapter 5 Wisdom Learning-Instant Query,
  │ │ 01 Instant Query-Learning Objective_mp4,
  │ │ 02 即時(shí)查詢(xún)-需求分析與技術(shù)解決方案_mp4,
  │ │ 03 即時(shí)查詢(xún)-技術(shù)方案-代碼演示-保存-Code_mp4,
  │ │ 04 即時(shí)查詢(xún)-技術(shù)方案-代碼演示-保存-Test_mp4,
  │ │ 05 即時(shí)查詢(xún)-技術(shù)方案-代碼演示-查詢(xún)-代碼&amp;Test_mp4,
  │ │ 06 即時(shí)查詢(xún)-采集分析與存儲分析_mp4,
  │ │ 07 即時(shí)查詢(xún)-數據采集-用戶(hù)學(xué)習采集_mp4,
  │ │ 08 即時(shí)查詢(xún)-資料采集-課程視頻維度采集_mp4,
  │ │ 09 Instant Query - 統計分析 - Overview &amp; Step 1 Statistical Logic &amp; Intermediate Table Introduction_mp4,
  │ │ 10 Instant Query - Statistical Analysis - Step 1: Code - Get Raw Data _mp4,
  │ │ 11 即時(shí)查詢(xún)-統計分析-第1步:代碼-注冊udf函數_mp4,
  │ │ 12 Instant Query-Statistical Analysis-Step 1:代碼關(guān)聯(lián)相關(guān)維度&amp;統計學(xué)習時(shí)長(cháng)_mp4,
  │ │ 13 即時(shí)查詢(xún)-統計分析-第1步:代碼-測試_mp4,
  │ │ 14 Instant Query - 統計分析 - Step 2: Overview_mp4,
  │ │ 15 即時(shí)查詢(xún)-統計分析-第2步:代碼_mp4,
  │ │ 16 即時(shí)查詢(xún) - 統計分析 - 第 2 步:Test_mp4,
  │ │ 17 Instant Query - 統計分析 - hbase_mp4使用注意事項,
  │ │ 18即時(shí)查詢(xún)-統計分析-NiFi生產(chǎn)數據-Configuration_mp4,
  │ │ 19 即時(shí)查詢(xún)-統計分析-NiFi生產(chǎn)數據-測試&amp;代碼Test_mp4,
  │ │ 20 Instant Query-Integration Test-Configuration_mp4,
  │ │ 21 Instant Query - Integration Test - Test &amp; Web Display_mp4,
  │ │
  │ ├─06. 第6章智慧學(xué)習-系統集成測試,
  │ │ 01 系統集成測試 - 學(xué)習目標和概述_mp4,
  │ │ 02 系統集成測試-代碼重新打包-代碼修改_mp4,
  │ │ 03 系統集成測試-代碼重新打包-上傳NiFi container_mp4,
  │ │ 04系統集成測試-NiFi采集-清洗-統計分析-概述&amp;清洗業(yè)務(wù)數據_mp4,
  │ │ 05系統集成測試-NiFi采集-清洗-統計分析-即時(shí)查詢(xún)_mp4,
  │ │ 06系統集成測試-NiFi采集-清洗-統計分析-離線(xiàn)分析-課程訪(fǎng)問(wèn)_mp4,
  │ │ 07系統集成測試-NiFi采集-清洗-統計分析-離線(xiàn)分析-課程采購_mp4,
  │ │ 08系統集成測試-NiFi采集-清理-統計分析-離線(xiàn)分析-熱門(mén)學(xué)科排名_mp4,
  │ │ 09系統集成測試-NiFi采集-清洗-統計分析-實(shí)時(shí)分析_mp4,
  │ │ 10 系統集成測試-NiFi采集-清洗-統計分析-Web Display_mp4,
  │ │
  │ └─07. 第七章智慧學(xué)習——項目就業(yè)指導,
  │ 01項目就業(yè)指導-就業(yè)指導概述&amp;項目功能模塊_mp4,
  │ 02 項目就業(yè)指導-技術(shù)架構&amp;技術(shù)棧-1_mp4,
  │ 03 項目就業(yè)指導-技術(shù)架構&amp;技術(shù)棧-2_mp4,
  │ 04 項目就業(yè)指導——數據倉庫是如何設計的?_mp4,
  │ 05 項目就業(yè)指導——數據采集是如何實(shí)現的?_mp4,
  │ 06 項目職業(yè)指導 - ETL如何運作?_mp4,
  │ 07 項目就業(yè)指導——線(xiàn)下分析如何實(shí)施?_mp4,
  │ 08 項目用工指導——同比分析在項目中的應用?_mp4,
  │ 09 項目就業(yè)指導——實(shí)時(shí)分析是如何做的?_mp4,
  │ 10 項目就業(yè)指導——如何從海量數據中查詢(xún)到想要的數據?_mp4,
  │ 11 項目就業(yè)指導——項目中的任務(wù)調度是如何進(jìn)行的?_mp4,
  解決方案:多用戶(hù)自助建站-巔云V8門(mén)戶(hù)自助建站系統可以說(shuō)是目前優(yōu)秀的建站平臺軟件了
  我們強調:點(diǎn)云是工廠(chǎng)式自助建站平臺軟件(功能大集合——自配置功能,預制工廠(chǎng)),不是網(wǎng)站模板,也不是模板(模板也是一種保存的排版結果),可以說(shuō)模板在點(diǎn)云系統中一文不值。
  目的:幫助正在開(kāi)發(fā)網(wǎng)站的網(wǎng)絡(luò )公司或個(gè)人創(chuàng )業(yè)者搭建自助網(wǎng)站服務(wù)平臺。解決技術(shù)壁壘,提高業(yè)務(wù)效率,降低業(yè)務(wù)成本。
  用戶(hù)訪(fǎng)問(wèn)您的平臺-注冊成為會(huì )員-自助開(kāi)通網(wǎng)站-綁定域名-會(huì )員自助視覺(jué)拼圖設計您自己的網(wǎng)站-續費-升級您是頂級網(wǎng)站建設者
  點(diǎn)云門(mén)戶(hù)站搭建系統V8.0 功能介紹:采用TP6+VUE+js+layui+css+html5+nginx+php8等開(kāi)源框架開(kāi)發(fā),不僅支持可視化拖拽生產(chǎn)企業(yè)網(wǎng)站,同時(shí)還集成了多用戶(hù)商城、論壇、視頻、分類(lèi)信息等網(wǎng)站等常用模塊,還集成了網(wǎng)站業(yè)務(wù)發(fā)展所需的域名注冊功能和網(wǎng)站開(kāi)通功能。
  技術(shù)實(shí)現
  1、自助建站平臺的功能包括建站包產(chǎn)品的建立、建站模板的管理、西數域名系統等,可以輕松開(kāi)展建站業(yè)務(wù)。
  2. 文章管理信息分類(lèi)、權限配置、單頁(yè)、新聞列表、友情鏈接、文章采集
  3.商品管理系統商品參數、商品品牌、權限配置、商品列表、商品類(lèi)型、商品分類(lèi)、商品回收站、CVS導入
  
  4.前端可視化欄目管理、文件管理庫、可視化系統、區域設置、語(yǔ)言設置、HTML自定義自定義表單、tinymce編輯器、HTML模板、表單生成器
  5.微站小程序模板消息、關(guān)鍵詞回復、粉絲列表、自定義菜單、圖文消息、群消息、公眾號、小程序、小程序下載、訂閱消息、小程序代碼
  6.賬號站點(diǎn)賬號權限、平臺管理、財務(wù)管理、會(huì )員管理、登錄日志、用戶(hù)組權限管理、財務(wù)記錄、支付記錄、權限規則、會(huì )員列表、會(huì )員留言、評論管理、通知留言、會(huì )員組
  7.產(chǎn)品促銷(xiāo)功能 拍賣(mài)活動(dòng)、議價(jià)活動(dòng)、秒殺活動(dòng)、團體活動(dòng)、積分系統、傭金管理、優(yōu)惠券、抽獎活動(dòng)
  8、訂單管理訂單數據、訂單清單、發(fā)票管理、退貨處理
  9.系統配置標簽設置、系統設置、安全密碼修改、密碼修改、上傳設置、數據維護、清除緩存、前臺搜索
  10.擴展功能投票系統、任務(wù)規劃、地圖導航、物流配送、票據打印機、短信通知、郵件系統、支付設置、快速登錄、客服系統、廣告系統。
  11.門(mén)戶(hù)功能組件:文集小說(shuō)、問(wèn)答系統、視頻系統、論壇系統、圖庫系統、音頻系統、分類(lèi)信息(信息列表、組件配置、信息分類(lèi)、信息報告、信息獎勵、評論列表、信息采集) 、下載系統等
  
  12.系統升級機制
  軟件安裝
  1.服務(wù)器:云服務(wù)器,linux最好或windows
  2、安裝環(huán)境:php8+mysql5.7+Nginx
  3.上傳源代碼并運行你的域名.com/install進(jìn)行安裝。
  4. 建立數據庫,管理賬戶(hù)信息,按照提示進(jìn)行安裝。
  2.專(zhuān)業(yè)大師級秒殺廠(chǎng)商的排版功能。

最新版本:Typecho高性能優(yōu)化之緩存插件

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 114 次瀏覽 ? 2022-11-10 12:19 ? 來(lái)自相關(guān)話(huà)題

  最新版本:Typecho高性能優(yōu)化之緩存插件
  使用場(chǎng)景
  盡管 HP typecho 非常高效,但為了提高網(wǎng)站的并發(fā)性,頁(yè)面的靜態(tài)緩存是必要的。這個(gè)緩存插件的目的只是為了緩存主頁(yè)以減少對數據庫的壓力。
  提醒:更有效和更靈活的緩存方法應該使用 nginx 而不是插件。如果你有nginx基礎,可以參考這里的配置
  插件配置
  
  第一:?jiǎn)⒂眠@個(gè)插件。然后,配置插件
  第一:配置文件緩存路徑,可以指定相對或絕對位置。
  第二:配置緩存時(shí)間,單位為秒,請根據自己的需要配置。
  
  應當指出的是
  因為插件使用了簡(jiǎn)單的文件緩存機制,所以請確保緩存路徑所在的分區有足夠的空間和足夠的inode節點(diǎn)。
  后臺文章更新后,緩存不會(huì )自動(dòng)更新(實(shí)現起來(lái)很麻煩,所以這個(gè)版本暫時(shí)沒(méi)有實(shí)現這個(gè)功能)。這一點(diǎn)尤為重要,所以請適當配置緩存過(guò)期時(shí)間。
  下載鏈接
  最新版本:Windows IIS日志文件分析神器
  Windows Server 具有事件日志功能,其 IIS 日志文件記錄以下信息:誰(shuí)訪(fǎng)問(wèn)了您的站點(diǎn),訪(fǎng)問(wèn)者查看了哪些內容等。通過(guò)定期檢查這些日志文件,網(wǎng)站管理員可以檢測服務(wù)器或站點(diǎn)的哪些方面易受攻擊或有其他安全隱患。
  但是目前的日志分析工具還不是很完善,有些功能還沒(méi)有,特別是針對特定需求的分析很難實(shí)現。這里有一個(gè)日志分析神器,可以像使用SQL軟件一樣,以個(gè)性化的方式分析日志。
  LogParser 是一個(gè)命令行工具,可以通過(guò) SQL 語(yǔ)句對日志進(jìn)行分析和統計。您可以定期分析生產(chǎn)服務(wù)器的IIS日志,了解生產(chǎn)系統的使用情況和流量,及時(shí)發(fā)現系統問(wèn)題。不過(guò)LogParser是命令行格式,所以有一個(gè)圖形界面的Log Parser Studio日志分析軟件。
  首先下載Log Parser Studio軟件,下載地址,下載完成后直接解壓,運行文件夾中的文件LPS.exe程序。
  
  運行后會(huì )給出LogParser的下載地址,然后下載LogParser并安裝到系統中,然后再次運行LPS.exe。
  運行后,需要先指定IIS日志文件的路徑。您可以選擇整個(gè)目錄或單獨的文件。
  選擇完成后,單擊“創(chuàng )建新查詢(xún)”按鈕單獨執行查詢(xún)。查詢(xún)語(yǔ)句與SQL語(yǔ)法相同,非常方便。
  
  設置日志類(lèi)型,對于 網(wǎng)站,使用 IISW3CLOG。
  然后單擊“執行活動(dòng)查詢(xún)”按鈕執行查詢(xún)。如果日志文件比較大,查詢(xún)速度會(huì )比較慢,需要優(yōu)化SQL語(yǔ)句。
  總的來(lái)說(shuō),Log Parser Studio 是一款功能強大的 IIS 圖形分析工具,值得網(wǎng)站管理員使用。 查看全部

  最新版本:Typecho高性能優(yōu)化之緩存插件
  使用場(chǎng)景
  盡管 HP typecho 非常高效,但為了提高網(wǎng)站的并發(fā)性,頁(yè)面的靜態(tài)緩存是必要的。這個(gè)緩存插件的目的只是為了緩存主頁(yè)以減少對數據庫的壓力。
  提醒:更有效和更靈活的緩存方法應該使用 nginx 而不是插件。如果你有nginx基礎,可以參考這里的配置
  插件配置
  
  第一:?jiǎn)⒂眠@個(gè)插件。然后,配置插件
  第一:配置文件緩存路徑,可以指定相對或絕對位置。
  第二:配置緩存時(shí)間,單位為秒,請根據自己的需要配置。
  
  應當指出的是
  因為插件使用了簡(jiǎn)單的文件緩存機制,所以請確保緩存路徑所在的分區有足夠的空間和足夠的inode節點(diǎn)。
  后臺文章更新后,緩存不會(huì )自動(dòng)更新(實(shí)現起來(lái)很麻煩,所以這個(gè)版本暫時(shí)沒(méi)有實(shí)現這個(gè)功能)。這一點(diǎn)尤為重要,所以請適當配置緩存過(guò)期時(shí)間。
  下載鏈接
  最新版本:Windows IIS日志文件分析神器
  Windows Server 具有事件日志功能,其 IIS 日志文件記錄以下信息:誰(shuí)訪(fǎng)問(wèn)了您的站點(diǎn),訪(fǎng)問(wèn)者查看了哪些內容等。通過(guò)定期檢查這些日志文件,網(wǎng)站管理員可以檢測服務(wù)器或站點(diǎn)的哪些方面易受攻擊或有其他安全隱患。
  但是目前的日志分析工具還不是很完善,有些功能還沒(méi)有,特別是針對特定需求的分析很難實(shí)現。這里有一個(gè)日志分析神器,可以像使用SQL軟件一樣,以個(gè)性化的方式分析日志。
  LogParser 是一個(gè)命令行工具,可以通過(guò) SQL 語(yǔ)句對日志進(jìn)行分析和統計。您可以定期分析生產(chǎn)服務(wù)器的IIS日志,了解生產(chǎn)系統的使用情況和流量,及時(shí)發(fā)現系統問(wèn)題。不過(guò)LogParser是命令行格式,所以有一個(gè)圖形界面的Log Parser Studio日志分析軟件。
  首先下載Log Parser Studio軟件,下載地址,下載完成后直接解壓,運行文件夾中的文件LPS.exe程序。
  
  運行后會(huì )給出LogParser的下載地址,然后下載LogParser并安裝到系統中,然后再次運行LPS.exe。
  運行后,需要先指定IIS日志文件的路徑。您可以選擇整個(gè)目錄或單獨的文件。
  選擇完成后,單擊“創(chuàng )建新查詢(xún)”按鈕單獨執行查詢(xún)。查詢(xún)語(yǔ)句與SQL語(yǔ)法相同,非常方便。
  
  設置日志類(lèi)型,對于 網(wǎng)站,使用 IISW3CLOG。
  然后單擊“執行活動(dòng)查詢(xún)”按鈕執行查詢(xún)。如果日志文件比較大,查詢(xún)速度會(huì )比較慢,需要優(yōu)化SQL語(yǔ)句。
  總的來(lái)說(shuō),Log Parser Studio 是一款功能強大的 IIS 圖形分析工具,值得網(wǎng)站管理員使用。

優(yōu)化的解決方案:Kafka+flume實(shí)時(shí)采集數據

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 119 次瀏覽 ? 2022-11-09 08:27 ? 來(lái)自相關(guān)話(huà)題

  優(yōu)化的解決方案:Kafka+flume實(shí)時(shí)采集數據
  一、模擬日志的生成在
  IDEA 的資源文件夾下創(chuàng )建一個(gè)新的 log4j.properties 來(lái)定義日志格式,其中可以查看 flume 和 log4j 的集成配置
  #設置日志格式
log4j.rootCategory=ERROR,console,flume
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.target=System.err
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d{yy/MM/dd HH:mm:ss} %p %c{1}: %m%n
#flume和log4j整合
log4j.appender.flume = org.apache.flume.clients.log4jappender.Log4jAppender
log4j.appender.flume.Hostname = 192.168.116.10
log4j.appender.flume.Port = 41414
log4j.appender.flume.UnsafeMode = true
  使用 Java 的 log4j 模擬生成日志
  import org.apache.log4j.Logger;
public class LoggerGenerator {
private static Logger logger=Logger.getLogger(LoggerGenerator.class.getName());
public static void main(String[] args)throws Exception{
int i=0;
while (1==1){
Thread.sleep(1000);
logger.info("now is "+i);
i++;
}
}
}
  
  具體的依賴(lài)和配置過(guò)程可以查看Flume遠程實(shí)時(shí)采集windows生成的log4j生成的數據
  二、配置水槽
  1. 配置
  1.1 配置弗魯梅卡夫卡
  我在這里使用Flume版本為1.6,所以寫(xiě)作與官方網(wǎng)站不同。如果啟動(dòng) flume 時(shí)出現錯誤 .producer.requiredAcks=1, channel=c2, ic=streaming, type=org.apache.flume.sink.kafka.KafkaSink} }
  2018-12-29 06:17:26,698 (conf-file-poller-0) [錯誤 - org.apache.flume.node.AbstractConfigurationProvider.loadSinks(AbstractConfigurationProvider.java:427)] 由于配置過(guò)程中出現錯誤,接收器 k2 已被刪除
  org.apache.flume.conf.ConfigurationException: brokerList 必須至少收錄一個(gè) Kafka 代理
  它應該是由水槽版本的不同配置引起的。
  #命名代理
b1.sources = r2
b1.sinks = k2
b1.channels = c2
# 配置監控文件
b1.sources.r2.type =avro
b1.sources.r2.bind=0.0.0.0
b1.sources.r2.port = 41414
#b1.sources.r2.interceptors = i1
#b1.sources.r2.interceptors.i1.type = timestamp
# 配置sink
b1.sinks.k2.type =org.apache.flume.sink.kafka.KafkaSink
b1.sinks.k2.topic = streaming
b1.sinks.k2.brokerList= 192.168.116.10:9092
#b1.sinks.k2.kafka.bootstrap.servers = 192.168.116.10:9092
b1.sinks.k2.producer.requiredAcks = 1
b1.sinks.k2.batchSize = 20
# 配置channel
b1.channels.c2.type = memory
# 將三者串聯(lián)
b1.sources.r2.channels = c2
b1.sinks.k2.channel = c2
  
  這里的本地配置有點(diǎn)復雜,具體配置可以在官網(wǎng)看到
  1.3 啟動(dòng)水槽
  你可以在命令行中輸入 flume-ng 查看 help 命令,我的啟動(dòng)腳本是
  水槽-卡夫卡:flume-ng agent -n b1 -c /usr/local/src/apache-flume-1.6.0-bin/conf -
  f /usr/local/src/apache-flume-1.6.0-bin/conf/flumekafka.conf -Dflume.root.logger=INFO,console
  flume-ng agent -n a1-c $FLUME_HOME/conf -f $FLUME_HOME/conf/streaming.conf-Dflume.root.logger=INFO,console >> /usr/tmp/flume/1.log & (background startup).
  配置 Kafka
  1. 啟動(dòng)動(dòng)物園管理員
  在每臺機器的 zookeeper 的 bin 目錄中輸入 ./zkServer.sh start
  2. 以后臺形式啟動(dòng)卡夫卡
  在每臺機器上 kafka 安裝目錄的 bin 目錄中,鍵入:kafka-server-start.sh -daemon $KAFKA_HOME/config/server.properties &
  確保Zookeeper和Kafka都已經(jīng)啟動(dòng)
  3. 創(chuàng )建新主題3.1 創(chuàng )建新主題: kafka-topics.sh --創(chuàng )建 --動(dòng)物園管理員主:2181,從1:2181
  ,從2:2181 --復制因子 1 --分區 1 --主題流
  如果出現錯誤
  被報告為領(lǐng)導者報告錯誤:NOT_LEADER_FOR_PARTITION您可以轉到 Kafka 安裝目錄中 logs 文件夾下的服務(wù)器.log查看詳細錯誤。
  3.2 查看新創(chuàng )建的主題 kafka-topics.sh --描述 --動(dòng)物園管理員主:2181,從1:2181,從2:2181 --主題流
  您還可以按 kafka-topics.sh 查看所有主題 --list --zookeeper master:2181,slave1:2181,slave2:2181
  如果要刪除主題,則需要將其輸入到動(dòng)物園管理員的bin文件夾中
  ./zkCli.sh 啟動(dòng)動(dòng)物園管理員客戶(hù)端
  ls /brokers/topics 查看有多少個(gè)主題
  rmr /brokers/topics/test 刪除測試主題
  3.3 打開(kāi)一個(gè)新窗口來(lái)啟動(dòng)消費者
  kafka-console-consumer.sh --動(dòng)物園管理員主:2181,從1:2181,從2:2181 --主題流
  此時(shí),先啟動(dòng)水槽,然后啟動(dòng)IEDA的日志模擬器
  等待生成 20(在水槽中設置 batch20)以查看日志是否已消耗。
  查看博客水槽的實(shí)際應用
  解決方案:IP地址定位技術(shù)之基礎數據采集
  IP地理定位定位技術(shù)包括四大關(guān)鍵技術(shù):基礎數據采集、硬件系統建設、應用場(chǎng)景劃分和定位系統研發(fā)。
  
  基礎數據采集為IP地理位置定位技術(shù)的研究提供基礎數據支撐,是IP地址定位的基礎工作和關(guān)鍵技術(shù)。首先,根據不同的數據采集規律,針對不同數據源的不同數據格式,研究并實(shí)現一套自動(dòng)化智能數據采集技術(shù);其次,對采集數據進(jìn)行篩選、清洗和挖掘,形成基礎數據庫,為系統提供基礎數據支撐。
  基礎數據采集的研究?jì)热莅ù_定數據來(lái)源(如Whois開(kāi)放數據等)、分析數據采集的方法(如
  網(wǎng)絡(luò )爬蟲(chóng)、數據交換、地面采集等)、各種數據采集方法的可行性分析和實(shí)現,確定采集數據的屬性值(如地理位置、經(jīng)緯度、載體等)、數據清洗方法、數據正確性驗證步驟、底層數據的迭代更新過(guò)程等。
  
  為了保證數據質(zhì)量和數據豐富性,系統針對不同的數據源,通過(guò)三種方式獲取基礎數據,即數據挖掘、數據獲取和地面采集。數據挖掘是指通過(guò)網(wǎng)絡(luò )爬蟲(chóng)從APNIC網(wǎng)站、BGP網(wǎng)站、地圖網(wǎng)站等特定網(wǎng)頁(yè)獲取IP和地理位置信息。數據采購是指從能夠提供基礎數據的公司獲取數據,如本地服務(wù)網(wǎng)站、在線(xiàn)出租車(chē)網(wǎng)站等;地面采集是指利用自主研發(fā)的數據采集軟件進(jìn)行人工現場(chǎng)數據采集。
  數據采集技術(shù)已經(jīng)存在于許多開(kāi)源第三方框架中,例如Scrapy,Nutch,Crawler4j,WebMagic等。數據挖掘算法,如支持向量機SVM、K-Means等,得到了廣泛的應用。 查看全部

  優(yōu)化的解決方案:Kafka+flume實(shí)時(shí)采集數據
  一、模擬日志的生成在
  IDEA 的資源文件夾下創(chuàng )建一個(gè)新的 log4j.properties 來(lái)定義日志格式,其中可以查看 flume 和 log4j 的集成配置
  #設置日志格式
log4j.rootCategory=ERROR,console,flume
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.target=System.err
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d{yy/MM/dd HH:mm:ss} %p %c{1}: %m%n
#flume和log4j整合
log4j.appender.flume = org.apache.flume.clients.log4jappender.Log4jAppender
log4j.appender.flume.Hostname = 192.168.116.10
log4j.appender.flume.Port = 41414
log4j.appender.flume.UnsafeMode = true
  使用 Java 的 log4j 模擬生成日志
  import org.apache.log4j.Logger;
public class LoggerGenerator {
private static Logger logger=Logger.getLogger(LoggerGenerator.class.getName());
public static void main(String[] args)throws Exception{
int i=0;
while (1==1){
Thread.sleep(1000);
logger.info("now is "+i);
i++;
}
}
}
  
  具體的依賴(lài)和配置過(guò)程可以查看Flume遠程實(shí)時(shí)采集windows生成的log4j生成的數據
  二、配置水槽
  1. 配置
  1.1 配置弗魯梅卡夫卡
  我在這里使用Flume版本為1.6,所以寫(xiě)作與官方網(wǎng)站不同。如果啟動(dòng) flume 時(shí)出現錯誤 .producer.requiredAcks=1, channel=c2, ic=streaming, type=org.apache.flume.sink.kafka.KafkaSink} }
  2018-12-29 06:17:26,698 (conf-file-poller-0) [錯誤 - org.apache.flume.node.AbstractConfigurationProvider.loadSinks(AbstractConfigurationProvider.java:427)] 由于配置過(guò)程中出現錯誤,接收器 k2 已被刪除
  org.apache.flume.conf.ConfigurationException: brokerList 必須至少收錄一個(gè) Kafka 代理
  它應該是由水槽版本的不同配置引起的。
  #命名代理
b1.sources = r2
b1.sinks = k2
b1.channels = c2
# 配置監控文件
b1.sources.r2.type =avro
b1.sources.r2.bind=0.0.0.0
b1.sources.r2.port = 41414
#b1.sources.r2.interceptors = i1
#b1.sources.r2.interceptors.i1.type = timestamp
# 配置sink
b1.sinks.k2.type =org.apache.flume.sink.kafka.KafkaSink
b1.sinks.k2.topic = streaming
b1.sinks.k2.brokerList= 192.168.116.10:9092
#b1.sinks.k2.kafka.bootstrap.servers = 192.168.116.10:9092
b1.sinks.k2.producer.requiredAcks = 1
b1.sinks.k2.batchSize = 20
# 配置channel
b1.channels.c2.type = memory
# 將三者串聯(lián)
b1.sources.r2.channels = c2
b1.sinks.k2.channel = c2
  
  這里的本地配置有點(diǎn)復雜,具體配置可以在官網(wǎng)看到
  1.3 啟動(dòng)水槽
  你可以在命令行中輸入 flume-ng 查看 help 命令,我的啟動(dòng)腳本是
  水槽-卡夫卡:flume-ng agent -n b1 -c /usr/local/src/apache-flume-1.6.0-bin/conf -
  f /usr/local/src/apache-flume-1.6.0-bin/conf/flumekafka.conf -Dflume.root.logger=INFO,console
  flume-ng agent -n a1-c $FLUME_HOME/conf -f $FLUME_HOME/conf/streaming.conf-Dflume.root.logger=INFO,console >> /usr/tmp/flume/1.log & (background startup).
  配置 Kafka
  1. 啟動(dòng)動(dòng)物園管理員
  在每臺機器的 zookeeper 的 bin 目錄中輸入 ./zkServer.sh start
  2. 以后臺形式啟動(dòng)卡夫卡
  在每臺機器上 kafka 安裝目錄的 bin 目錄中,鍵入:kafka-server-start.sh -daemon $KAFKA_HOME/config/server.properties &
  確保Zookeeper和Kafka都已經(jīng)啟動(dòng)
  3. 創(chuàng )建新主題3.1 創(chuàng )建新主題: kafka-topics.sh --創(chuàng )建 --動(dòng)物園管理員主:2181,從1:2181
  ,從2:2181 --復制因子 1 --分區 1 --主題流
  如果出現錯誤
  被報告為領(lǐng)導者報告錯誤:NOT_LEADER_FOR_PARTITION您可以轉到 Kafka 安裝目錄中 logs 文件夾下的服務(wù)器.log查看詳細錯誤。
  3.2 查看新創(chuàng )建的主題 kafka-topics.sh --描述 --動(dòng)物園管理員主:2181,從1:2181,從2:2181 --主題流
  您還可以按 kafka-topics.sh 查看所有主題 --list --zookeeper master:2181,slave1:2181,slave2:2181
  如果要刪除主題,則需要將其輸入到動(dòng)物園管理員的bin文件夾中
  ./zkCli.sh 啟動(dòng)動(dòng)物園管理員客戶(hù)端
  ls /brokers/topics 查看有多少個(gè)主題
  rmr /brokers/topics/test 刪除測試主題
  3.3 打開(kāi)一個(gè)新窗口來(lái)啟動(dòng)消費者
  kafka-console-consumer.sh --動(dòng)物園管理員主:2181,從1:2181,從2:2181 --主題流
  此時(shí),先啟動(dòng)水槽,然后啟動(dòng)IEDA的日志模擬器
  等待生成 20(在水槽中設置 batch20)以查看日志是否已消耗。
  查看博客水槽的實(shí)際應用
  解決方案:IP地址定位技術(shù)之基礎數據采集
  IP地理定位定位技術(shù)包括四大關(guān)鍵技術(shù):基礎數據采集、硬件系統建設、應用場(chǎng)景劃分和定位系統研發(fā)。
  
  基礎數據采集為IP地理位置定位技術(shù)的研究提供基礎數據支撐,是IP地址定位的基礎工作和關(guān)鍵技術(shù)。首先,根據不同的數據采集規律,針對不同數據源的不同數據格式,研究并實(shí)現一套自動(dòng)化智能數據采集技術(shù);其次,對采集數據進(jìn)行篩選、清洗和挖掘,形成基礎數據庫,為系統提供基礎數據支撐。
  基礎數據采集的研究?jì)热莅ù_定數據來(lái)源(如Whois開(kāi)放數據等)、分析數據采集的方法(如
  網(wǎng)絡(luò )爬蟲(chóng)、數據交換、地面采集等)、各種數據采集方法的可行性分析和實(shí)現,確定采集數據的屬性值(如地理位置、經(jīng)緯度、載體等)、數據清洗方法、數據正確性驗證步驟、底層數據的迭代更新過(guò)程等。
  
  為了保證數據質(zhì)量和數據豐富性,系統針對不同的數據源,通過(guò)三種方式獲取基礎數據,即數據挖掘、數據獲取和地面采集。數據挖掘是指通過(guò)網(wǎng)絡(luò )爬蟲(chóng)從APNIC網(wǎng)站、BGP網(wǎng)站、地圖網(wǎng)站等特定網(wǎng)頁(yè)獲取IP和地理位置信息。數據采購是指從能夠提供基礎數據的公司獲取數據,如本地服務(wù)網(wǎng)站、在線(xiàn)出租車(chē)網(wǎng)站等;地面采集是指利用自主研發(fā)的數據采集軟件進(jìn)行人工現場(chǎng)數據采集。
  數據采集技術(shù)已經(jīng)存在于許多開(kāi)源第三方框架中,例如Scrapy,Nutch,Crawler4j,WebMagic等。數據挖掘算法,如支持向量機SVM、K-Means等,得到了廣泛的應用。

匯總:實(shí)時(shí)抓取網(wǎng)頁(yè)數據(網(wǎng)頁(yè)抓取視頻)

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 142 次瀏覽 ? 2022-11-08 17:30 ? 來(lái)自相關(guān)話(huà)題

  匯總:實(shí)時(shí)抓取網(wǎng)頁(yè)數據(網(wǎng)頁(yè)抓取視頻)
  目錄:
  1.如何實(shí)時(shí)抓取網(wǎng)頁(yè)數據
  網(wǎng)絡(luò )數據采集軟件,今天給大家分享這款免費的網(wǎng)絡(luò )數據采集軟件。只要點(diǎn)擊鼠標,即可輕松獲取任意網(wǎng)頁(yè)數據,所見(jiàn)即所得的運行模式!監控采集:設置監控目標網(wǎng)站。目標網(wǎng)站只要有新內容,立馬入庫采集!
  2.網(wǎng)絡(luò )視頻采集網(wǎng)站
  相信很多人都使用過(guò)網(wǎng)頁(yè)數據采集軟件來(lái)實(shí)現自動(dòng)SEO優(yōu)化排名,因為每個(gè)站長(cháng)必須花費最多的時(shí)間在文章內容上,有了這個(gè)網(wǎng)頁(yè)數據采集軟件沒(méi)有不用擔心網(wǎng)站沒(méi)有內容填寫(xiě)自媒體人事網(wǎng)頁(yè)資料采集軟件再也不用擔心沒(méi)有文章資料(軟件還貼心配備關(guān)鍵詞文章采集,只需輸入關(guān)鍵詞即可實(shí)現全網(wǎng)文章采集)。
  
  3.免費抓取網(wǎng)頁(yè)數據
  搜索引擎優(yōu)化 (SEO),對于 網(wǎng)站 運營(yíng)商來(lái)說(shuō)一定不陌生。SEO不僅僅是在百度和谷歌等搜索引擎中獲得更好的排名以贏(yíng)得更多訪(fǎng)問(wèn)者。也適用于其他平臺,只要有搜索就可以進(jìn)行SEO優(yōu)化。
  4.網(wǎng)絡(luò )視頻采集
  通常,我們需要分析和了解搜索引擎的排名規則,各種搜索引擎如何進(jìn)行搜索,如何抓取互聯(lián)網(wǎng)頁(yè)面,如何確定具體關(guān)鍵詞搜索結果的排名,然后進(jìn)行針對性的優(yōu)化。
  5.網(wǎng)頁(yè)獲取視頻
  關(guān)鍵詞研究與搜索引擎優(yōu)化息息相關(guān),即關(guān)鍵詞優(yōu)化如果網(wǎng)站想在搜索引擎中獲得好的排名,那么你必須知道如何分析有效客戶(hù),這樣才能計劃和產(chǎn)品的選擇關(guān)鍵詞關(guān)鍵詞往往會(huì )影響企業(yè)在網(wǎng)絡(luò )市場(chǎng)的競爭力,所以關(guān)鍵詞的選擇必須突出,并遵循一定的原則,例如: .
  
  6. 獲取 網(wǎng)站 數據
  關(guān)鍵詞有大量的搜索量(有價(jià)值的搜索量詞會(huì )根據業(yè)務(wù)和術(shù)語(yǔ)的意圖而有所不同)關(guān)鍵詞涉及到網(wǎng)站主題和產(chǎn)品,而不僅僅是追求熱詞
  7. 從網(wǎng)頁(yè)抓取視頻
  關(guān)鍵詞并不是憑空出現的,它們往往存在于網(wǎng)站內容中,所以我們需要從以下幾個(gè)方面對網(wǎng)站上發(fā)布的內容進(jìn)行優(yōu)化,包括:頁(yè)面標題、描述具體內容關(guān)鍵詞內容形式的多樣化和比例以及在關(guān)鍵詞中可以涉及到各種內容,標題是最重要的,為什么?因為用戶(hù)會(huì )根據標題來(lái)判斷內容是否是他正在尋找的答案,或者是否引起了他的興趣。
  8.如何抓取網(wǎng)頁(yè)數據
  因此,將您選擇的最佳關(guān)鍵字巧妙地埋在標題中是非常重要的。當然,你不能僅僅為了欺騙點(diǎn)擊而賣(mài)狗肉。長(cháng)此以往,不僅用戶(hù)會(huì )失去對你的網(wǎng)站的信任,搜索引擎也會(huì )對網(wǎng)站的整體情況留下不良記錄,結果適得其反。的后果。
  主題測試文章,僅供測試使用。發(fā)布者:小編,轉載請注明出處:
  官方數據:如何采集網(wǎng)站數據wps怎么自動(dòng)采集網(wǎng)站上的數據
  網(wǎng)站如何登錄數據采集登錄網(wǎng)站訪(fǎng)問(wèn)網(wǎng)頁(yè)時(shí)網(wǎng)站會(huì )驗證cookie信息判斷當前用戶(hù)是否登錄,所以在采集當這種類(lèi)型的網(wǎng)站數據時(shí),需要同步發(fā)送cookie數據,保證網(wǎng)站驗證cookie能夠成功。
  
  餅干是怎么來(lái)的?可以使用抓包工具,然后打開(kāi)瀏覽器實(shí)現目標采集網(wǎng)站的登錄操作,然后將抓包工具中記錄的cookie復制粘貼到采集你正在使用的軟件中,或者使用采集軟件直接實(shí)現登錄操作。
  如果登錄遇到驗證碼,自動(dòng)化登錄操作會(huì )比較困難。除非你去自動(dòng)編碼,否則你會(huì )花錢(qián)??傊褪遣杉卿浘W(wǎng)站,如何使用cookies采集網(wǎng)頁(yè)上的指定數據是根據你說(shuō)的,推薦使用網(wǎng)頁(yè)采集器 完成。
  
  讓我告訴你優(yōu)采云采集器如何實(shí)現你的需求 1.輸入條件,通常是過(guò)濾條件,在優(yōu)采云,你可以點(diǎn)擊自動(dòng)形成,然后添加命令 2.生成Excel,優(yōu)采云可以導出到Excel 3。輸入是有規律的,可能需要你手動(dòng)構造一批url 4.應該和1一樣。
  如果想采用wps如何自動(dòng)采集網(wǎng)站,建議使用微軟office的Excel表格獲取網(wǎng)站上面的數據: 1.用微軟打開(kāi)Excel表格office,點(diǎn)擊【數據】,【獲取外部數據】,【來(lái)自網(wǎng)站】;2、輸入網(wǎng)址后,點(diǎn)擊【Go】,數據出來(lái)后點(diǎn)擊【Import】。 查看全部

  匯總:實(shí)時(shí)抓取網(wǎng)頁(yè)數據(網(wǎng)頁(yè)抓取視頻)
  目錄:
  1.如何實(shí)時(shí)抓取網(wǎng)頁(yè)數據
  網(wǎng)絡(luò )數據采集軟件,今天給大家分享這款免費的網(wǎng)絡(luò )數據采集軟件。只要點(diǎn)擊鼠標,即可輕松獲取任意網(wǎng)頁(yè)數據,所見(jiàn)即所得的運行模式!監控采集:設置監控目標網(wǎng)站。目標網(wǎng)站只要有新內容,立馬入庫采集!
  2.網(wǎng)絡(luò )視頻采集網(wǎng)站
  相信很多人都使用過(guò)網(wǎng)頁(yè)數據采集軟件來(lái)實(shí)現自動(dòng)SEO優(yōu)化排名,因為每個(gè)站長(cháng)必須花費最多的時(shí)間在文章內容上,有了這個(gè)網(wǎng)頁(yè)數據采集軟件沒(méi)有不用擔心網(wǎng)站沒(méi)有內容填寫(xiě)自媒體人事網(wǎng)頁(yè)資料采集軟件再也不用擔心沒(méi)有文章資料(軟件還貼心配備關(guān)鍵詞文章采集,只需輸入關(guān)鍵詞即可實(shí)現全網(wǎng)文章采集)。
  
  3.免費抓取網(wǎng)頁(yè)數據
  搜索引擎優(yōu)化 (SEO),對于 網(wǎng)站 運營(yíng)商來(lái)說(shuō)一定不陌生。SEO不僅僅是在百度和谷歌等搜索引擎中獲得更好的排名以贏(yíng)得更多訪(fǎng)問(wèn)者。也適用于其他平臺,只要有搜索就可以進(jìn)行SEO優(yōu)化。
  4.網(wǎng)絡(luò )視頻采集
  通常,我們需要分析和了解搜索引擎的排名規則,各種搜索引擎如何進(jìn)行搜索,如何抓取互聯(lián)網(wǎng)頁(yè)面,如何確定具體關(guān)鍵詞搜索結果的排名,然后進(jìn)行針對性的優(yōu)化。
  5.網(wǎng)頁(yè)獲取視頻
  關(guān)鍵詞研究與搜索引擎優(yōu)化息息相關(guān),即關(guān)鍵詞優(yōu)化如果網(wǎng)站想在搜索引擎中獲得好的排名,那么你必須知道如何分析有效客戶(hù),這樣才能計劃和產(chǎn)品的選擇關(guān)鍵詞關(guān)鍵詞往往會(huì )影響企業(yè)在網(wǎng)絡(luò )市場(chǎng)的競爭力,所以關(guān)鍵詞的選擇必須突出,并遵循一定的原則,例如: .
  
  6. 獲取 網(wǎng)站 數據
  關(guān)鍵詞有大量的搜索量(有價(jià)值的搜索量詞會(huì )根據業(yè)務(wù)和術(shù)語(yǔ)的意圖而有所不同)關(guān)鍵詞涉及到網(wǎng)站主題和產(chǎn)品,而不僅僅是追求熱詞
  7. 從網(wǎng)頁(yè)抓取視頻
  關(guān)鍵詞并不是憑空出現的,它們往往存在于網(wǎng)站內容中,所以我們需要從以下幾個(gè)方面對網(wǎng)站上發(fā)布的內容進(jìn)行優(yōu)化,包括:頁(yè)面標題、描述具體內容關(guān)鍵詞內容形式的多樣化和比例以及在關(guān)鍵詞中可以涉及到各種內容,標題是最重要的,為什么?因為用戶(hù)會(huì )根據標題來(lái)判斷內容是否是他正在尋找的答案,或者是否引起了他的興趣。
  8.如何抓取網(wǎng)頁(yè)數據
  因此,將您選擇的最佳關(guān)鍵字巧妙地埋在標題中是非常重要的。當然,你不能僅僅為了欺騙點(diǎn)擊而賣(mài)狗肉。長(cháng)此以往,不僅用戶(hù)會(huì )失去對你的網(wǎng)站的信任,搜索引擎也會(huì )對網(wǎng)站的整體情況留下不良記錄,結果適得其反。的后果。
  主題測試文章,僅供測試使用。發(fā)布者:小編,轉載請注明出處:
  官方數據:如何采集網(wǎng)站數據wps怎么自動(dòng)采集網(wǎng)站上的數據
  網(wǎng)站如何登錄數據采集登錄網(wǎng)站訪(fǎng)問(wèn)網(wǎng)頁(yè)時(shí)網(wǎng)站會(huì )驗證cookie信息判斷當前用戶(hù)是否登錄,所以在采集當這種類(lèi)型的網(wǎng)站數據時(shí),需要同步發(fā)送cookie數據,保證網(wǎng)站驗證cookie能夠成功。
  
  餅干是怎么來(lái)的?可以使用抓包工具,然后打開(kāi)瀏覽器實(shí)現目標采集網(wǎng)站的登錄操作,然后將抓包工具中記錄的cookie復制粘貼到采集你正在使用的軟件中,或者使用采集軟件直接實(shí)現登錄操作。
  如果登錄遇到驗證碼,自動(dòng)化登錄操作會(huì )比較困難。除非你去自動(dòng)編碼,否則你會(huì )花錢(qián)??傊褪遣杉卿浘W(wǎng)站,如何使用cookies采集網(wǎng)頁(yè)上的指定數據是根據你說(shuō)的,推薦使用網(wǎng)頁(yè)采集器 完成。
  
  讓我告訴你優(yōu)采云采集器如何實(shí)現你的需求 1.輸入條件,通常是過(guò)濾條件,在優(yōu)采云,你可以點(diǎn)擊自動(dòng)形成,然后添加命令 2.生成Excel,優(yōu)采云可以導出到Excel 3。輸入是有規律的,可能需要你手動(dòng)構造一批url 4.應該和1一樣。
  如果想采用wps如何自動(dòng)采集網(wǎng)站,建議使用微軟office的Excel表格獲取網(wǎng)站上面的數據: 1.用微軟打開(kāi)Excel表格office,點(diǎn)擊【數據】,【獲取外部數據】,【來(lái)自網(wǎng)站】;2、輸入網(wǎng)址后,點(diǎn)擊【Go】,數據出來(lái)后點(diǎn)擊【Import】。

匯總:文章實(shí)時(shí)采集,按下表計算:就是視頻流

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 81 次瀏覽 ? 2022-12-01 14:28 ? 來(lái)自相關(guān)話(huà)題

  匯總:文章實(shí)時(shí)采集,按下表計算:就是視頻流
  文章實(shí)時(shí)采集,按下表計算:flv,就是視頻流。2000即為1024-1,2000視頻為1k,人人都有好幾個(gè)qq號。另外,分包時(shí)候的實(shí)時(shí)計算要考慮壓縮比,不然,容易視頻變模糊。所以,實(shí)時(shí)渲染的意義,就是方便快速的加載視頻流到vuivr里面去。1024-1=20,2000即為1024-1。容易出現帶寬緊張,導致vuivr部分壓縮的視頻格式?jīng)]有完全從4k清晰的流中獲取到文件大小,在最終pc端,部分大小需要裁剪出來(lái)重壓縮。
  等效于1000m,百分之10的比特率和百分之20的壓縮率,自然是比特率更高的比壓縮率更低的文件要大。當然,后者確實(shí)更大。當然,反過(guò)來(lái)說(shuō),視頻的大小主要取決于清晰度。清晰度越高,其大小也是越大的。
  
  那個(gè)應該是約小,畢竟音頻需要一些濾波器做不同方向的放大,自然就會(huì )增加一些信息量,除了帶寬的問(wèn)題還要考慮芯片和接口帶寬,
  發(fā)個(gè)視頻看看壓縮率怎么樣。
  
  1、本質(zhì)上應該是大小,是1024k,也就是1024分鐘內圖片的size會(huì )是1024x2000,若是壓縮一下圖片2、我們能很容易想到如果1000兆的文件就要翻4倍多的量了,特別是1gb空間的圖片。
  有的時(shí)候平方率高的視頻比平方率低的大。
  500m一部劇片單人1g級別的音頻音樂(lè )一般要用超線(xiàn)程的處理器了, 查看全部

  匯總:文章實(shí)時(shí)采集,按下表計算:就是視頻流
  文章實(shí)時(shí)采集,按下表計算:flv,就是視頻流。2000即為1024-1,2000視頻為1k,人人都有好幾個(gè)qq號。另外,分包時(shí)候的實(shí)時(shí)計算要考慮壓縮比,不然,容易視頻變模糊。所以,實(shí)時(shí)渲染的意義,就是方便快速的加載視頻流到vuivr里面去。1024-1=20,2000即為1024-1。容易出現帶寬緊張,導致vuivr部分壓縮的視頻格式?jīng)]有完全從4k清晰的流中獲取到文件大小,在最終pc端,部分大小需要裁剪出來(lái)重壓縮。
  等效于1000m,百分之10的比特率和百分之20的壓縮率,自然是比特率更高的比壓縮率更低的文件要大。當然,后者確實(shí)更大。當然,反過(guò)來(lái)說(shuō),視頻的大小主要取決于清晰度。清晰度越高,其大小也是越大的。
  
  那個(gè)應該是約小,畢竟音頻需要一些濾波器做不同方向的放大,自然就會(huì )增加一些信息量,除了帶寬的問(wèn)題還要考慮芯片和接口帶寬,
  發(fā)個(gè)視頻看看壓縮率怎么樣。
  
  1、本質(zhì)上應該是大小,是1024k,也就是1024分鐘內圖片的size會(huì )是1024x2000,若是壓縮一下圖片2、我們能很容易想到如果1000兆的文件就要翻4倍多的量了,特別是1gb空間的圖片。
  有的時(shí)候平方率高的視頻比平方率低的大。
  500m一部劇片單人1g級別的音頻音樂(lè )一般要用超線(xiàn)程的處理器了,

分享文章:個(gè)人博客開(kāi)發(fā)系列:文章實(shí)時(shí)保存

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 130 次瀏覽 ? 2022-11-30 16:12 ? 來(lái)自相關(guān)話(huà)題

  分享文章:個(gè)人博客開(kāi)發(fā)系列:文章實(shí)時(shí)保存
  摘要:前言 一般用來(lái)寫(xiě)東西的網(wǎng)站都會(huì )有實(shí)時(shí)編輯保存的功能。文章保存時(shí),實(shí)時(shí)保存的數據會(huì )被清空。源碼顯示該功能只在個(gè)人博客后臺使用,并沒(méi)有多賬號系統,所以在雙方合眾都保存了一條記錄。
  前言
  一般用來(lái)寫(xiě)東西的網(wǎng)站都會(huì )有實(shí)時(shí)編輯保存的功能。對于用戶(hù)來(lái)說(shuō)是非常實(shí)用的功能。作為個(gè)人博客,雖然用處不是那么明顯,但還是想實(shí)現這個(gè)功能,只是作為練習。
  實(shí)施思路
  使用WebSocket實(shí)現瀏覽器與服務(wù)器的實(shí)時(shí)通信;
  服務(wù)端使用Redis緩存實(shí)時(shí)編輯的文章(編輯時(shí)文章變化頻繁,頻繁的讀寫(xiě)數據庫操作不是很好的解決方案);
  服務(wù)器使用定時(shí)任務(wù)(比如每天凌晨3:00)將Redis緩存數據存儲到MySQL數據庫中;
  瀏覽器首次進(jìn)入新增文章頁(yè)面時(shí),使用WebSocket從服務(wù)器獲取數據(先從Redis中查找,如果沒(méi)有再從MySQL數據庫中查找);
  瀏覽器首次進(jìn)入文章編輯頁(yè)面時(shí),不需要從服務(wù)器獲取數據;
  使用Vue.js的watch監聽(tīng)文章的變化,變化時(shí)使用WebSocket向服務(wù)器傳輸數據。
  文章保存時(shí)清空Redis和MySQL中實(shí)時(shí)保存的數據。
  源代碼
  談話(huà)很便宜。給我看代碼。
  
  闡明
  
<p>本功能只是個(gè)人博客后臺使用,沒(méi)有多賬戶(hù)體系,所以Redis和MySQL中都是保存一條記錄。如果需要按不同用戶(hù)來(lái)保存的話(huà),需要自行開(kāi)發(fā)。
  代碼比較多,具體的代碼就不貼了,有興趣的可以去我的GitHub上查看源碼。這里只說(shuō)明一下各個(gè)文件中代碼的用處。
</p>
  1. /server/util/draft-socketio.js
  服務(wù)器端 WebSocket 服務(wù)使用 socket.io 庫。
  2./server/util/draft-redis.js
  Redis 的 set 和 get 公共方法。
  3./server/util/redis-mysql.js
  redisToMysqlTask??:定時(shí)同步Redis數據到MySQL數據的方法,使用node-schedule庫。
  getDraftPostFromMysql:當Redis中不存在數據時(shí),查詢(xún)MySQL中的數據。
  clearDraftPostOfMysql:從MySQL中刪除數據(文章保存后操作)。
  
  4. /src/main.js
  瀏覽器首先引入 socket.io,使用 vue-socket.io 和 socket.io-client 庫。
  import VueSocketio from "vue-socket.io";
import socketio from "socket.io-client";
Vue.use(VueSocketio, socketio("http://localhost:9000", {
path: "/testsocketiopath"
}));
  5. /src/pages/Edit.vue
  使用WebSocket從服務(wù)器獲取數據,并將數據實(shí)時(shí)傳輸到服務(wù)器進(jìn)行存儲。
  總結
  整個(gè)功能其實(shí)就是WebSocket、Redis、MySQL的使用,之前都用過(guò),所以開(kāi)發(fā)起來(lái)還是比較容易的。最重要的是先想好解決辦法。
  最后,像往常一樣索取 fork 和 star。
  分享文章:微信公眾號文章采集
  采集
網(wǎng)站:
  使用功能點(diǎn):
  網(wǎng)址
  尋呼列表信息采集
  搜狗微信搜搜:搜狗微信搜索是搜狗于2014年6月9日推出的微信公眾平臺?!拔⑿潘阉鳌敝С炙阉魑⑿殴娞柡臀⑿盼恼?。您可以使用關(guān)鍵詞搜索相關(guān)微信公眾號或微信公眾號推送的文章。不僅在PC端,搜狗手機搜索客戶(hù)端也會(huì )推薦相關(guān)的微信公眾號。
  搜狗微信文章采集數據說(shuō)明:本文采集搜狗微信-搜索-優(yōu)采云
大數據中的所有文章信息。本文僅以“搜狗微信-搜索-優(yōu)采云
所有文章信息大數據采集”為例。在實(shí)際操作過(guò)程中,您可以根據自己的數據采集需要,更改搜狗微信的搜索詞。
  搜狗微信文章采集
詳細采集
字段說(shuō)明:微信文章標題、微信文章關(guān)鍵詞、微信文章摘要、微信公眾號名稱(chēng)、微信文章發(fā)布時(shí)間、微信文章地址。
  第一步:創(chuàng )建采集任務(wù)
  1)進(jìn)入主界面,選擇“自定義模式”
  2) 將要采集的網(wǎng)址復制粘貼到網(wǎng)址輸入框中,點(diǎn)擊“保存網(wǎng)址”
  第 2 步:創(chuàng )建翻頁(yè)循環(huán)
  
  1)打開(kāi)右上角的“進(jìn)程”。點(diǎn)擊頁(yè)面文章搜索框,在右側的操作提示框中選擇“輸入文字”
  2)輸入要搜索的文章信息,這里以搜索“優(yōu)采云
大數據”為例,輸入完成后點(diǎn)擊“確定”按鈕
  3)“優(yōu)采云
大數據”會(huì )自動(dòng)填入搜索框,點(diǎn)擊“搜索文章”按鈕,在操作提示框中選擇“點(diǎn)擊此按鈕”
  4) 頁(yè)面出現“優(yōu)采云
大數據”的文章搜索結果。將結果頁(yè)面下拉至最下方,點(diǎn)擊“下一頁(yè)”按鈕,在右側的操作提示框中選擇“循環(huán)點(diǎn)擊下一頁(yè)”
  第 3 步:創(chuàng )建列表循環(huán)并提取數據
  1) 移動(dòng)鼠標選中頁(yè)面第一篇文章區塊。系統會(huì )識別出該塊中的子元素,在操作提示框中選擇“選擇子元素”
  2)繼續選擇頁(yè)面中第二篇文章的區塊,系統會(huì )自動(dòng)選擇第二篇文章中的子元素,并識別出頁(yè)面中其他10組相似元素,在操作提示框中選擇“全選” “
  
  3)我們可以看到頁(yè)面上article block中的所有元素都被選中了,變成了綠色。在右側的操作提示框中,出現字段預覽表,將鼠標移至表頭,點(diǎn)擊垃圾桶圖標即可刪除不需要的字段。選擇字段后,選擇“采集
以下數據”
  4)由于我們還要采集
每篇文章的url,所以還需要提取一個(gè)字段。點(diǎn)擊第一篇文章鏈接,再點(diǎn)擊第二篇文章鏈接,系統會(huì )自動(dòng)選擇頁(yè)面上的一組文章鏈接。在右側的操作提示框中,選擇“采集
以下鏈接地址”
  5) 字段選擇完成后,選擇對應的字段,自定義字段的命名。完成后點(diǎn)擊左上角“保存并開(kāi)始”開(kāi)始采集任務(wù)
  6)選擇“開(kāi)始本地采集

  第四步:數據采集與導出
  1)采集完成后,會(huì )彈出提示,選擇“導出數據”,選擇“合適的導出方式”,將采集到的搜狗微信文章數據導出
  2)這里我們選擇excel作為導出格式,數據導出如下圖 查看全部

  分享文章:個(gè)人博客開(kāi)發(fā)系列:文章實(shí)時(shí)保存
  摘要:前言 一般用來(lái)寫(xiě)東西的網(wǎng)站都會(huì )有實(shí)時(shí)編輯保存的功能。文章保存時(shí),實(shí)時(shí)保存的數據會(huì )被清空。源碼顯示該功能只在個(gè)人博客后臺使用,并沒(méi)有多賬號系統,所以在雙方合眾都保存了一條記錄。
  前言
  一般用來(lái)寫(xiě)東西的網(wǎng)站都會(huì )有實(shí)時(shí)編輯保存的功能。對于用戶(hù)來(lái)說(shuō)是非常實(shí)用的功能。作為個(gè)人博客,雖然用處不是那么明顯,但還是想實(shí)現這個(gè)功能,只是作為練習。
  實(shí)施思路
  使用WebSocket實(shí)現瀏覽器與服務(wù)器的實(shí)時(shí)通信;
  服務(wù)端使用Redis緩存實(shí)時(shí)編輯的文章(編輯時(shí)文章變化頻繁,頻繁的讀寫(xiě)數據庫操作不是很好的解決方案);
  服務(wù)器使用定時(shí)任務(wù)(比如每天凌晨3:00)將Redis緩存數據存儲到MySQL數據庫中;
  瀏覽器首次進(jìn)入新增文章頁(yè)面時(shí),使用WebSocket從服務(wù)器獲取數據(先從Redis中查找,如果沒(méi)有再從MySQL數據庫中查找);
  瀏覽器首次進(jìn)入文章編輯頁(yè)面時(shí),不需要從服務(wù)器獲取數據;
  使用Vue.js的watch監聽(tīng)文章的變化,變化時(shí)使用WebSocket向服務(wù)器傳輸數據。
  文章保存時(shí)清空Redis和MySQL中實(shí)時(shí)保存的數據。
  源代碼
  談話(huà)很便宜。給我看代碼。
  
  闡明
  
<p>本功能只是個(gè)人博客后臺使用,沒(méi)有多賬戶(hù)體系,所以RedisMySQL中都是保存一條記錄。如果需要按不同用戶(hù)來(lái)保存的話(huà),需要自行開(kāi)發(fā)。
  代碼比較多,具體的代碼就不貼了,有興趣的可以去我的GitHub上查看源碼。這里只說(shuō)明一下各個(gè)文件中代碼的用處。
</p>
  1. /server/util/draft-socketio.js
  服務(wù)器端 WebSocket 服務(wù)使用 socket.io 庫。
  2./server/util/draft-redis.js
  Redis 的 set 和 get 公共方法。
  3./server/util/redis-mysql.js
  redisToMysqlTask??:定時(shí)同步Redis數據到MySQL數據的方法,使用node-schedule庫。
  getDraftPostFromMysql:當Redis中不存在數據時(shí),查詢(xún)MySQL中的數據。
  clearDraftPostOfMysql:從MySQL中刪除數據(文章保存后操作)。
  
  4. /src/main.js
  瀏覽器首先引入 socket.io,使用 vue-socket.io 和 socket.io-client 庫。
  import VueSocketio from "vue-socket.io";
import socketio from "socket.io-client";
Vue.use(VueSocketio, socketio("http://localhost:9000", {
path: "/testsocketiopath"
}));
  5. /src/pages/Edit.vue
  使用WebSocket從服務(wù)器獲取數據,并將數據實(shí)時(shí)傳輸到服務(wù)器進(jìn)行存儲。
  總結
  整個(gè)功能其實(shí)就是WebSocket、Redis、MySQL的使用,之前都用過(guò),所以開(kāi)發(fā)起來(lái)還是比較容易的。最重要的是先想好解決辦法。
  最后,像往常一樣索取 fork 和 star。
  分享文章:微信公眾號文章采集
  采集
網(wǎng)站:
  使用功能點(diǎn):
  網(wǎng)址
  尋呼列表信息采集
  搜狗微信搜搜:搜狗微信搜索是搜狗于2014年6月9日推出的微信公眾平臺?!拔⑿潘阉鳌敝С炙阉魑⑿殴娞柡臀⑿盼恼?。您可以使用關(guān)鍵詞搜索相關(guān)微信公眾號或微信公眾號推送的文章。不僅在PC端,搜狗手機搜索客戶(hù)端也會(huì )推薦相關(guān)的微信公眾號。
  搜狗微信文章采集數據說(shuō)明:本文采集搜狗微信-搜索-優(yōu)采云
大數據中的所有文章信息。本文僅以“搜狗微信-搜索-優(yōu)采云
所有文章信息大數據采集”為例。在實(shí)際操作過(guò)程中,您可以根據自己的數據采集需要,更改搜狗微信的搜索詞。
  搜狗微信文章采集
詳細采集
字段說(shuō)明:微信文章標題、微信文章關(guān)鍵詞、微信文章摘要、微信公眾號名稱(chēng)、微信文章發(fā)布時(shí)間、微信文章地址。
  第一步:創(chuàng )建采集任務(wù)
  1)進(jìn)入主界面,選擇“自定義模式”
  2) 將要采集的網(wǎng)址復制粘貼到網(wǎng)址輸入框中,點(diǎn)擊“保存網(wǎng)址”
  第 2 步:創(chuàng )建翻頁(yè)循環(huán)
  
  1)打開(kāi)右上角的“進(jìn)程”。點(diǎn)擊頁(yè)面文章搜索框,在右側的操作提示框中選擇“輸入文字”
  2)輸入要搜索的文章信息,這里以搜索“優(yōu)采云
大數據”為例,輸入完成后點(diǎn)擊“確定”按鈕
  3)“優(yōu)采云
大數據”會(huì )自動(dòng)填入搜索框,點(diǎn)擊“搜索文章”按鈕,在操作提示框中選擇“點(diǎn)擊此按鈕”
  4) 頁(yè)面出現“優(yōu)采云
大數據”的文章搜索結果。將結果頁(yè)面下拉至最下方,點(diǎn)擊“下一頁(yè)”按鈕,在右側的操作提示框中選擇“循環(huán)點(diǎn)擊下一頁(yè)”
  第 3 步:創(chuàng )建列表循環(huán)并提取數據
  1) 移動(dòng)鼠標選中頁(yè)面第一篇文章區塊。系統會(huì )識別出該塊中的子元素,在操作提示框中選擇“選擇子元素”
  2)繼續選擇頁(yè)面中第二篇文章的區塊,系統會(huì )自動(dòng)選擇第二篇文章中的子元素,并識別出頁(yè)面中其他10組相似元素,在操作提示框中選擇“全選” “
  
  3)我們可以看到頁(yè)面上article block中的所有元素都被選中了,變成了綠色。在右側的操作提示框中,出現字段預覽表,將鼠標移至表頭,點(diǎn)擊垃圾桶圖標即可刪除不需要的字段。選擇字段后,選擇“采集
以下數據”
  4)由于我們還要采集
每篇文章的url,所以還需要提取一個(gè)字段。點(diǎn)擊第一篇文章鏈接,再點(diǎn)擊第二篇文章鏈接,系統會(huì )自動(dòng)選擇頁(yè)面上的一組文章鏈接。在右側的操作提示框中,選擇“采集
以下鏈接地址”
  5) 字段選擇完成后,選擇對應的字段,自定義字段的命名。完成后點(diǎn)擊左上角“保存并開(kāi)始”開(kāi)始采集任務(wù)
  6)選擇“開(kāi)始本地采集

  第四步:數據采集與導出
  1)采集完成后,會(huì )彈出提示,選擇“導出數據”,選擇“合適的導出方式”,將采集到的搜狗微信文章數據導出
  2)這里我們選擇excel作為導出格式,數據導出如下圖

解決方案:目標檢測數據標注項目分析-產(chǎn)品缺陷檢測

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 191 次瀏覽 ? 2022-11-30 08:53 ? 來(lái)自相關(guān)話(huà)題

  解決方案:目標檢測數據標注項目分析-產(chǎn)品缺陷檢測
  什么是生產(chǎn)過(guò)程中的產(chǎn)品缺陷檢測?
  生產(chǎn)過(guò)程中的缺陷檢測是保證產(chǎn)品質(zhì)量的重要環(huán)節。通過(guò)及時(shí)發(fā)現故障或缺陷并采取適當的措施,我們可以降低與運營(yíng)和質(zhì)量相關(guān)的風(fēng)險。但是在一般的視覺(jué)系統中,每個(gè)缺陷都必須經(jīng)過(guò)檢查和預處理才能被檢測出來(lái),這可能會(huì )非常昂貴。
  在制造業(yè)中,使用攝像頭進(jìn)行缺陷檢測的解決方案數不勝數,但使用人工智能和圖像處理的方案遠勝于攝像頭。
  一種算法可以做很多事情:AI可以快速了解產(chǎn)品的外觀(guān)并實(shí)時(shí)獨立捕捉問(wèn)題,節省資金、返工,并防止消費者收到有缺陷的產(chǎn)品。
  人工智能如何用于缺陷檢測?
  圖像處理是將所有圖像數據采集
到云端數據庫中,通過(guò)幾十到上百種機器學(xué)習算法進(jìn)行評估,檢查缺陷,并提供糾正措施。評估結果可用于整個(gè)生產(chǎn)過(guò)程的風(fēng)險預測。產(chǎn)品投產(chǎn)時(shí)可規避潛在風(fēng)險。當產(chǎn)品正式投產(chǎn)后,AI缺陷檢測功能會(huì )持續監控產(chǎn)線(xiàn),將有缺陷的產(chǎn)品轉移到指定地點(diǎn)進(jìn)行后續修復。
  機器學(xué)習的應用
  
  首先,我們需要給算法一個(gè)準確的樣本。項目工程師創(chuàng )建圖像處理框架,包括要檢查的關(guān)鍵區域。算法可以專(zhuān)注于某個(gè)區域中的對象,并識別任何看起來(lái)與樣本示例不同的對象。與任何習得的技能一樣,算法會(huì )隨著(zhù)時(shí)間的推移而改進(jìn),并且同一個(gè)算法可以發(fā)現多個(gè)缺陷。
  分享一個(gè)缺陷檢測和標注項目
  1 板材會(huì )出現裂紋/凹陷等缺陷,屬于肉眼可見(jiàn)的異常,需要識別和標記
  2 最小標簽對象:5*5像素
  3 需要對所有異常情況進(jìn)行分類(lèi)(17)標簽,包括生銹、輪紋、裂紋等。
  4 種標注類(lèi)別:多邊形、點(diǎn)、折線(xiàn)
  5畫(huà)面像素:6000*6000像素
  
  我們制定了系統審查和治理流程。所有數據在發(fā)貨前都需要經(jīng)過(guò)兩次全質(zhì)檢和一次抽檢。數據可以分批下發(fā)。
  ByteBridge是一個(gè)為人工智能企業(yè)提供數據處理服務(wù)的數據標注和采集平臺
  您專(zhuān)注于產(chǎn)品,我們專(zhuān)注于您的數據
  我們提供試投標和試采服務(wù),請聯(lián)系我們
  郵箱:support@bytebridge.io
  官網(wǎng)鏈接
  解決方案:批量獲取行業(yè)關(guān)鍵詞(批量獲取行程卡數據獲?。?br />   目錄:
  1. 關(guān)鍵詞批量采集工具
  關(guān)鍵詞挖掘是我們SEO的一項重要工作,我們離不開(kāi)關(guān)鍵詞挖掘,無(wú)論是媒體還是網(wǎng)站,每個(gè)行業(yè)都有自己的行業(yè)特定詞匯對于行業(yè)關(guān)鍵詞挖掘更多長(cháng)尾關(guān)鍵詞及相關(guān)詞是我們從眾多競爭對手中脫穎而出的保證。
  2.關(guān)鍵詞軟件自動(dòng)解壓
  如何挖掘行業(yè)關(guān)鍵詞,行業(yè)關(guān)鍵詞是否準確,關(guān)鍵詞的熱度指數直接影響到我們的流量效果,今天給大家分享挖掘行業(yè)關(guān)鍵詞的方法關(guān)鍵詞: 1、百度關(guān)鍵詞相關(guān)工具 1.百度搜索下拉框 2.百度搜索結果底部相關(guān)推薦
  3. 快速提取 關(guān)鍵詞
  3.百度指數 打開(kāi)百度指數,進(jìn)入主關(guān)鍵詞,可以看到相關(guān)的熱門(mén)關(guān)鍵詞 4.百度知道 百度知道是一個(gè)問(wèn)答平臺,是最好的挖掘途徑長(cháng)尾關(guān)鍵詞 同時(shí),百度知乎也體現了對目標流量和搜索方式的關(guān)注。
  4.關(guān)鍵詞批量查詢(xún)
  
  我們可以在前兩頁(yè)找到問(wèn)答題,采集
為網(wǎng)站長(cháng)尾關(guān)鍵詞
  5. 關(guān)鍵詞批量排名
  5、百度推廣助手 百度推廣助手擁有大量精準長(cháng)尾關(guān)鍵詞,并且有更詳細的統計標簽,如高轉化率或高潛力。我們在后臺打開(kāi)百度關(guān)鍵詞工具,然后輸入主關(guān)鍵詞,系統會(huì )自動(dòng)匹配相關(guān)詞,大家可以根據需要一一篩選!.
  6.關(guān)鍵詞自動(dòng)采集軟件
  第二,搜索引擎在不同的搜索引擎中搜索我們的核心關(guān)鍵詞,通過(guò)下拉框和相關(guān)推薦,我們可以梳理出很多競爭少的好的長(cháng)尾關(guān)鍵詞。
  7. 關(guān)鍵詞 爬蟲(chóng)是什么?
  3、輸入法輸入法具有智能聯(lián)想功能。當我們輸入自己的核心詞時(shí),我們可以看到排在前面的長(cháng)尾詞,也可以為我們提供很多有用的詞。我們也可以使用容易出現錯別字的輸入法 關(guān)鍵詞 因為輸入法獨特的識別和糾錯功能,我們可以正常顯示結果。
  
  8. 關(guān)鍵詞如何獲取大數據
  但是我們可以采集
這些容易出錯的關(guān)鍵詞,利用網(wǎng)友經(jīng)常搜索的錯別字關(guān)鍵詞,優(yōu)化長(cháng)尾詞,讓我們輕松排在首頁(yè)第四,通過(guò)確定長(cháng)尾詞反義詞關(guān)鍵詞用反義詞分析來(lái)分析這個(gè)長(cháng)尾巴關(guān)鍵詞!這個(gè)也很好理解,比如:SEO成功案例和SEO失敗案例的反義詞。
  9.自動(dòng)提取關(guān)鍵詞
  就加一個(gè)與之相關(guān)的關(guān)鍵詞,形成組合,形成長(cháng)尾關(guān)鍵詞
  10.提取關(guān)鍵詞軟件
  Verb(動(dòng)詞的縮寫(xiě))競爭對手網(wǎng)站分析 最后,我們還可以使用站長(cháng)工具來(lái)分析競爭對手網(wǎng)站。在詞庫欄中,我們可以找到那些有搜索索引的詞,展開(kāi)這些詞可以得到更多的關(guān)鍵詞!
  綜上所述,我們知道如何挖掘長(cháng)尾關(guān)鍵詞,然后我們就可以根據自己網(wǎng)站的情況選擇合適的長(cháng)尾關(guān)鍵詞,循序漸進(jìn)!業(yè)界的關(guān)鍵詞優(yōu)化不能急功近利,也不能單純?yōu)榱岁P(guān)鍵詞優(yōu)化而優(yōu)化,一定要以用戶(hù)體驗為中心。 查看全部

  解決方案:目標檢測數據標注項目分析-產(chǎn)品缺陷檢測
  什么是生產(chǎn)過(guò)程中的產(chǎn)品缺陷檢測?
  生產(chǎn)過(guò)程中的缺陷檢測是保證產(chǎn)品質(zhì)量的重要環(huán)節。通過(guò)及時(shí)發(fā)現故障或缺陷并采取適當的措施,我們可以降低與運營(yíng)和質(zhì)量相關(guān)的風(fēng)險。但是在一般的視覺(jué)系統中,每個(gè)缺陷都必須經(jīng)過(guò)檢查和預處理才能被檢測出來(lái),這可能會(huì )非常昂貴。
  在制造業(yè)中,使用攝像頭進(jìn)行缺陷檢測的解決方案數不勝數,但使用人工智能和圖像處理的方案遠勝于攝像頭。
  一種算法可以做很多事情:AI可以快速了解產(chǎn)品的外觀(guān)并實(shí)時(shí)獨立捕捉問(wèn)題,節省資金、返工,并防止消費者收到有缺陷的產(chǎn)品。
  人工智能如何用于缺陷檢測?
  圖像處理是將所有圖像數據采集
到云端數據庫中,通過(guò)幾十到上百種機器學(xué)習算法進(jìn)行評估,檢查缺陷,并提供糾正措施。評估結果可用于整個(gè)生產(chǎn)過(guò)程的風(fēng)險預測。產(chǎn)品投產(chǎn)時(shí)可規避潛在風(fēng)險。當產(chǎn)品正式投產(chǎn)后,AI缺陷檢測功能會(huì )持續監控產(chǎn)線(xiàn),將有缺陷的產(chǎn)品轉移到指定地點(diǎn)進(jìn)行后續修復。
  機器學(xué)習的應用
  
  首先,我們需要給算法一個(gè)準確的樣本。項目工程師創(chuàng )建圖像處理框架,包括要檢查的關(guān)鍵區域。算法可以專(zhuān)注于某個(gè)區域中的對象,并識別任何看起來(lái)與樣本示例不同的對象。與任何習得的技能一樣,算法會(huì )隨著(zhù)時(shí)間的推移而改進(jìn),并且同一個(gè)算法可以發(fā)現多個(gè)缺陷。
  分享一個(gè)缺陷檢測和標注項目
  1 板材會(huì )出現裂紋/凹陷等缺陷,屬于肉眼可見(jiàn)的異常,需要識別和標記
  2 最小標簽對象:5*5像素
  3 需要對所有異常情況進(jìn)行分類(lèi)(17)標簽,包括生銹、輪紋、裂紋等。
  4 種標注類(lèi)別:多邊形、點(diǎn)、折線(xiàn)
  5畫(huà)面像素:6000*6000像素
  
  我們制定了系統審查和治理流程。所有數據在發(fā)貨前都需要經(jīng)過(guò)兩次全質(zhì)檢和一次抽檢。數據可以分批下發(fā)。
  ByteBridge是一個(gè)為人工智能企業(yè)提供數據處理服務(wù)的數據標注和采集平臺
  您專(zhuān)注于產(chǎn)品,我們專(zhuān)注于您的數據
  我們提供試投標和試采服務(wù),請聯(lián)系我們
  郵箱:support@bytebridge.io
  官網(wǎng)鏈接
  解決方案:批量獲取行業(yè)關(guān)鍵詞(批量獲取行程卡數據獲?。?br />   目錄:
  1. 關(guān)鍵詞批量采集工具
  關(guān)鍵詞挖掘是我們SEO的一項重要工作,我們離不開(kāi)關(guān)鍵詞挖掘,無(wú)論是媒體還是網(wǎng)站,每個(gè)行業(yè)都有自己的行業(yè)特定詞匯對于行業(yè)關(guān)鍵詞挖掘更多長(cháng)尾關(guān)鍵詞及相關(guān)詞是我們從眾多競爭對手中脫穎而出的保證。
  2.關(guān)鍵詞軟件自動(dòng)解壓
  如何挖掘行業(yè)關(guān)鍵詞,行業(yè)關(guān)鍵詞是否準確,關(guān)鍵詞的熱度指數直接影響到我們的流量效果,今天給大家分享挖掘行業(yè)關(guān)鍵詞的方法關(guān)鍵詞: 1、百度關(guān)鍵詞相關(guān)工具 1.百度搜索下拉框 2.百度搜索結果底部相關(guān)推薦
  3. 快速提取 關(guān)鍵詞
  3.百度指數 打開(kāi)百度指數,進(jìn)入主關(guān)鍵詞,可以看到相關(guān)的熱門(mén)關(guān)鍵詞 4.百度知道 百度知道是一個(gè)問(wèn)答平臺,是最好的挖掘途徑長(cháng)尾關(guān)鍵詞 同時(shí),百度知乎也體現了對目標流量和搜索方式的關(guān)注。
  4.關(guān)鍵詞批量查詢(xún)
  
  我們可以在前兩頁(yè)找到問(wèn)答題,采集
為網(wǎng)站長(cháng)尾關(guān)鍵詞
  5. 關(guān)鍵詞批量排名
  5、百度推廣助手 百度推廣助手擁有大量精準長(cháng)尾關(guān)鍵詞,并且有更詳細的統計標簽,如高轉化率或高潛力。我們在后臺打開(kāi)百度關(guān)鍵詞工具,然后輸入主關(guān)鍵詞,系統會(huì )自動(dòng)匹配相關(guān)詞,大家可以根據需要一一篩選!.
  6.關(guān)鍵詞自動(dòng)采集軟件
  第二,搜索引擎在不同的搜索引擎中搜索我們的核心關(guān)鍵詞,通過(guò)下拉框和相關(guān)推薦,我們可以梳理出很多競爭少的好的長(cháng)尾關(guān)鍵詞。
  7. 關(guān)鍵詞 爬蟲(chóng)是什么?
  3、輸入法輸入法具有智能聯(lián)想功能。當我們輸入自己的核心詞時(shí),我們可以看到排在前面的長(cháng)尾詞,也可以為我們提供很多有用的詞。我們也可以使用容易出現錯別字的輸入法 關(guān)鍵詞 因為輸入法獨特的識別和糾錯功能,我們可以正常顯示結果。
  
  8. 關(guān)鍵詞如何獲取大數據
  但是我們可以采集
這些容易出錯的關(guān)鍵詞,利用網(wǎng)友經(jīng)常搜索的錯別字關(guān)鍵詞,優(yōu)化長(cháng)尾詞,讓我們輕松排在首頁(yè)第四,通過(guò)確定長(cháng)尾詞反義詞關(guān)鍵詞用反義詞分析來(lái)分析這個(gè)長(cháng)尾巴關(guān)鍵詞!這個(gè)也很好理解,比如:SEO成功案例和SEO失敗案例的反義詞。
  9.自動(dòng)提取關(guān)鍵詞
  就加一個(gè)與之相關(guān)的關(guān)鍵詞,形成組合,形成長(cháng)尾關(guān)鍵詞
  10.提取關(guān)鍵詞軟件
  Verb(動(dòng)詞的縮寫(xiě))競爭對手網(wǎng)站分析 最后,我們還可以使用站長(cháng)工具來(lái)分析競爭對手網(wǎng)站。在詞庫欄中,我們可以找到那些有搜索索引的詞,展開(kāi)這些詞可以得到更多的關(guān)鍵詞!
  綜上所述,我們知道如何挖掘長(cháng)尾關(guān)鍵詞,然后我們就可以根據自己網(wǎng)站的情況選擇合適的長(cháng)尾關(guān)鍵詞,循序漸進(jìn)!業(yè)界的關(guān)鍵詞優(yōu)化不能急功近利,也不能單純?yōu)榱岁P(guān)鍵詞優(yōu)化而優(yōu)化,一定要以用戶(hù)體驗為中心。

解決方案:小程序云開(kāi)發(fā)之--微信公眾號文章采集篇

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 115 次瀏覽 ? 2022-11-30 03:11 ? 來(lái)自相關(guān)話(huà)題

  解決方案:小程序云開(kāi)發(fā)之--微信公眾號文章采集篇
  小程序云開(kāi)發(fā)-微信公眾號文章合集
  相信很多小伙伴都想過(guò)自己制作小程序,但是苦于沒(méi)有服務(wù)器、備案域名、網(wǎng)站ssl證書(shū)等。作為前后端的微信小程序,有很多Spring全家桶等小程序。收到后臺返回的值后,需要在小程序中添加一個(gè)合法的域名(域名備案和https協(xié)議)
  直接去這里上課
  公眾號有專(zhuān)門(mén)的接口(也有專(zhuān)門(mén)的文檔),那么如何采集
小程序的文章供自己使用呢?
  第一步:獲取access_token
  從文檔中可以看出獲取這個(gè)access_token需要以下三個(gè)參數
  grant_type的值為client_credential,用于獲取access_token
  Appid和secret可以在公眾號中找到
  完成以上配置后,就可以采集
文章了。
  我們可以手動(dòng)訪(fǎng)問(wèn)獲取token或者postman等。
  有了token之后,采集
文章就很方便了。讓我們開(kāi)始操作
  從官方文檔中我們可以看到,提供的接口還是蠻多的。
  這里以草稿箱為例。圖文、視頻等其他素材的采集方法同上。
  我們已經(jīng)有了第一個(gè) token,接下來(lái)是 offset 和 count。最后一個(gè)參數是可選的。
  獲取文章數據
  拿到材料后打印結果
  意思是我的草稿箱里有三條數據,確實(shí)只有三條數據
  文章數據處理
  我們需要獲取我們需要的參數,并添加到數據庫中
  注意??這里有個(gè)問(wèn)題,如果文章已經(jīng)被采集
了,那我們就跳過(guò)。如果所有數據都存在,則打印的文章已經(jīng)存在
  最后將數據庫沒(méi)有的數據放入數據庫。
  以下是測試結果
  如果所有數據都存在
  博客小程序:萬(wàn)神資源棧
  輸入一些代碼:
  /**
* 獲取公眾號文章信息
* @param {*} accessToken
*/
async function getWechatPosts(accessToken, offset, count) {
let url = `https://api.weixin.qq.com/cgi- ... en%3D${accessToken}`
var options = {
method: &#39;POST&#39;,
json: true,
<p>
uri: url,
body: {
"type": "news",
"offset": offset,
"count": count
}
}
const result = await rp(options)
let rbody = (typeof result === &#39;object&#39;) ? result : JSON.parse(result);
return rbody;
}
/**
* 同步文章的小程序碼
*/
async function syncPostQrCode() {
let configData = await getConfigInfo("syncPostQrCode");
if (configData == null) {
console.info("未獲取相應的配置")
return;
}
console.info(configData)
let page = parseInt(configData.value.currentOffset);
let maxCount = parseInt(configData.value.maxSyncCount);
let isContinue = true;
while (isContinue) {
let posts = await db.collection(&#39;mini_posts&#39;)
.orderBy(&#39;timestamp&#39;, &#39;asc&#39;)
.skip(page * 10)
.limit(10)
.field({
_id: true,
qrCode: true,
timestamp: true
}).get()
console.info(posts)
if (posts.data.length == 0) {
isContinue = false;
break;
  
}
for (var index in posts.data) {
if (posts.data[index].qrCode != null) {
continue
}
let scene = &#39;timestamp=&#39; + posts.data[index].timestamp;
let result = await cloud.openapi.wxacode.getUnlimited({
scene: scene,
page: &#39;pages/detail/detail&#39;
})
if (result.errCode === 0) {
const upload = await cloud.uploadFile({
cloudPath: posts.data[index]._id + &#39;.png&#39;,
fileContent: result.buffer,
})
await db.collection("mini_posts").doc(posts.data[index]._id).update({
data: {
qrCode: upload.fileID
}
});
}
}
if ((page - parseInt(configData.value.currentOffset)) * 10 > maxCount) {
isContinue = false;
}
else {
page++
}
}
let data = { currentOffset: page - 1, maxSyncCount: 100 }
await db.collection("mini_config").doc(configData._id).update({
data: {
value: data
}
});
}
</p>
  分享:樂(lè )了!文章采集神軟件現在另有這么的認知形式!
  看到本文內容不要驚訝,因為本文由考拉SEO平臺批量編輯,僅用于SEO引流。使用Kaola SEO,輕輕松松一天產(chǎn)出幾萬(wàn)篇優(yōu)質(zhì)SEO文章!如果您還需要批量編輯SEO文章,可以進(jìn)入平臺用戶(hù)中心試用!
  非常抱歉,當您瀏覽當前網(wǎng)頁(yè)時(shí),您可能獲得的內容可能不包括文章采集軟件的相關(guān)內容,因為本文案為本平臺自動(dòng)撰寫(xiě)的網(wǎng)站文章。如果你對這款批量編輯軟件的資料感興趣,不妨先把文章收錄神軟件擱置一旁,讓小編帶你體驗一下如何使用該軟件一天寫(xiě)出10000個(gè)優(yōu)秀的搜索登陸頁(yè)吧!很多用戶(hù)來(lái)到小編的介紹都會(huì )覺(jué)得這是一個(gè)偽原創(chuàng )平臺,大錯特錯!本站本質(zhì)上是一個(gè)智能寫(xiě)作工具,文字和模板都是大家一起寫(xiě)的。在網(wǎng)上很難看到類(lèi)似生成文章的內容。這個(gè)平臺是如何設計的?下面小編就為大家仔細解讀一下!
  
  想要分析文章集大神軟件的小伙伴們,你們心中急切關(guān)心的就是上面討論的內容。其實(shí)寫(xiě)一篇可讀性強的SEO落地文章很簡(jiǎn)單,但是一篇SEO文案產(chǎn)生的流量幾乎是微乎其微。如果要通過(guò)新聞頁(yè)面的設計來(lái)達到流量的目的,最重要的一點(diǎn)就是量化!一篇網(wǎng)頁(yè)文章可以獲得1次訪(fǎng)問(wèn)(一天)。如果你能生產(chǎn)10000篇文章,每天的訪(fǎng)問(wèn)量可以增加幾千。但簡(jiǎn)單來(lái)說(shuō),真正的寫(xiě)作,一個(gè)人一天只能寫(xiě)40多篇,寫(xiě)累了也就60篇左右。如果用偽原創(chuàng )軟件,很多就只有一百篇!看完這篇文章,
  什么是百度認可的真人編輯?原創(chuàng )內容并不一定代表每段原創(chuàng )輸出!在各種搜索引擎的算法詞典中,原創(chuàng )并不意味著(zhù)沒(méi)有重復的段落。按道理來(lái)說(shuō),只要你的文章和其他網(wǎng)頁(yè)的內容不完全一樣,被收錄的可能性就會(huì )大大增加。一篇優(yōu)秀的文章,充滿(mǎn)吸睛度的關(guān)鍵詞,核心思想保持不變,只要保證不重復段落,就意味著(zhù)文章還是很有可能被抓取,甚至成為好文章排水用品。比如下一篇文章,我們大概通過(guò)神馬搜索文章采集
神器軟件,然后點(diǎn)擊瀏覽。實(shí)際上,
  
  這個(gè)系統的自動(dòng)寫(xiě)文章工具,準確的說(shuō)應該叫批量寫(xiě)文章系統,可以在24小時(shí)內產(chǎn)出數萬(wàn)篇高質(zhì)量的優(yōu)化文章。只要大家的頁(yè)面質(zhì)量足夠高,收錄率至少可以達到66%。具體的應用步驟,在用戶(hù)中心有視頻展示和新手引導,大家不妨稍微測試一下!很抱歉沒(méi)有給大家帶來(lái)文章集神軟件的詳細信息,可能導致大家看了這樣的廢話(huà)。但是如果我們喜歡智能寫(xiě)文章的工具,我們可以進(jìn)入菜單欄,讓我們的頁(yè)面每天增加幾百個(gè)UV,是不是很酷? 查看全部

  解決方案:小程序云開(kāi)發(fā)之--微信公眾號文章采集
  小程序云開(kāi)發(fā)-微信公眾號文章合集
  相信很多小伙伴都想過(guò)自己制作小程序,但是苦于沒(méi)有服務(wù)器、備案域名、網(wǎng)站ssl證書(shū)等。作為前后端的微信小程序,有很多Spring全家桶等小程序。收到后臺返回的值后,需要在小程序中添加一個(gè)合法的域名(域名備案和https協(xié)議)
  直接去這里上課
  公眾號有專(zhuān)門(mén)的接口(也有專(zhuān)門(mén)的文檔),那么如何采集
小程序的文章供自己使用呢?
  第一步:獲取access_token
  從文檔中可以看出獲取這個(gè)access_token需要以下三個(gè)參數
  grant_type的值為client_credential,用于獲取access_token
  Appid和secret可以在公眾號中找到
  完成以上配置后,就可以采集
文章了。
  我們可以手動(dòng)訪(fǎng)問(wèn)獲取token或者postman等。
  有了token之后,采集
文章就很方便了。讓我們開(kāi)始操作
  從官方文檔中我們可以看到,提供的接口還是蠻多的。
  這里以草稿箱為例。圖文、視頻等其他素材的采集方法同上。
  我們已經(jīng)有了第一個(gè) token,接下來(lái)是 offset 和 count。最后一個(gè)參數是可選的。
  獲取文章數據
  拿到材料后打印結果
  意思是我的草稿箱里有三條數據,確實(shí)只有三條數據
  文章數據處理
  我們需要獲取我們需要的參數,并添加到數據庫中
  注意??這里有個(gè)問(wèn)題,如果文章已經(jīng)被采集
了,那我們就跳過(guò)。如果所有數據都存在,則打印的文章已經(jīng)存在
  最后將數據庫沒(méi)有的數據放入數據庫。
  以下是測試結果
  如果所有數據都存在
  博客小程序:萬(wàn)神資源棧
  輸入一些代碼:
  /**
* 獲取公眾號文章信息
* @param {*} accessToken
*/
async function getWechatPosts(accessToken, offset, count) {
let url = `https://api.weixin.qq.com/cgi- ... en%3D${accessToken}`
var options = {
method: &#39;POST&#39;,
json: true,
<p>
uri: url,
body: {
"type": "news",
"offset": offset,
"count": count
}
}
const result = await rp(options)
let rbody = (typeof result === &#39;object&#39;) ? result : JSON.parse(result);
return rbody;
}
/**
* 同步文章的小程序碼
*/
async function syncPostQrCode() {
let configData = await getConfigInfo("syncPostQrCode");
if (configData == null) {
console.info("未獲取相應的配置")
return;
}
console.info(configData)
let page = parseInt(configData.value.currentOffset);
let maxCount = parseInt(configData.value.maxSyncCount);
let isContinue = true;
while (isContinue) {
let posts = await db.collection(&#39;mini_posts&#39;)
.orderBy(&#39;timestamp&#39;, &#39;asc&#39;)
.skip(page * 10)
.limit(10)
.field({
_id: true,
qrCode: true,
timestamp: true
}).get()
console.info(posts)
if (posts.data.length == 0) {
isContinue = false;
break;
  
}
for (var index in posts.data) {
if (posts.data[index].qrCode != null) {
continue
}
let scene = &#39;timestamp=&#39; + posts.data[index].timestamp;
let result = await cloud.openapi.wxacode.getUnlimited({
scene: scene,
page: &#39;pages/detail/detail&#39;
})
if (result.errCode === 0) {
const upload = await cloud.uploadFile({
cloudPath: posts.data[index]._id + &#39;.png&#39;,
fileContent: result.buffer,
})
await db.collection("mini_posts").doc(posts.data[index]._id).update({
data: {
qrCode: upload.fileID
}
});
}
}
if ((page - parseInt(configData.value.currentOffset)) * 10 > maxCount) {
isContinue = false;
}
else {
page++
}
}
let data = { currentOffset: page - 1, maxSyncCount: 100 }
await db.collection("mini_config").doc(configData._id).update({
data: {
value: data
}
});
}
</p>
  分享:樂(lè )了!文章采集神軟件現在另有這么的認知形式!
  看到本文內容不要驚訝,因為本文由考拉SEO平臺批量編輯,僅用于SEO引流。使用Kaola SEO,輕輕松松一天產(chǎn)出幾萬(wàn)篇優(yōu)質(zhì)SEO文章!如果您還需要批量編輯SEO文章,可以進(jìn)入平臺用戶(hù)中心試用!
  非常抱歉,當您瀏覽當前網(wǎng)頁(yè)時(shí),您可能獲得的內容可能不包括文章采集軟件的相關(guān)內容,因為本文案為本平臺自動(dòng)撰寫(xiě)的網(wǎng)站文章。如果你對這款批量編輯軟件的資料感興趣,不妨先把文章收錄神軟件擱置一旁,讓小編帶你體驗一下如何使用該軟件一天寫(xiě)出10000個(gè)優(yōu)秀的搜索登陸頁(yè)吧!很多用戶(hù)來(lái)到小編的介紹都會(huì )覺(jué)得這是一個(gè)偽原創(chuàng )平臺,大錯特錯!本站本質(zhì)上是一個(gè)智能寫(xiě)作工具,文字和模板都是大家一起寫(xiě)的。在網(wǎng)上很難看到類(lèi)似生成文章的內容。這個(gè)平臺是如何設計的?下面小編就為大家仔細解讀一下!
  
  想要分析文章集大神軟件的小伙伴們,你們心中急切關(guān)心的就是上面討論的內容。其實(shí)寫(xiě)一篇可讀性強的SEO落地文章很簡(jiǎn)單,但是一篇SEO文案產(chǎn)生的流量幾乎是微乎其微。如果要通過(guò)新聞頁(yè)面的設計來(lái)達到流量的目的,最重要的一點(diǎn)就是量化!一篇網(wǎng)頁(yè)文章可以獲得1次訪(fǎng)問(wèn)(一天)。如果你能生產(chǎn)10000篇文章,每天的訪(fǎng)問(wèn)量可以增加幾千。但簡(jiǎn)單來(lái)說(shuō),真正的寫(xiě)作,一個(gè)人一天只能寫(xiě)40多篇,寫(xiě)累了也就60篇左右。如果用偽原創(chuàng )軟件,很多就只有一百篇!看完這篇文章,
  什么是百度認可的真人編輯?原創(chuàng )內容并不一定代表每段原創(chuàng )輸出!在各種搜索引擎的算法詞典中,原創(chuàng )并不意味著(zhù)沒(méi)有重復的段落。按道理來(lái)說(shuō),只要你的文章和其他網(wǎng)頁(yè)的內容不完全一樣,被收錄的可能性就會(huì )大大增加。一篇優(yōu)秀的文章,充滿(mǎn)吸睛度的關(guān)鍵詞,核心思想保持不變,只要保證不重復段落,就意味著(zhù)文章還是很有可能被抓取,甚至成為好文章排水用品。比如下一篇文章,我們大概通過(guò)神馬搜索文章采集
神器軟件,然后點(diǎn)擊瀏覽。實(shí)際上,
  
  這個(gè)系統的自動(dòng)寫(xiě)文章工具,準確的說(shuō)應該叫批量寫(xiě)文章系統,可以在24小時(shí)內產(chǎn)出數萬(wàn)篇高質(zhì)量的優(yōu)化文章。只要大家的頁(yè)面質(zhì)量足夠高,收錄率至少可以達到66%。具體的應用步驟,在用戶(hù)中心有視頻展示和新手引導,大家不妨稍微測試一下!很抱歉沒(méi)有給大家帶來(lái)文章集神軟件的詳細信息,可能導致大家看了這樣的廢話(huà)。但是如果我們喜歡智能寫(xiě)文章的工具,我們可以進(jìn)入菜單欄,讓我們的頁(yè)面每天增加幾百個(gè)UV,是不是很酷?

解決方案:文章實(shí)時(shí)采集平臺的流程(組圖)互聯(lián)網(wǎng)+

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 103 次瀏覽 ? 2022-11-29 20:19 ? 來(lái)自相關(guān)話(huà)題

  解決方案:文章實(shí)時(shí)采集平臺的流程(組圖)互聯(lián)網(wǎng)+
  文章實(shí)時(shí)采集平臺是指在監管、社會(huì )保障等方面對農民收入、城鎮化進(jìn)程、結構調整、工業(yè)化等進(jìn)行管理、預測與經(jīng)驗分享的公共服務(wù)平臺,提供市場(chǎng)經(jīng)濟新的公共服務(wù)和信息資源。這類(lèi)平臺將傳統的在線(xiàn)信息交流擴展到以互聯(lián)網(wǎng)為基礎,向公眾開(kāi)放的新型交流模式。實(shí)時(shí)采集平臺的流程工業(yè)互聯(lián)網(wǎng)“三產(chǎn)融合”是指:“產(chǎn)業(yè)”指制造業(yè)和工業(yè)(即生產(chǎn)環(huán)節),“互聯(lián)網(wǎng)”指互聯(lián)網(wǎng)+、人工智能、大數據等,“工業(yè)互聯(lián)網(wǎng)”是指工業(yè)模式與工業(yè)應用相結合。
  
  農村電子商務(wù)試點(diǎn)城市,每?jì)赡陼?huì )有1家工業(yè)互聯(lián)網(wǎng)或者工業(yè)機器人相關(guān)企業(yè),到2018年有2家工業(yè)互聯(lián)網(wǎng)或者工業(yè)機器人相關(guān)企業(yè),是指這些企業(yè)首先從制造業(yè)電子商務(wù)和工業(yè)電子商務(wù)著(zhù)手,來(lái)引導市場(chǎng)對工業(yè)產(chǎn)品定價(jià)、品牌服務(wù)、價(jià)格策略、企業(yè)服務(wù)等的關(guān)注?!半娮由虅?wù)模式推進(jìn)轉型升級,創(chuàng )新消費形態(tài)發(fā)展”,是指當今時(shí)代,電子商務(wù)越來(lái)越多被認為是消費形態(tài)的轉變,是消費者或者商家成功與消費者、與市場(chǎng)、與企業(yè)溝通的一種有效渠道。
  據了解,目前,發(fā)達國家及發(fā)展中國家制造業(yè)工業(yè)轉型升級的各類(lèi)指標都進(jìn)入到最佳狀態(tài):工業(yè)增加值年均增長(cháng)率超過(guò)10%,有效投資、投資項目成績(jì)也不俗,多數企業(yè)實(shí)現收入增長(cháng),制造業(yè)企業(yè)實(shí)現貿易順差和外貿結構調整,制造業(yè)總體形勢好轉。如何促進(jìn)制造業(yè)工業(yè)轉型升級,實(shí)現新一輪增長(cháng)?工業(yè)互聯(lián)網(wǎng)或許可以幫助到這一切。實(shí)時(shí)采集平臺就是其中一個(gè)。
  
  如何為工業(yè)互聯(lián)網(wǎng)的各個(gè)環(huán)節提供服務(wù)?將應用場(chǎng)景劃分為產(chǎn)業(yè)供應鏈、產(chǎn)業(yè)全流程、產(chǎn)業(yè)生產(chǎn)過(guò)程三個(gè)層次,并推出相應的解決方案。產(chǎn)業(yè)供應鏈層次作為制造企業(yè)唯一能夠獲取信息的入口,通過(guò)實(shí)時(shí)采集平臺及其智能的運算模式,為制造企業(yè)提供產(chǎn)業(yè)鏈、鏈條中不同環(huán)節的數據實(shí)時(shí)采集,驅動(dòng)企業(yè)提升運營(yíng)水平和效率。產(chǎn)業(yè)全流程層次通過(guò)實(shí)時(shí)采集平臺的多路視頻,為制造企業(yè)提供制造全流程的物流、零售、服務(wù)、網(wǎng)絡(luò )、智能化等完整業(yè)務(wù)流程情況的數據實(shí)時(shí)采集。
  產(chǎn)業(yè)生產(chǎn)過(guò)程層次通過(guò)實(shí)時(shí)采集平臺提供的制造車(chē)間、生產(chǎn)線(xiàn)、廠(chǎng)區、制造設備等視頻,為制造企業(yè)提供實(shí)時(shí)庫存視頻、生產(chǎn)成本、生產(chǎn)、生產(chǎn)過(guò)程精準分析等實(shí)時(shí)信息。實(shí)時(shí)采集平臺聯(lián)合中國工程院院士張裕春教授等共同創(chuàng )辦,在平臺上首次嘗試實(shí)時(shí)采集探針技術(shù)。應用可以是簡(jiǎn)單在線(xiàn)觀(guān)看,也可以是單方面的導航。涉及的各方關(guān)系一般分為“系統”和“設備”。
  “系統”是不同環(huán)節實(shí)時(shí)采集的指標,被落地于自治機構、設備廠(chǎng)商、工程院等各個(gè)業(yè)務(wù)方,成為定制化應用,并被聯(lián)動(dòng)。后期可以成為流量入口,讓用戶(hù)在訂閱后實(shí)時(shí)采集以應對后續需求的變化?!霸O備”。 查看全部

  解決方案:文章實(shí)時(shí)采集平臺的流程(組圖)互聯(lián)網(wǎng)+
  文章實(shí)時(shí)采集平臺是指在監管、社會(huì )保障等方面對農民收入、城鎮化進(jìn)程、結構調整、工業(yè)化等進(jìn)行管理、預測與經(jīng)驗分享的公共服務(wù)平臺,提供市場(chǎng)經(jīng)濟新的公共服務(wù)和信息資源。這類(lèi)平臺將傳統的在線(xiàn)信息交流擴展到以互聯(lián)網(wǎng)為基礎,向公眾開(kāi)放的新型交流模式。實(shí)時(shí)采集平臺的流程工業(yè)互聯(lián)網(wǎng)“三產(chǎn)融合”是指:“產(chǎn)業(yè)”指制造業(yè)和工業(yè)(即生產(chǎn)環(huán)節),“互聯(lián)網(wǎng)”指互聯(lián)網(wǎng)+、人工智能、大數據等,“工業(yè)互聯(lián)網(wǎng)”是指工業(yè)模式與工業(yè)應用相結合。
  
  農村電子商務(wù)試點(diǎn)城市,每?jì)赡陼?huì )有1家工業(yè)互聯(lián)網(wǎng)或者工業(yè)機器人相關(guān)企業(yè),到2018年有2家工業(yè)互聯(lián)網(wǎng)或者工業(yè)機器人相關(guān)企業(yè),是指這些企業(yè)首先從制造業(yè)電子商務(wù)和工業(yè)電子商務(wù)著(zhù)手,來(lái)引導市場(chǎng)對工業(yè)產(chǎn)品定價(jià)、品牌服務(wù)、價(jià)格策略、企業(yè)服務(wù)等的關(guān)注?!半娮由虅?wù)模式推進(jìn)轉型升級,創(chuàng )新消費形態(tài)發(fā)展”,是指當今時(shí)代,電子商務(wù)越來(lái)越多被認為是消費形態(tài)的轉變,是消費者或者商家成功與消費者、與市場(chǎng)、與企業(yè)溝通的一種有效渠道。
  據了解,目前,發(fā)達國家及發(fā)展中國家制造業(yè)工業(yè)轉型升級的各類(lèi)指標都進(jìn)入到最佳狀態(tài):工業(yè)增加值年均增長(cháng)率超過(guò)10%,有效投資、投資項目成績(jì)也不俗,多數企業(yè)實(shí)現收入增長(cháng),制造業(yè)企業(yè)實(shí)現貿易順差和外貿結構調整,制造業(yè)總體形勢好轉。如何促進(jìn)制造業(yè)工業(yè)轉型升級,實(shí)現新一輪增長(cháng)?工業(yè)互聯(lián)網(wǎng)或許可以幫助到這一切。實(shí)時(shí)采集平臺就是其中一個(gè)。
  
  如何為工業(yè)互聯(lián)網(wǎng)的各個(gè)環(huán)節提供服務(wù)?將應用場(chǎng)景劃分為產(chǎn)業(yè)供應鏈、產(chǎn)業(yè)全流程、產(chǎn)業(yè)生產(chǎn)過(guò)程三個(gè)層次,并推出相應的解決方案。產(chǎn)業(yè)供應鏈層次作為制造企業(yè)唯一能夠獲取信息的入口,通過(guò)實(shí)時(shí)采集平臺及其智能的運算模式,為制造企業(yè)提供產(chǎn)業(yè)鏈、鏈條中不同環(huán)節的數據實(shí)時(shí)采集,驅動(dòng)企業(yè)提升運營(yíng)水平和效率。產(chǎn)業(yè)全流程層次通過(guò)實(shí)時(shí)采集平臺的多路視頻,為制造企業(yè)提供制造全流程的物流、零售、服務(wù)、網(wǎng)絡(luò )、智能化等完整業(yè)務(wù)流程情況的數據實(shí)時(shí)采集。
  產(chǎn)業(yè)生產(chǎn)過(guò)程層次通過(guò)實(shí)時(shí)采集平臺提供的制造車(chē)間、生產(chǎn)線(xiàn)、廠(chǎng)區、制造設備等視頻,為制造企業(yè)提供實(shí)時(shí)庫存視頻、生產(chǎn)成本、生產(chǎn)、生產(chǎn)過(guò)程精準分析等實(shí)時(shí)信息。實(shí)時(shí)采集平臺聯(lián)合中國工程院院士張裕春教授等共同創(chuàng )辦,在平臺上首次嘗試實(shí)時(shí)采集探針技術(shù)。應用可以是簡(jiǎn)單在線(xiàn)觀(guān)看,也可以是單方面的導航。涉及的各方關(guān)系一般分為“系統”和“設備”。
  “系統”是不同環(huán)節實(shí)時(shí)采集的指標,被落地于自治機構、設備廠(chǎng)商、工程院等各個(gè)業(yè)務(wù)方,成為定制化應用,并被聯(lián)動(dòng)。后期可以成為流量入口,讓用戶(hù)在訂閱后實(shí)時(shí)采集以應對后續需求的變化?!霸O備”。

解決方案:大數據實(shí)時(shí)計算及可視化相關(guān)組件介紹

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 105 次瀏覽 ? 2022-11-29 16:29 ? 來(lái)自相關(guān)話(huà)題

  解決方案:大數據實(shí)時(shí)計算及可視化相關(guān)組件介紹
  大數據實(shí)時(shí)計算與可視化相關(guān)組件介紹
  文章目錄
  一、實(shí)時(shí)數據平臺架構
  【外鏈圖片傳輸失敗,源站可能有防盜鏈機制,建議保存圖片直接上傳(img-KHp2HTV8-30)(實(shí)時(shí)數據采集分析可視化.assets/real -時(shí)間數據平臺架構.png)]
  大數據實(shí)時(shí)計算平臺的支撐技術(shù)主要包括七個(gè)方面:
  實(shí)時(shí)計算的典型特征:
  2 實(shí)時(shí)采集日志數據
  任何一個(gè)完整的大數據平臺一般都包括以下流程:
  其中,數據采集作為大數據系統體系的第一環(huán)節尤為重要。隨著(zhù)大數據越來(lái)越受到重視,如何有效、正確地采集
數據才能最大程度避免信息孤島,讓數據產(chǎn)生更多價(jià)值,這使得數據采集
面臨的挑戰尤為突出,包括:
  下面為大家介紹目前可用的六款數據采集產(chǎn)品,深入了解
  2.1 Apache Flume原理介紹
  Apache Flume 是一個(gè)開(kāi)源日志系統。作為一個(gè)分布式、可靠、高可用的海量日志聚合系統,不僅支持在系統中自定義各種數據發(fā)送方進(jìn)行數據采集
;同時(shí)也提供簡(jiǎn)單的數據處理和寫(xiě)入各種數據的Receiver(可定制)能力。Flume支持將集群外的日志文件采集歸檔到HDFS、HBase、Kafka中,供上層應用分析、清洗數據,如下圖所示:
  下面介紹一下Flume的核心概念
  2.1.1 代理結構
  Flume 的數據流是由事件貫穿的。Event是Flume的基本數據單元,承載日志數據(字節數組形式),承載頭信息。Flume運行的核心是agent,Flume以agent作為最小的獨立運行單元。它是一個(gè)完整的數據采集工具,收錄
三個(gè)組件,即source、channel和sink。這些事件由代理外部的源生成。事件可以通過(guò)這些組件從一個(gè)地方流向另一個(gè)地方。
  當Source捕獲到事件后,會(huì )執行特定的格式,然后Source將事件推送到(單個(gè)或多個(gè))Channel中。Channel 可以被認為是一個(gè)緩沖區,它將保存事件,直到 Sink 完成對事件的處理。Sink 負責持久化日志或將事件推送到另一個(gè) Source。Flume 事件被定義為一個(gè)數據流單元。Flume agent實(shí)際上是一個(gè)JVM進(jìn)程,收錄
了完成任務(wù)所需的各種組件,其中最核心的三個(gè)組件是Source、Chanel和Slink。
  2.1.2 基本概念(Source、Channel、Sink)
  Source負責通過(guò)一種特殊的機制接收事件或產(chǎn)生事件,并將事件批處理到一個(gè)或多個(gè)Channel中(Source必須關(guān)聯(lián)至少一個(gè)channel)。有兩種類(lèi)型的源:驅動(dòng)和輪詢(xún):
  來(lái)源類(lèi)型:
  【外鏈圖片傳輸失敗,源站可能有防盜鏈機制,建議保存圖片直接上傳(img-GavJl6Ic-46)(實(shí)時(shí)數據采集分析可視化.assets/Source類(lèi)型.png)]
  Channel 位于 Source 和 Sink 之間。Channel 就像一個(gè)隊列,用于臨時(shí)緩存傳入的事件。當 Sink 成功將事件發(fā)送到下一跳通道或最終目的地時(shí),事件將從通道中刪除。
  不同的通道提供不同級別的持久性:
  Channels 支持事物,提供較弱的順序保證,并且可以連接任意數量的 Sources 和 Sinks。
  2.1.3 Flume 的主要特點(diǎn)
  2.2 流利的
  Fluentd 在各個(gè)方面都與 Flume 非常相似。不同的是它是用Ruby開(kāi)發(fā)的,占用空間會(huì )更小。但是也帶來(lái)了跨平臺的問(wèn)題,無(wú)法支持Windows平臺。此外,使用JSON統一數據/日志格式是它的另一個(gè)特點(diǎn)。與Flume相比,它的配置相對簡(jiǎn)單。
  2.3 日志存儲
  Logstash 是一個(gè)應用日志和事件的傳輸、處理、管理和搜索的平臺??捎糜诮y一采集
和管理應用日志,并提供Web接口進(jìn)行查詢(xún)和統計。就是著(zhù)名的開(kāi)源數據棧ELK(ElasticSearch、Logstash、Kibana)中的L。幾乎在大多數情況下,ELK同時(shí)被用作堆棧。只有當數據系統使用ElasticSearch時(shí),首選logstash即可。
  2.4 楚夸語(yǔ)
  Apache Chukwa是apache下的另一個(gè)開(kāi)源數據采集平臺。上次 github 更新是 7 年前,項目應該已經(jīng)不活躍了。
  2.5 抄寫(xiě)員
  
  Scribe 是 Facebook 開(kāi)發(fā)的數據(日志)采集
系統。它可以從各種日志源采集
日志,并存儲在一個(gè)中央存儲系統(可以是NFS、分布式文件系統等)中進(jìn)行集中統計分析和處理。但是多年來(lái)一直沒(méi)有得到維護。
  2.6 對比分析
  Flume 和 Fluentd 是兩個(gè)廣泛使用的產(chǎn)品。如果使用 ElasticSearch,Logstash 可能是首選,因為 ELK stack 提供了很好的集成。由于項目不活躍,不推薦使用 Chukwa 和 Scribe。
  3 消息隊列
  沒(méi)有最好的消息隊列中間件(簡(jiǎn)稱(chēng)消息中間件),只有最合適的消息中間件。
  消息隊列的常見(jiàn)使用場(chǎng)景:
  幾種常用消息隊列的比較
  比較有代表性的是kafka和rabbitMQ。下面分別介紹兩者:
  3.1 Kafka原理介紹
  Kafka 是 LinkedIn 開(kāi)發(fā)的高吞吐量分布式消息系統,用 Scala 編寫(xiě)。它是一個(gè)高吞吐量、分布式、基于發(fā)布-訂閱的消息系統,同時(shí)支持離線(xiàn)和在線(xiàn)日志處理。使用Kafka技術(shù),可以在廉價(jià)的PC Server上搭建一個(gè)大規模的消息系統。目前,越來(lái)越多的開(kāi)源分布式處理系統如Cloudera、Apache Storm、Spark、Flink等都支持與Kafka的集成。
  在Kafka中,根據保存消息時(shí)的主題,消息的發(fā)布者被描述為生產(chǎn)者,消息的訂閱者被描述為消費者,中間的存儲數組被稱(chēng)為代理(agent)。這三者都通過(guò) Zookeeper 進(jìn)行協(xié)調。
  3.1.1 Kafka架構及功能
  【外鏈圖片傳輸失敗,源站可能有防盜鏈接機制,建議保存圖片直接上傳(img-S3969YXk-76)(C:\Users\lee\Desktop\Real-time數據采集??、分析與可視化\Kafka圖片\Kafka架構.png)】
  基本概念:
  3.1.2 Kafka的特點(diǎn) 3.1.3 Kafka的應用場(chǎng)景
  Kafka與其他組件相比,具有消息持久化、高吞吐、分布式、多客戶(hù)端支持、實(shí)時(shí)性等特點(diǎn),適用于離線(xiàn)和在線(xiàn)消息消費,如定時(shí)消息采集、網(wǎng)站活動(dòng)跟蹤、大數據量的互聯(lián)網(wǎng)業(yè)務(wù)的聚合統計系統運行數據(監控數據)、日志采集等數據采集場(chǎng)景。具體應用場(chǎng)景如下:
  日志采集
:一個(gè)公司可以使用Kafka采集
各種服務(wù)的日志,通過(guò)Kafka作為一個(gè)統一的接口服務(wù)開(kāi)放給各種消費者,比如Hadoop、Hbase、Solr等;消息系統:與生產(chǎn)者和消費者、Cache消息等解耦;用戶(hù)活動(dòng)跟蹤:Kafka常用于記錄web用戶(hù)或app用戶(hù)的各種活動(dòng),如瀏覽網(wǎng)??頁(yè)、搜索、點(diǎn)擊等活動(dòng)??梢酝ㄟ^(guò)訂閱這些主題進(jìn)行實(shí)時(shí)監控和分析,也可以加載到Hadoop或數據倉庫中進(jìn)行離線(xiàn)分析和挖掘;運營(yíng)指標:Kafka也經(jīng)常被用來(lái)記錄運營(yíng)監控數據。包括采集各種分布式應用的數據,產(chǎn)生各種操作的集中反饋,如告警、報表等;流處理:比如 Spark Streaming 和 Storm;事件源;
  3.2 rabbitMQ原理介紹
  Erlang語(yǔ)言實(shí)現的AMQP協(xié)議的消息中間件,最初起源于金融系統,用于分布式系統中消息的存儲和轉發(fā)。RabbitMQ發(fā)展到今天并被越來(lái)越多的人所認可,這與它在可靠性、可用性、可擴展性和豐富功能等方面的出色表現是分不開(kāi)的。
  優(yōu)勢:
  缺點(diǎn):
  3.3 對比分析
  應用:
  在架構模型方面:
  吞吐量:
  在可用性方面:
  在集群負載均衡方面:
  總結
  Kafka目前已經(jīng)成為大數據系統異步消息和分布式消息之間的最佳選擇。
  4 純/準實(shí)時(shí)計算 4.1 Spark原理介紹
  
  Spark 最初由加州大學(xué)伯克利分校 (UCBerkeley) 的 AMP 實(shí)驗室于 2009 年開(kāi)發(fā)。Spark 是一種基于內存的分布式批處理引擎,可用于構建大規模、低延遲的數據分析應用程序。Spark是集批處理、實(shí)時(shí)流計算、交互式查詢(xún)、圖計算、機器學(xué)習于一體的一站式解決方案。其架構圖如下圖所示:
  Spark SQL:Spark 中用于結構化數據處理的模塊。
  Structured Streaming:基于 Spark SQL 引擎構建的流式數據處理引擎。
  Spark Streaming:實(shí)時(shí)計算框架。
  Mlib:是機器學(xué)習的框架
  GraphX:圖計算
  Spark R:R語(yǔ)言解析
  4.1.1 星火特點(diǎn):
  Spark具有以下主要特點(diǎn):
  4.1.2 Spark適用場(chǎng)景: 4.1.3 Spark Streaming簡(jiǎn)介:
  Spark Streaming 是 Spark 核心 API 的擴展,是一種實(shí)時(shí)計算框架。特定于可擴展性、高吞吐量、容錯等。
  Spark Streaming 計算基于 DStream,它將流式計算分解為一系列短的批處理作業(yè)。Spark 引擎從數據中生成最終的結果數據。使用 DStream 從 Kafka 和 HDFS 等源獲取連續的數據流。DStream 由一系列連續的 RDD 組成。每個(gè) RDD 收錄
特定時(shí)間間隔的數據。對 DStreams 的任何操作都會(huì )轉換為對 RDD 的操作。
  4.2 Flink 原理介紹
  Flink是一個(gè)分布式、高性能、高可用、高精度的數據流應用開(kāi)源流處理框架。Flink 的核心是提供對數據流的數據分發(fā)、通信和容錯分布式計算。同時(shí),Flink 在流處理引擎上提供批流融合計算能力和 SQL 表達式能力。
  4.2.1 Flink 特性 4.2.2 Flink 主要特性 4.2.3 Hadoop 兼容性 4.2.4 Flink 應用場(chǎng)景
  Flink最適合的應用場(chǎng)景是低延遲的數據處理場(chǎng)景:高并發(fā)數據處理、毫秒級實(shí)驗、可靠性。
  典型的應用場(chǎng)景包括:
  4.3 對比分析 5 可視化展示(插件介紹) 5.1 Echarts
  ECharts 是一個(gè)用 JavaScript 實(shí)現的開(kāi)源可視化庫。
  特征
  5.2 數據V
  DataV是阿里云出品的拖拽式可視化工具。
  特征:
  例子
  5.3 D3.js
  D3的全稱(chēng)是(Data-Driven Documents),是一個(gè)JavaScript函數庫,主要用于數據可視化。
  特征
  5.4 螞蟻V
  AntV是螞蟻金服-體驗技術(shù)部-數據圖形組的開(kāi)源項目,原名G2(The Grammar Of Graphics)
  特征
  5.5 6例對比分析
  待升級
  解決方案:哪個(gè)SPC軟件好用?SPC數據采集軟件?自動(dòng)生成圖表的SPC采集軟件
  市面上很多采集軟件只能采集EXCEL中的數據,需要手動(dòng)操作。ROZRZ基于云端的智能自動(dòng)采集系統,無(wú)需人工干預。測量完成后自動(dòng)保存數據庫,自動(dòng)生成SPC圖表,自動(dòng)導出EXCEL。哪個(gè)SPC軟件好用?SPC數據采集軟件?自動(dòng)生成圖表的SPC采集軟件
  SPC的主要內容是XR控制圖。根據圖表中的數值,生成對應的X控制圖和R控制圖,方便查看。同樣,還有 X-MR 控制圖和 P 控制圖。
  例:P控制圖界面風(fēng)格:
  數據采集??的內容主要是設置相應的接口信息、采集項、內容,實(shí)現數據采集的功能。主要包括設備通訊設置、數據采集變量設置、數據采集界面對比、工藝設備采集參數、數據采集與執行五個(gè)頁(yè)面。
  設備通訊設置主要是設置串口信息,包括串口選擇、波特率、計算機名等信息。數據采集??變量設置和接口比對,就是確定接口的變量字段,存儲到對應的表中,完成數據采集操作。工藝設備采集參數用于確定采集哪些工藝和設備,執行二次數據采集是設置采集的內容。
  示例:工藝設備采集參數樣式圖:
  1.確定關(guān)鍵流程
  
  一個(gè)產(chǎn)品質(zhì)量的形成需要經(jīng)過(guò)很多道工序(工序),其中有些工序對產(chǎn)品的質(zhì)量起著(zhù)至關(guān)重要的作用。這樣的過(guò)程稱(chēng)為關(guān)鍵過(guò)程。SPC控制圖應首先用于關(guān)鍵過(guò)程,而不是所有過(guò)程。因此,要實(shí)施SPC,首先要確定關(guān)鍵工序。然后,對關(guān)鍵流程進(jìn)行分析研究,識別流程的結構(輸入、輸出、資源、活動(dòng)等)。
  2.確定過(guò)程的關(guān)鍵變量(特征)
  分析關(guān)鍵過(guò)程(因果圖、排列圖等)可以找出對產(chǎn)品質(zhì)量影響最大的變量(特征)。
  3、制定過(guò)程控制計劃和規范
  這一步往往是最困難和最耗時(shí)的,一些實(shí)驗方法可以參考相關(guān)標準。
  4.采集
整理過(guò)程數據
  5、過(guò)程控制狀態(tài)初步分析
  使用控制圖進(jìn)行分析,分析過(guò)程是否受控和穩定。如發(fā)現失控或有特殊原因變化時(shí),應采取措施。
  注意:此時(shí),過(guò)程的分布中心(X)和均值差σ,以及控制圖邊界可能是未知的。
  
  6.過(guò)程能力分析
  只有當過(guò)程受控且穩定時(shí),才需要分析過(guò)程能力。當發(fā)現過(guò)程能力不足時(shí),應采取措施。
  7、SPC控制圖監控
  只有過(guò)程受控穩定,過(guò)程能力足夠,才能采用監控用的控制圖,進(jìn)入SPC實(shí)施階段。
  8. 監控、診斷、改進(jìn)
  在監測過(guò)程中,發(fā)現異常時(shí),應及時(shí)分析原因,采取措施使過(guò)程恢復正常。對于受控和穩定的過(guò)程,還需要持續改進(jìn)以減少變異的常見(jiàn)原因、提高質(zhì)量和降低成本。
  產(chǎn)品質(zhì)量的形成需要很多工序(工序),其中有些工序對產(chǎn)品質(zhì)量起著(zhù)至關(guān)重要的作用,這樣的工序稱(chēng)為關(guān)鍵工序,對關(guān)鍵工序應優(yōu)先使用SPC控制圖,而不是對所有工序都使用SPC控制圖??刂茍D是一種測量、記錄、評價(jià)和監控生產(chǎn)過(guò)程的關(guān)鍵質(zhì)量特征值以及過(guò)程是否受控的圖形化方法。根據假設檢驗的原理構建圖表,以監控生產(chǎn)過(guò)程是否受控。它是統計質(zhì)量管理的重要手段和工具。 查看全部

  解決方案:大數據實(shí)時(shí)計算及可視化相關(guān)組件介紹
  大數據實(shí)時(shí)計算與可視化相關(guān)組件介紹
  文章目錄
  一、實(shí)時(shí)數據平臺架構
  【外鏈圖片傳輸失敗,源站可能有防盜鏈機制,建議保存圖片直接上傳(img-KHp2HTV8-30)(實(shí)時(shí)數據采集分析可視化.assets/real -時(shí)間數據平臺架構.png)]
  大數據實(shí)時(shí)計算平臺的支撐技術(shù)主要包括七個(gè)方面:
  實(shí)時(shí)計算的典型特征:
  2 實(shí)時(shí)采集日志數據
  任何一個(gè)完整的大數據平臺一般都包括以下流程:
  其中,數據采集作為大數據系統體系的第一環(huán)節尤為重要。隨著(zhù)大數據越來(lái)越受到重視,如何有效、正確地采集
數據才能最大程度避免信息孤島,讓數據產(chǎn)生更多價(jià)值,這使得數據采集
面臨的挑戰尤為突出,包括:
  下面為大家介紹目前可用的六款數據采集產(chǎn)品,深入了解
  2.1 Apache Flume原理介紹
  Apache Flume 是一個(gè)開(kāi)源日志系統。作為一個(gè)分布式、可靠、高可用的海量日志聚合系統,不僅支持在系統中自定義各種數據發(fā)送方進(jìn)行數據采集
;同時(shí)也提供簡(jiǎn)單的數據處理和寫(xiě)入各種數據的Receiver(可定制)能力。Flume支持將集群外的日志文件采集歸檔到HDFS、HBase、Kafka中,供上層應用分析、清洗數據,如下圖所示:
  下面介紹一下Flume的核心概念
  2.1.1 代理結構
  Flume 的數據流是由事件貫穿的。Event是Flume的基本數據單元,承載日志數據(字節數組形式),承載頭信息。Flume運行的核心是agent,Flume以agent作為最小的獨立運行單元。它是一個(gè)完整的數據采集工具,收錄
三個(gè)組件,即source、channel和sink。這些事件由代理外部的源生成。事件可以通過(guò)這些組件從一個(gè)地方流向另一個(gè)地方。
  當Source捕獲到事件后,會(huì )執行特定的格式,然后Source將事件推送到(單個(gè)或多個(gè))Channel中。Channel 可以被認為是一個(gè)緩沖區,它將保存事件,直到 Sink 完成對事件的處理。Sink 負責持久化日志或將事件推送到另一個(gè) Source。Flume 事件被定義為一個(gè)數據流單元。Flume agent實(shí)際上是一個(gè)JVM進(jìn)程,收錄
了完成任務(wù)所需的各種組件,其中最核心的三個(gè)組件是Source、Chanel和Slink。
  2.1.2 基本概念(Source、Channel、Sink)
  Source負責通過(guò)一種特殊的機制接收事件或產(chǎn)生事件,并將事件批處理到一個(gè)或多個(gè)Channel中(Source必須關(guān)聯(lián)至少一個(gè)channel)。有兩種類(lèi)型的源:驅動(dòng)和輪詢(xún):
  來(lái)源類(lèi)型:
  【外鏈圖片傳輸失敗,源站可能有防盜鏈機制,建議保存圖片直接上傳(img-GavJl6Ic-46)(實(shí)時(shí)數據采集分析可視化.assets/Source類(lèi)型.png)]
  Channel 位于 Source 和 Sink 之間。Channel 就像一個(gè)隊列,用于臨時(shí)緩存傳入的事件。當 Sink 成功將事件發(fā)送到下一跳通道或最終目的地時(shí),事件將從通道中刪除。
  不同的通道提供不同級別的持久性:
  Channels 支持事物,提供較弱的順序保證,并且可以連接任意數量的 Sources 和 Sinks。
  2.1.3 Flume 的主要特點(diǎn)
  2.2 流利的
  Fluentd 在各個(gè)方面都與 Flume 非常相似。不同的是它是用Ruby開(kāi)發(fā)的,占用空間會(huì )更小。但是也帶來(lái)了跨平臺的問(wèn)題,無(wú)法支持Windows平臺。此外,使用JSON統一數據/日志格式是它的另一個(gè)特點(diǎn)。與Flume相比,它的配置相對簡(jiǎn)單。
  2.3 日志存儲
  Logstash 是一個(gè)應用日志和事件的傳輸、處理、管理和搜索的平臺??捎糜诮y一采集
和管理應用日志,并提供Web接口進(jìn)行查詢(xún)和統計。就是著(zhù)名的開(kāi)源數據棧ELK(ElasticSearch、Logstash、Kibana)中的L。幾乎在大多數情況下,ELK同時(shí)被用作堆棧。只有當數據系統使用ElasticSearch時(shí),首選logstash即可。
  2.4 楚夸語(yǔ)
  Apache Chukwa是apache下的另一個(gè)開(kāi)源數據采集平臺。上次 github 更新是 7 年前,項目應該已經(jīng)不活躍了。
  2.5 抄寫(xiě)員
  
  Scribe 是 Facebook 開(kāi)發(fā)的數據(日志)采集
系統。它可以從各種日志源采集
日志,并存儲在一個(gè)中央存儲系統(可以是NFS、分布式文件系統等)中進(jìn)行集中統計分析和處理。但是多年來(lái)一直沒(méi)有得到維護。
  2.6 對比分析
  Flume 和 Fluentd 是兩個(gè)廣泛使用的產(chǎn)品。如果使用 ElasticSearch,Logstash 可能是首選,因為 ELK stack 提供了很好的集成。由于項目不活躍,不推薦使用 Chukwa 和 Scribe。
  3 消息隊列
  沒(méi)有最好的消息隊列中間件(簡(jiǎn)稱(chēng)消息中間件),只有最合適的消息中間件。
  消息隊列的常見(jiàn)使用場(chǎng)景:
  幾種常用消息隊列的比較
  比較有代表性的是kafka和rabbitMQ。下面分別介紹兩者:
  3.1 Kafka原理介紹
  Kafka 是 LinkedIn 開(kāi)發(fā)的高吞吐量分布式消息系統,用 Scala 編寫(xiě)。它是一個(gè)高吞吐量、分布式、基于發(fā)布-訂閱的消息系統,同時(shí)支持離線(xiàn)和在線(xiàn)日志處理。使用Kafka技術(shù),可以在廉價(jià)的PC Server上搭建一個(gè)大規模的消息系統。目前,越來(lái)越多的開(kāi)源分布式處理系統如Cloudera、Apache Storm、Spark、Flink等都支持與Kafka的集成。
  在Kafka中,根據保存消息時(shí)的主題,消息的發(fā)布者被描述為生產(chǎn)者,消息的訂閱者被描述為消費者,中間的存儲數組被稱(chēng)為代理(agent)。這三者都通過(guò) Zookeeper 進(jìn)行協(xié)調。
  3.1.1 Kafka架構及功能
  【外鏈圖片傳輸失敗,源站可能有防盜鏈接機制,建議保存圖片直接上傳(img-S3969YXk-76)(C:\Users\lee\Desktop\Real-time數據采集??、分析與可視化\Kafka圖片\Kafka架構.png)】
  基本概念:
  3.1.2 Kafka的特點(diǎn) 3.1.3 Kafka的應用場(chǎng)景
  Kafka與其他組件相比,具有消息持久化、高吞吐、分布式、多客戶(hù)端支持、實(shí)時(shí)性等特點(diǎn),適用于離線(xiàn)和在線(xiàn)消息消費,如定時(shí)消息采集、網(wǎng)站活動(dòng)跟蹤、大數據量的互聯(lián)網(wǎng)業(yè)務(wù)的聚合統計系統運行數據(監控數據)、日志采集等數據采集場(chǎng)景。具體應用場(chǎng)景如下:
  日志采集
:一個(gè)公司可以使用Kafka采集
各種服務(wù)的日志,通過(guò)Kafka作為一個(gè)統一的接口服務(wù)開(kāi)放給各種消費者,比如Hadoop、Hbase、Solr等;消息系統:與生產(chǎn)者和消費者、Cache消息等解耦;用戶(hù)活動(dòng)跟蹤:Kafka常用于記錄web用戶(hù)或app用戶(hù)的各種活動(dòng),如瀏覽網(wǎng)??頁(yè)、搜索、點(diǎn)擊等活動(dòng)??梢酝ㄟ^(guò)訂閱這些主題進(jìn)行實(shí)時(shí)監控和分析,也可以加載到Hadoop或數據倉庫中進(jìn)行離線(xiàn)分析和挖掘;運營(yíng)指標:Kafka也經(jīng)常被用來(lái)記錄運營(yíng)監控數據。包括采集各種分布式應用的數據,產(chǎn)生各種操作的集中反饋,如告警、報表等;流處理:比如 Spark Streaming 和 Storm;事件源;
  3.2 rabbitMQ原理介紹
  Erlang語(yǔ)言實(shí)現的AMQP協(xié)議的消息中間件,最初起源于金融系統,用于分布式系統中消息的存儲和轉發(fā)。RabbitMQ發(fā)展到今天并被越來(lái)越多的人所認可,這與它在可靠性、可用性、可擴展性和豐富功能等方面的出色表現是分不開(kāi)的。
  優(yōu)勢:
  缺點(diǎn):
  3.3 對比分析
  應用:
  在架構模型方面:
  吞吐量:
  在可用性方面:
  在集群負載均衡方面:
  總結
  Kafka目前已經(jīng)成為大數據系統異步消息和分布式消息之間的最佳選擇。
  4 純/準實(shí)時(shí)計算 4.1 Spark原理介紹
  
  Spark 最初由加州大學(xué)伯克利分校 (UCBerkeley) 的 AMP 實(shí)驗室于 2009 年開(kāi)發(fā)。Spark 是一種基于內存的分布式批處理引擎,可用于構建大規模、低延遲的數據分析應用程序。Spark是集批處理、實(shí)時(shí)流計算、交互式查詢(xún)、圖計算、機器學(xué)習于一體的一站式解決方案。其架構圖如下圖所示:
  Spark SQL:Spark 中用于結構化數據處理的模塊。
  Structured Streaming:基于 Spark SQL 引擎構建的流式數據處理引擎。
  Spark Streaming:實(shí)時(shí)計算框架。
  Mlib:是機器學(xué)習的框架
  GraphX:圖計算
  Spark R:R語(yǔ)言解析
  4.1.1 星火特點(diǎn):
  Spark具有以下主要特點(diǎn):
  4.1.2 Spark適用場(chǎng)景: 4.1.3 Spark Streaming簡(jiǎn)介:
  Spark Streaming 是 Spark 核心 API 的擴展,是一種實(shí)時(shí)計算框架。特定于可擴展性、高吞吐量、容錯等。
  Spark Streaming 計算基于 DStream,它將流式計算分解為一系列短的批處理作業(yè)。Spark 引擎從數據中生成最終的結果數據。使用 DStream 從 Kafka 和 HDFS 等源獲取連續的數據流。DStream 由一系列連續的 RDD 組成。每個(gè) RDD 收錄
特定時(shí)間間隔的數據。對 DStreams 的任何操作都會(huì )轉換為對 RDD 的操作。
  4.2 Flink 原理介紹
  Flink是一個(gè)分布式、高性能、高可用、高精度的數據流應用開(kāi)源流處理框架。Flink 的核心是提供對數據流的數據分發(fā)、通信和容錯分布式計算。同時(shí),Flink 在流處理引擎上提供批流融合計算能力和 SQL 表達式能力。
  4.2.1 Flink 特性 4.2.2 Flink 主要特性 4.2.3 Hadoop 兼容性 4.2.4 Flink 應用場(chǎng)景
  Flink最適合的應用場(chǎng)景是低延遲的數據處理場(chǎng)景:高并發(fā)數據處理、毫秒級實(shí)驗、可靠性。
  典型的應用場(chǎng)景包括:
  4.3 對比分析 5 可視化展示(插件介紹) 5.1 Echarts
  ECharts 是一個(gè)用 JavaScript 實(shí)現的開(kāi)源可視化庫。
  特征
  5.2 數據V
  DataV是阿里云出品的拖拽式可視化工具。
  特征:
  例子
  5.3 D3.js
  D3的全稱(chēng)是(Data-Driven Documents),是一個(gè)JavaScript函數庫,主要用于數據可視化。
  特征
  5.4 螞蟻V
  AntV是螞蟻金服-體驗技術(shù)部-數據圖形組的開(kāi)源項目,原名G2(The Grammar Of Graphics)
  特征
  5.5 6例對比分析
  待升級
  解決方案:哪個(gè)SPC軟件好用?SPC數據采集軟件?自動(dòng)生成圖表的SPC采集軟件
  市面上很多采集軟件只能采集EXCEL中的數據,需要手動(dòng)操作。ROZRZ基于云端的智能自動(dòng)采集系統,無(wú)需人工干預。測量完成后自動(dòng)保存數據庫,自動(dòng)生成SPC圖表,自動(dòng)導出EXCEL。哪個(gè)SPC軟件好用?SPC數據采集軟件?自動(dòng)生成圖表的SPC采集軟件
  SPC的主要內容是XR控制圖。根據圖表中的數值,生成對應的X控制圖和R控制圖,方便查看。同樣,還有 X-MR 控制圖和 P 控制圖。
  例:P控制圖界面風(fēng)格:
  數據采集??的內容主要是設置相應的接口信息、采集項、內容,實(shí)現數據采集的功能。主要包括設備通訊設置、數據采集變量設置、數據采集界面對比、工藝設備采集參數、數據采集與執行五個(gè)頁(yè)面。
  設備通訊設置主要是設置串口信息,包括串口選擇、波特率、計算機名等信息。數據采集??變量設置和接口比對,就是確定接口的變量字段,存儲到對應的表中,完成數據采集操作。工藝設備采集參數用于確定采集哪些工藝和設備,執行二次數據采集是設置采集的內容。
  示例:工藝設備采集參數樣式圖:
  1.確定關(guān)鍵流程
  
  一個(gè)產(chǎn)品質(zhì)量的形成需要經(jīng)過(guò)很多道工序(工序),其中有些工序對產(chǎn)品的質(zhì)量起著(zhù)至關(guān)重要的作用。這樣的過(guò)程稱(chēng)為關(guān)鍵過(guò)程。SPC控制圖應首先用于關(guān)鍵過(guò)程,而不是所有過(guò)程。因此,要實(shí)施SPC,首先要確定關(guān)鍵工序。然后,對關(guān)鍵流程進(jìn)行分析研究,識別流程的結構(輸入、輸出、資源、活動(dòng)等)。
  2.確定過(guò)程的關(guān)鍵變量(特征)
  分析關(guān)鍵過(guò)程(因果圖、排列圖等)可以找出對產(chǎn)品質(zhì)量影響最大的變量(特征)。
  3、制定過(guò)程控制計劃和規范
  這一步往往是最困難和最耗時(shí)的,一些實(shí)驗方法可以參考相關(guān)標準。
  4.采集
整理過(guò)程數據
  5、過(guò)程控制狀態(tài)初步分析
  使用控制圖進(jìn)行分析,分析過(guò)程是否受控和穩定。如發(fā)現失控或有特殊原因變化時(shí),應采取措施。
  注意:此時(shí),過(guò)程的分布中心(X)和均值差σ,以及控制圖邊界可能是未知的。
  
  6.過(guò)程能力分析
  只有當過(guò)程受控且穩定時(shí),才需要分析過(guò)程能力。當發(fā)現過(guò)程能力不足時(shí),應采取措施。
  7、SPC控制圖監控
  只有過(guò)程受控穩定,過(guò)程能力足夠,才能采用監控用的控制圖,進(jìn)入SPC實(shí)施階段。
  8. 監控、診斷、改進(jìn)
  在監測過(guò)程中,發(fā)現異常時(shí),應及時(shí)分析原因,采取措施使過(guò)程恢復正常。對于受控和穩定的過(guò)程,還需要持續改進(jìn)以減少變異的常見(jiàn)原因、提高質(zhì)量和降低成本。
  產(chǎn)品質(zhì)量的形成需要很多工序(工序),其中有些工序對產(chǎn)品質(zhì)量起著(zhù)至關(guān)重要的作用,這樣的工序稱(chēng)為關(guān)鍵工序,對關(guān)鍵工序應優(yōu)先使用SPC控制圖,而不是對所有工序都使用SPC控制圖??刂茍D是一種測量、記錄、評價(jià)和監控生產(chǎn)過(guò)程的關(guān)鍵質(zhì)量特征值以及過(guò)程是否受控的圖形化方法。根據假設檢驗的原理構建圖表,以監控生產(chǎn)過(guò)程是否受控。它是統計質(zhì)量管理的重要手段和工具。

最新信息:怎樣實(shí)時(shí)采集網(wǎng)站最新數據

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 133 次瀏覽 ? 2022-11-27 13:57 ? 來(lái)自相關(guān)話(huà)題

  最新信息:怎樣實(shí)時(shí)采集網(wǎng)站最新數據
  如果您需要監控和采集
招標和采購信息;或需要監控和采集
財經(jīng)新聞;或需要監控和采集
招聘內容;或者您需要監控和采集
輿論內容。繼續閱讀,目標是及時(shí)發(fā)現網(wǎng)站更新并在很短的時(shí)間內自動(dòng)采集
數據。
  由于每個(gè)網(wǎng)站的內容格式不同,因此需要有針對性的定制數據采集
方案。
  1、實(shí)時(shí)監控更新和內容采集原則:首先,在監控主機上運行網(wǎng)站信息監控軟件,添加需要監控的URL,監控網(wǎng)站的首頁(yè)或欄目列表頁(yè)。發(fā)現更新后,更新的新聞標題和鏈接會(huì )立即發(fā)送到集合主機。當采集
主機收到新聞鏈接時(shí),它會(huì )自動(dòng)使用木制瀏覽器打開(kāi)網(wǎng)頁(yè),采集
新聞標題和正文內容,然后將其保存到數據庫或導出Excel表格文件,或填寫(xiě)表單并提交給其他系統。其中,監控主機和采集主機可以部署在不同的計算機上,也可以部署在同一臺計算機上,它們通過(guò)網(wǎng)絡(luò )接口實(shí)現數據傳輸。
  監控采集原理圖
  2、先在監控主機上部署網(wǎng)站信息監控軟件,添加需要監控的URL,可以選擇監控網(wǎng)站的首頁(yè)或欄目。只要超鏈接列表格式的網(wǎng)頁(yè)可以直接監控,其他特殊格式的頁(yè)面就需要添加相應的監控方案。每個(gè)監控網(wǎng)站可以設置不同的監控頻率,對實(shí)時(shí)性要求高的網(wǎng)站設置高頻監控。多個(gè)獨立于 URL 的線(xiàn)程以自己的頻率同時(shí)進(jìn)行監視。您也可以按關(guān)鍵詞過(guò)濾無(wú)效內容,具體參數設置請參考軟件手冊和案例教程。
  監控網(wǎng)站更新
  3. 在監控告警選項卡中,選擇“發(fā)送鏈路到外部網(wǎng)絡(luò )接口”,并設置接收端的IP地址和端口號,這里是采集主機127.0.0.1的IP地址和正在監聽(tīng)的8888端口。當監控任何網(wǎng)站更新時(shí),將發(fā)送更新的內容和鏈接。
  發(fā)送更新鏈接
  4、在采集主機上打開(kāi)木制瀏覽器,選擇“自動(dòng)控制”菜單,打開(kāi)“外部接口”,在彈出的外部接口窗口中將監聽(tīng)端口號設置為8888。設置接收數據時(shí)要執行的指定自動(dòng)控制項目文件。如果同時(shí)接收多條數據,軟件還可以按設定的時(shí)間間隔按順序處理每條數據。選中“程序啟動(dòng)時(shí)自動(dòng)開(kāi)始偵聽(tīng)”,以便您可以在啟動(dòng)瀏覽器后立即接收數據,而無(wú)需打開(kāi)外部界面表單。
  接收新鏈接
  
  5. 打開(kāi)瀏覽器的項目經(jīng)理,創(chuàng )建自動(dòng)控制項目。首先創(chuàng )建一個(gè)新步驟打開(kāi)網(wǎng)頁(yè),在輸入URL的控件中右鍵點(diǎn)擊,選擇外部變量@link,即監控主機接收的數據中的link參數。執行項目時(shí),將自動(dòng)打開(kāi)此內容 URL。
  打開(kāi)鏈接網(wǎng)址
  6.創(chuàng )建元素監控步驟,監控內容頁(yè)面的標題,通過(guò)標題內容,可以解讀內容來(lái)自哪個(gè)網(wǎng)站,然后跳轉到相應的數據采集步驟。這相當于編程中的多條件語(yǔ)句。若要選擇跳轉步驟,需要完成本文的步驟 7,然后返回進(jìn)行修改。
  確定源網(wǎng)站
  7. 創(chuàng )建一個(gè)信息抓取步驟,從網(wǎng)頁(yè)中抓取標題和正文內容。 將作為變量保存在軟件中。以相同的方式為每個(gè)網(wǎng)站創(chuàng )建數據爬網(wǎng)步驟和爬網(wǎng)內容參數。在這里,您還可以添加分析和過(guò)濾信息內容,確定不必要的不相關(guān)內容,并終止采集
和保存。
  頁(yè)面數據采集
  8. 如果要將采集到的內容保存到數據庫中,可以新建“執行SQL”步驟,設置數據庫連接參數,并支持mssql、mysql、oracle、sqlite等數據庫。輸入 insert 連接 SQL 語(yǔ)句,通過(guò)右鍵菜單將標題和正文變量插入到 SQL 語(yǔ)句中。通過(guò)在執行項目時(shí)替換變量,內容將直接保存到數據庫中。
  保存到數據庫
  9.如何將采集
的數據保存到Excel表格文件中,
  
  創(chuàng )建一個(gè)“保存數據”步驟,選擇保存到Excel格式,輸入保存路徑和文件名,點(diǎn)擊設置內容按鈕,就可以選擇需要保存的變量,這里選擇標題和正文。
  保存到 Excel 工作表
  10.如果需要采集
內容,請填寫(xiě)表單并添加到其他系統,創(chuàng )建一個(gè)新步驟打開(kāi)網(wǎng)頁(yè),添加該系統的URL(此處省略登錄步驟),然后打開(kāi)表單用于向系統添加數據。
  打開(kāi)“添加數據”網(wǎng)頁(yè)
  11.創(chuàng )建一個(gè)步驟來(lái)填寫(xiě)內容,并在表單對應的輸入框中填寫(xiě)內容。首先,獲取輸入框元素,在內容框中單擊鼠標右鍵,然后選擇需要輸入的變量。
  自動(dòng)填充表單
  12.填寫(xiě)完表單后,再增加一步點(diǎn)擊提交按鈕,將采集到的內容添加到新系統中。
  提交表格
  從監控數據更新到數據采集
,保存到數據庫或添加到其他系統,整個(gè)過(guò)程可以在無(wú)人值守的情況下完全自動(dòng)完成。并且監控采集軟件可以放在后臺運行,不影響電腦正常使用做其他工作。返回搜狐查看更多
  最新版:怪物聯(lián)盟采集推送軟件 V1.0 綠色免費版
  怪物聯(lián)盟采集
推送軟件是一款適合QQ群推廣的淘客推廣軟件。操作簡(jiǎn)單,可以快速采集
產(chǎn)品信息,輕松推廣。有需要的用戶(hù)不要錯過(guò)。
  【使用說(shuō)明】
  
  1、解壓包中有兩個(gè)壓縮文件。分別是,mpq官方版壓縮包和怪物合集壓縮包。單獨解壓
  2、打開(kāi)mpq壓縮包解壓后的文件夾,選擇“core”文件,點(diǎn)擊打開(kāi)。選擇“賬號”,在空白處右擊選擇“編輯”,輸入QQ賬號密碼。點(diǎn)擊添加,添加選擇右鍵登錄,此時(shí)QQ登錄成功。
  3.關(guān)閉核心程序。打開(kāi)怪物合集壓縮包文件,將“VipNBQDLL.xx.dll”復制粘貼到mpq文件夾下的“Plugin”文件夾中。這時(shí),重新打開(kāi)“核心”程序。選擇“插件”選項。您將看到一個(gè)插件,右鍵單擊以啟用它。這時(shí)候核心軟件設置就ok了。
  4.然后打開(kāi)怪物采集
文件夾,找到“怪物聯(lián)盟”程序。點(diǎn)擊打開(kāi)配置相應的信息。
  
  5.首先登錄聯(lián)盟,這里的賬號就是你的淘寶客賬號。如果沒(méi)有直接去申請。具體應用教程請見(jiàn)另一篇文章。淘客賬號申請教程。
  6、登錄淘寶賬號后,點(diǎn)擊刷新推廣位置。點(diǎn)擊刷新后,您淘寶賬號設置的促銷(xiāo)位會(huì )自動(dòng)列出,您可以選擇對應的促銷(xiāo)位。一般是QQ群推廣位。
  7.勾選自動(dòng)申請高額傭金。請隨意填寫(xiě)申請原因。一般不受影響。
  8.然后開(kāi)始采集
產(chǎn)品內容。在右側頁(yè)碼設置中填寫(xiě)云商品庫對應的頁(yè)碼。只需點(diǎn)擊采集
。通常一次采集
一頁(yè)。如果要捕獲多個(gè)頁(yè)面?全選并添加到推送列表。然后重新進(jìn)入頁(yè)數捕獲。集合被完全選中并添加到推送列表中。 查看全部

  最新信息:怎樣實(shí)時(shí)采集網(wǎng)站最新數據
  如果您需要監控和采集
招標和采購信息;或需要監控和采集
財經(jīng)新聞;或需要監控和采集
招聘內容;或者您需要監控和采集
輿論內容。繼續閱讀,目標是及時(shí)發(fā)現網(wǎng)站更新并在很短的時(shí)間內自動(dòng)采集
數據。
  由于每個(gè)網(wǎng)站的內容格式不同,因此需要有針對性的定制數據采集
方案。
  1、實(shí)時(shí)監控更新和內容采集原則:首先,在監控主機上運行網(wǎng)站信息監控軟件,添加需要監控的URL,監控網(wǎng)站的首頁(yè)或欄目列表頁(yè)。發(fā)現更新后,更新的新聞標題和鏈接會(huì )立即發(fā)送到集合主機。當采集
主機收到新聞鏈接時(shí),它會(huì )自動(dòng)使用木制瀏覽器打開(kāi)網(wǎng)頁(yè),采集
新聞標題和正文內容,然后將其保存到數據庫或導出Excel表格文件,或填寫(xiě)表單并提交給其他系統。其中,監控主機和采集主機可以部署在不同的計算機上,也可以部署在同一臺計算機上,它們通過(guò)網(wǎng)絡(luò )接口實(shí)現數據傳輸。
  監控采集原理圖
  2、先在監控主機上部署網(wǎng)站信息監控軟件,添加需要監控的URL,可以選擇監控網(wǎng)站的首頁(yè)或欄目。只要超鏈接列表格式的網(wǎng)頁(yè)可以直接監控,其他特殊格式的頁(yè)面就需要添加相應的監控方案。每個(gè)監控網(wǎng)站可以設置不同的監控頻率,對實(shí)時(shí)性要求高的網(wǎng)站設置高頻監控。多個(gè)獨立于 URL 的線(xiàn)程以自己的頻率同時(shí)進(jìn)行監視。您也可以按關(guān)鍵詞過(guò)濾無(wú)效內容,具體參數設置請參考軟件手冊和案例教程。
  監控網(wǎng)站更新
  3. 在監控告警選項卡中,選擇“發(fā)送鏈路到外部網(wǎng)絡(luò )接口”,并設置接收端的IP地址和端口號,這里是采集主機127.0.0.1的IP地址和正在監聽(tīng)的8888端口。當監控任何網(wǎng)站更新時(shí),將發(fā)送更新的內容和鏈接。
  發(fā)送更新鏈接
  4、在采集主機上打開(kāi)木制瀏覽器,選擇“自動(dòng)控制”菜單,打開(kāi)“外部接口”,在彈出的外部接口窗口中將監聽(tīng)端口號設置為8888。設置接收數據時(shí)要執行的指定自動(dòng)控制項目文件。如果同時(shí)接收多條數據,軟件還可以按設定的時(shí)間間隔按順序處理每條數據。選中“程序啟動(dòng)時(shí)自動(dòng)開(kāi)始偵聽(tīng)”,以便您可以在啟動(dòng)瀏覽器后立即接收數據,而無(wú)需打開(kāi)外部界面表單。
  接收新鏈接
  
  5. 打開(kāi)瀏覽器的項目經(jīng)理,創(chuàng )建自動(dòng)控制項目。首先創(chuàng )建一個(gè)新步驟打開(kāi)網(wǎng)頁(yè),在輸入URL的控件中右鍵點(diǎn)擊,選擇外部變量@link,即監控主機接收的數據中的link參數。執行項目時(shí),將自動(dòng)打開(kāi)此內容 URL。
  打開(kāi)鏈接網(wǎng)址
  6.創(chuàng )建元素監控步驟,監控內容頁(yè)面的標題,通過(guò)標題內容,可以解讀內容來(lái)自哪個(gè)網(wǎng)站,然后跳轉到相應的數據采集步驟。這相當于編程中的多條件語(yǔ)句。若要選擇跳轉步驟,需要完成本文的步驟 7,然后返回進(jìn)行修改。
  確定源網(wǎng)站
  7. 創(chuàng )建一個(gè)信息抓取步驟,從網(wǎng)頁(yè)中抓取標題和正文內容。 將作為變量保存在軟件中。以相同的方式為每個(gè)網(wǎng)站創(chuàng )建數據爬網(wǎng)步驟和爬網(wǎng)內容參數。在這里,您還可以添加分析和過(guò)濾信息內容,確定不必要的不相關(guān)內容,并終止采集
和保存。
  頁(yè)面數據采集
  8. 如果要將采集到的內容保存到數據庫中,可以新建“執行SQL”步驟,設置數據庫連接參數,并支持mssql、mysql、oracle、sqlite等數據庫。輸入 insert 連接 SQL 語(yǔ)句,通過(guò)右鍵菜單將標題和正文變量插入到 SQL 語(yǔ)句中。通過(guò)在執行項目時(shí)替換變量,內容將直接保存到數據庫中。
  保存到數據庫
  9.如何將采集
的數據保存到Excel表格文件中,
  
  創(chuàng )建一個(gè)“保存數據”步驟,選擇保存到Excel格式,輸入保存路徑和文件名,點(diǎn)擊設置內容按鈕,就可以選擇需要保存的變量,這里選擇標題和正文。
  保存到 Excel 工作表
  10.如果需要采集
內容,請填寫(xiě)表單并添加到其他系統,創(chuàng )建一個(gè)新步驟打開(kāi)網(wǎng)頁(yè),添加該系統的URL(此處省略登錄步驟),然后打開(kāi)表單用于向系統添加數據。
  打開(kāi)“添加數據”網(wǎng)頁(yè)
  11.創(chuàng )建一個(gè)步驟來(lái)填寫(xiě)內容,并在表單對應的輸入框中填寫(xiě)內容。首先,獲取輸入框元素,在內容框中單擊鼠標右鍵,然后選擇需要輸入的變量。
  自動(dòng)填充表單
  12.填寫(xiě)完表單后,再增加一步點(diǎn)擊提交按鈕,將采集到的內容添加到新系統中。
  提交表格
  從監控數據更新到數據采集
,保存到數據庫或添加到其他系統,整個(gè)過(guò)程可以在無(wú)人值守的情況下完全自動(dòng)完成。并且監控采集軟件可以放在后臺運行,不影響電腦正常使用做其他工作。返回搜狐查看更多
  最新版:怪物聯(lián)盟采集推送軟件 V1.0 綠色免費版
  怪物聯(lián)盟采集
推送軟件是一款適合QQ群推廣的淘客推廣軟件。操作簡(jiǎn)單,可以快速采集
產(chǎn)品信息,輕松推廣。有需要的用戶(hù)不要錯過(guò)。
  【使用說(shuō)明】
  
  1、解壓包中有兩個(gè)壓縮文件。分別是,mpq官方版壓縮包和怪物合集壓縮包。單獨解壓
  2、打開(kāi)mpq壓縮包解壓后的文件夾,選擇“core”文件,點(diǎn)擊打開(kāi)。選擇“賬號”,在空白處右擊選擇“編輯”,輸入QQ賬號密碼。點(diǎn)擊添加,添加選擇右鍵登錄,此時(shí)QQ登錄成功。
  3.關(guān)閉核心程序。打開(kāi)怪物合集壓縮包文件,將“VipNBQDLL.xx.dll”復制粘貼到mpq文件夾下的“Plugin”文件夾中。這時(shí),重新打開(kāi)“核心”程序。選擇“插件”選項。您將看到一個(gè)插件,右鍵單擊以啟用它。這時(shí)候核心軟件設置就ok了。
  4.然后打開(kāi)怪物采集
文件夾,找到“怪物聯(lián)盟”程序。點(diǎn)擊打開(kāi)配置相應的信息。
  
  5.首先登錄聯(lián)盟,這里的賬號就是你的淘寶客賬號。如果沒(méi)有直接去申請。具體應用教程請見(jiàn)另一篇文章。淘客賬號申請教程。
  6、登錄淘寶賬號后,點(diǎn)擊刷新推廣位置。點(diǎn)擊刷新后,您淘寶賬號設置的促銷(xiāo)位會(huì )自動(dòng)列出,您可以選擇對應的促銷(xiāo)位。一般是QQ群推廣位。
  7.勾選自動(dòng)申請高額傭金。請隨意填寫(xiě)申請原因。一般不受影響。
  8.然后開(kāi)始采集
產(chǎn)品內容。在右側頁(yè)碼設置中填寫(xiě)云商品庫對應的頁(yè)碼。只需點(diǎn)擊采集
。通常一次采集
一頁(yè)。如果要捕獲多個(gè)頁(yè)面?全選并添加到推送列表。然后重新進(jìn)入頁(yè)數捕獲。集合被完全選中并添加到推送列表中。

匯總:文章實(shí)時(shí)采集某app頁(yè)面靜態(tài)數據下載及markdown解析解析

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 123 次瀏覽 ? 2022-11-25 06:31 ? 來(lái)自相關(guān)話(huà)題

  匯總:文章實(shí)時(shí)采集某app頁(yè)面靜態(tài)數據下載及markdown解析解析
  文章實(shí)時(shí)采集某app頁(yè)面靜態(tài)數據,以文章title和date為關(guān)鍵字采集到知乎站內數據組的全部問(wèn)題信息,并格式化為xml數據代碼下載及markdown解析(以下兩步會(huì )打包放在目錄下,數據都存在共享文件夾,數據只對需要的開(kāi)發(fā)者才開(kāi)放,具體思路請看本人專(zhuān)欄上部。更多內容請看目錄)demodemo鏈接:(為了以后更好的寫(xiě)示例,不需要了解java開(kāi)發(fā),我會(huì )采用c#)2.7工程代碼頁(yè)面如上,demo采用defaultapplicationdemo,也就是無(wú)狀態(tài)工程(不指定登錄postmetro是不會(huì )寫(xiě)入數據的,我會(huì )對數據進(jìn)行初始化,并上傳全站數據)2.7工程代碼不包含java框架開(kāi)發(fā),需要在開(kāi)發(fā)c#工程過(guò)程中,閱讀java代碼才能理解原理,所以開(kāi)發(fā)c#工程,還需要一些c#知識才能閱讀有效代碼解決方案:第一步:將上傳的知乎所有問(wèn)題信息轉化為html代碼,使用bower對各個(gè)頁(yè)面api進(jìn)行開(kāi)發(fā)2.7工程代碼頁(yè)面如上,demo采用defaultapplicationdemo,也就是無(wú)狀態(tài)工程(不指定登錄postmetro是不會(huì )寫(xiě)入數據的,我會(huì )對數據進(jìn)行初始化,并上傳全站數據)2.7工程代碼不包含java框架開(kāi)發(fā),需要在開(kāi)發(fā)c#工程過(guò)程中,閱讀java代碼才能理解原理,所以開(kāi)發(fā)c#工程,還需要一些c#知識才能閱讀有效代碼解決方案:我先用知乎下的weblogic運行,具體步驟見(jiàn)本人文章點(diǎn)擊postmetro概述:http請求示例代碼:注意:我這里用的是java,只要打java代碼就可以了第二步:先在c#工程中寫(xiě)postmetrojson文件,注意c#工程中要指定工程啟動(dòng)路徑,不然上傳完工程代碼在idea中運行時(shí)會(huì )報錯compilingpostmetroweblogicintoexternal...3.1.準備數據,不需要針對知乎使用eclipse編寫(xiě)目錄下的getting-started.xml,包含知乎所有頁(yè)面api3.2.指定路徑,編譯下,打包成工程,同時(shí)數據文件名要指定eclipse中javaweblogic目錄名,目錄下的test1/merge-json.xmlproperties3.3.寫(xiě)入知乎所有頁(yè)面數據,通過(guò)openxmlhttp來(lái)對知乎頁(yè)面進(jìn)行讀寫(xiě),可以同時(shí)寫(xiě)入多次以保證整個(gè)頁(yè)面同步,openxmlxml級exception:withxml.exceptionexpected‘timeout’toaddtimer(。
  
  1)withopenxml()expectedtoaddtimer
  
  3)withopenxml(c)expectedtoaddtimer
  1).來(lái)自java方向的外行方案:3.1.在idea中 查看全部

  匯總:文章實(shí)時(shí)采集某app頁(yè)面靜態(tài)數據下載及markdown解析解析
  文章實(shí)時(shí)采集某app頁(yè)面靜態(tài)數據,以文章title和date為關(guān)鍵字采集到知乎站內數據組的全部問(wèn)題信息,并格式化為xml數據代碼下載及markdown解析(以下兩步會(huì )打包放在目錄下,數據都存在共享文件夾,數據只對需要的開(kāi)發(fā)者才開(kāi)放,具體思路請看本人專(zhuān)欄上部。更多內容請看目錄)demodemo鏈接:(為了以后更好的寫(xiě)示例,不需要了解java開(kāi)發(fā),我會(huì )采用c#)2.7工程代碼頁(yè)面如上,demo采用defaultapplicationdemo,也就是無(wú)狀態(tài)工程(不指定登錄postmetro是不會(huì )寫(xiě)入數據的,我會(huì )對數據進(jìn)行初始化,并上傳全站數據)2.7工程代碼不包含java框架開(kāi)發(fā),需要在開(kāi)發(fā)c#工程過(guò)程中,閱讀java代碼才能理解原理,所以開(kāi)發(fā)c#工程,還需要一些c#知識才能閱讀有效代碼解決方案:第一步:將上傳的知乎所有問(wèn)題信息轉化為html代碼,使用bower對各個(gè)頁(yè)面api進(jìn)行開(kāi)發(fā)2.7工程代碼頁(yè)面如上,demo采用defaultapplicationdemo,也就是無(wú)狀態(tài)工程(不指定登錄postmetro是不會(huì )寫(xiě)入數據的,我會(huì )對數據進(jìn)行初始化,并上傳全站數據)2.7工程代碼不包含java框架開(kāi)發(fā),需要在開(kāi)發(fā)c#工程過(guò)程中,閱讀java代碼才能理解原理,所以開(kāi)發(fā)c#工程,還需要一些c#知識才能閱讀有效代碼解決方案:我先用知乎下的weblogic運行,具體步驟見(jiàn)本人文章點(diǎn)擊postmetro概述:http請求示例代碼:注意:我這里用的是java,只要打java代碼就可以了第二步:先在c#工程中寫(xiě)postmetrojson文件,注意c#工程中要指定工程啟動(dòng)路徑,不然上傳完工程代碼在idea中運行時(shí)會(huì )報錯compilingpostmetroweblogicintoexternal...3.1.準備數據,不需要針對知乎使用eclipse編寫(xiě)目錄下的getting-started.xml,包含知乎所有頁(yè)面api3.2.指定路徑,編譯下,打包成工程,同時(shí)數據文件名要指定eclipse中javaweblogic目錄名,目錄下的test1/merge-json.xmlproperties3.3.寫(xiě)入知乎所有頁(yè)面數據,通過(guò)openxmlhttp來(lái)對知乎頁(yè)面進(jìn)行讀寫(xiě),可以同時(shí)寫(xiě)入多次以保證整個(gè)頁(yè)面同步,openxmlxml級exception:withxml.exceptionexpected‘timeout’toaddtimer(。
  
  1)withopenxml()expectedtoaddtimer
  
  3)withopenxml(c)expectedtoaddtimer
  1).來(lái)自java方向的外行方案:3.1.在idea中

解決方案:基于Binlog實(shí)時(shí)同步數據倉庫問(wèn)題總結

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 88 次瀏覽 ? 2022-11-25 01:19 ? 來(lái)自相關(guān)話(huà)題

  解決方案:基于Binlog實(shí)時(shí)同步數據倉庫問(wèn)題總結
  前言
  今天刷公眾號的時(shí)候,看到了這篇文章:基于Binlog和Flink的實(shí)時(shí)同步數據倉庫實(shí)踐。主要解釋是基于Flink對Mysql Binlog數據采集的規劃??戳藢?shí)用的方法和具體的代碼操作,感覺(jué)有些情況考慮的還不夠。作者之前對采集工具的實(shí)踐也做過(guò)一些類(lèi)似的總結,但是沒(méi)有從整體上做一個(gè)系統的總結,所以我在想,能不能做一個(gè)個(gè)人的總結文章,總結一下Binlog采集中存在的問(wèn)題以及相應的解決方法也總結了?
  很多人可能對Binlog還不夠了解,有些人可能膚淺地想:“不就是mysql產(chǎn)生的嗎,它有固定結構的日志,采集
數據,然后做成數據落地,它有什么這么困難?”
  的確,本質(zhì)上確實(shí)是日志,但其實(shí)Binlog采集從場(chǎng)景分析到技術(shù)選型都有很多不為人知的坑,大家不要小看它。
  作者寫(xiě)這篇文章的目的是展示Binlog數據采集開(kāi)發(fā)過(guò)程在實(shí)際工作中的原理、注意事項以及可能出現的問(wèn)題。也會(huì )有一些筆者自己在資料采集
中的原則個(gè)人總結,供大家參考,都是干貨。
  讓我們開(kāi)始吧!
  一、Binlog實(shí)時(shí)采集與匯總原理
  首先拋開(kāi)技術(shù)框架的討論,我個(gè)人總結一下Binlog日志數據采集的主要原則:
  解釋這三個(gè)原則的具體含義
  原則一
  在數據采集中,數據落地一般采用時(shí)間分區的方式進(jìn)行落地,因此我們需要確定一個(gè)固定的時(shí)間戳作為時(shí)間分區的基本時(shí)間序列。
  這種情況下,業(yè)務(wù)數據上的時(shí)間戳字段,無(wú)論從實(shí)際開(kāi)發(fā)中獲取這個(gè)時(shí)間戳,還是在實(shí)際表中都會(huì )有這樣的時(shí)間戳來(lái)看,不可能所有的表都完全滿(mǎn)足。
  舉個(gè)反例:
  表:業(yè)務(wù)時(shí)間戳(或事件時(shí)間)
  表 A:創(chuàng )建時(shí)間、更新時(shí)間
  表 B:創(chuàng )建時(shí)間
  表 C:create_at
  表D:無(wú)
  像這樣的情況,理論上在設計表的時(shí)候可以通過(guò)限制RD和DBA規范表結構來(lái)統一和限制時(shí)間戳和命名,但是在實(shí)際工作中,這樣的情況基本是不可能的。是的,相信很多讀者都會(huì )遇到這種情況。
  很多做數據采集的同學(xué)可能會(huì )想,能不能請他們來(lái)制定標準呢?
  我個(gè)人的看法是可以,但是大數據的底層數據采集不能完全依賴(lài)這樣的相互標準。
  原因有以下三個(gè):
  因此,如果要使用唯一的固定時(shí)間序列,就必須將其與業(yè)務(wù)數據分開(kāi)。我們想要的時(shí)間戳不受業(yè)務(wù)數據變化的影響。
  原理二
  在一個(gè)業(yè)務(wù)數據庫中,肯定存在表結構變化的問(wèn)題。大多數情況下是添加列,但也有列重命名、列刪除等情況,字段變化順序不可控。
  這個(gè)原則想描述的是導入數據倉庫的表要適應數據庫表的各種操作,并保持其可用性和列數據的正確性。
  原則三
  這個(gè)數據是有溯源的,包括兩個(gè)方面
  第一種描述是在binlog采集
端,可以重新按location采集
binlog。
  第二種描述是在consumer binlog登陸結束時(shí),可以通過(guò)重復消費重新登陸數據。
  這是作者的個(gè)人總結。無(wú)論選擇何種技術(shù)選型進(jìn)行組合施工,都需要滿(mǎn)足這些原則。
  二、實(shí)施方案及具體操作
  技術(shù)架構:Debezium + Confluent + Kafka + OSS/S3 + Hive
  基于原理一的解決方案:
  
  Debezium 提供了 New Record State Extraction 的配置選項,相當于提供了一個(gè) transform 算子,可以提取 binlog 中的元數據。
  對于0.10版本的配置,可以提取table、version、connector、name、ts_ms、db、server_id、file、pos、row等binlog元數據信息。
  其中ts_ms是binlog日志的生成時(shí)間,是binlog元數據,可以應用于所有數據表,在不知道數據表內部結構的情況下,可以使用這個(gè)固定的時(shí)間戳來(lái)充分實(shí)現我們的原理一.
  關(guān)于Debezium,不同版本之前的配置參數可能不同。如果讀者需要練習,需要在官方文檔中確認對應版本的配置參數。
  對于其他框架,比如市場(chǎng)上廣泛使用的Canal,或者讀者需要開(kāi)發(fā)數據采集程序,建議將binlog的元數據全部提取出來(lái),在本流程和后續流程中可能會(huì )用到。
  基于原則二的解決方案
  對于Hive,目前主流的數據存儲格式有Parquet、ORC、Json、Avro。
  拋開(kāi)數據存儲的效率討論。
  對于前兩種數據格式,它是按列存儲的,也就是說(shuō),這兩種數據格式的數據讀取將嚴格依賴(lài)于數據在我們的數據表中的存儲順序。這樣的數據格式不能滿(mǎn)足數據列的靈活性。添加、刪除等操作。
  Avro格式是基于行的,但是需要依賴(lài)Schema Register服務(wù)??紤]到Hive的數據表讀取完全依賴(lài)于外部服務(wù),風(fēng)險太大。
  最后確定使用Json格式進(jìn)行數據存儲。這種讀取和存儲效率雖然沒(méi)有其他格式高,但是可以保證業(yè)務(wù)數據的任何變化都能在hive中讀取到。
  Debezium組件采集的binlog數據為json格式,符合預期的設計方案,可以解決第二個(gè)原理帶來(lái)的問(wèn)題。
  對于其他框架,比如市場(chǎng)上使用比較廣泛的Canal,可以設置為Json數據格式進(jìn)行傳輸,或者需要讀者自行開(kāi)發(fā)數據采集程序,同理。
  基于原理三的解決方案
  在binlog采集
端,可以重新按位置采集
binlog。
  Debezium官網(wǎng)也給出了該方案的實(shí)現。大致描述了相應的解決方案,需要Kafkacat工具。
  對于每一個(gè)采集到的mysql實(shí)例,在創(chuàng )建數據采集任務(wù)時(shí),Confluent會(huì )為connector(即采集程序)采集的元數據對應創(chuàng )建一個(gè)topic。
  相應的時(shí)間戳、文件位置、位置都會(huì )存儲在里面。您可以通過(guò)修改該數據來(lái)重新設置采集
binlog日志的位置。
  值得注意的是,這個(gè)操作的時(shí)間節點(diǎn)也是有限制的,這跟mysql binlog日志的保存周期有關(guān)。所以這種方式回溯的時(shí)候,需要確認mysql的日志是否還存在。
  對于重復消費,數據重新落地。
  因為這個(gè)方案是基于Kafka的,所以網(wǎng)上有很多Kafka重新設計消費offset消費站點(diǎn)的方案,這里不再贅述。
  讀者自己實(shí)現,需要確認的選擇的MQ支持該功能就好了。
  #how_to_change_the_offsets_of_the_source_database
  3、業(yè)務(wù)場(chǎng)景不同
  本節僅介紹在筆者的技術(shù)架構下如何實(shí)現以下操作。讀者可以根據自己選擇的技術(shù)組件探索不同的技術(shù)方案。
  1)數據庫分庫分表的情況
  基于Debezium的架構,一個(gè)source只能對應一個(gè)mysql實(shí)例進(jìn)行采集。對于同一個(gè)實(shí)例上的分表情況,可以使用Debezium Topic Routing功能。
  在采集
過(guò)濾binlog時(shí),將對應的要采集
的表按照正則匹配寫(xiě)入到指定的topic中。
  在分庫的情況下,還需要在sink端添加RegexRouter變換算子,進(jìn)行topic之間的merge寫(xiě)操作。
  2)數據增量采集和全量采集
  對于采集組件,目前配置默認是基于增量的,所以無(wú)論選擇Debezium還是Canal,都可以正常配置。
  但是有時(shí)候會(huì )出現需要采集
全表的情況,作者也給出了采集
全量數據的方案。
  選項一:
  Debezium本身就有這樣的功能,需要
  snapshot.mode參數選擇設置為when_needed,這樣可以進(jìn)行表的全量采集
操作。
  
  在官方文檔中,對這里的參數配置有比較詳細的說(shuō)明。
  #快照
  方案二:
  同時(shí)使用sqoop和增量采集
。
  該方案適用于表數據已經(jīng)很多,但binlog數據當前頻率不高的情況。
  值得注意的有兩點(diǎn):
  3)離線(xiàn)重刪條件
  數據落地后,通過(guò)json表映射binlog原創(chuàng )
數據,那么問(wèn)題來(lái)了,我們如何找到最新的一條數據呢?
  或許我們可以簡(jiǎn)單的認為,用剛才提取出來(lái)的ts_ms就好了,然后反演一下?
  在大多數情況下確實(shí)可以這樣做。
  但是筆者在實(shí)際開(kāi)發(fā)中發(fā)現這樣的情況并不能滿(mǎn)足所有的情況,因為在binlog中,可能真的有兩條數據ts_ms和PK相同,但確實(shí)不同。
  那么我們如何同時(shí)求解兩個(gè)數據呢?
  答案如上,我們只是建議提取所有binlog的元數據。
  選擇 *
  從
  (
  選擇 *,
  row_number() over(partition BY t.id ORDER BY t.`__ts_ms` DESC,t.`__file` DESC,cast(t.`__pos` AS int) DESC) AS order_by
  從測試 t
  WHERE dt='{pt}'
  AND hour='{now_hour}'
  ) t1
  在哪里 t1。order_by = 1
  解釋一下這條sql中row_number的情況:
  這樣的條件組合檢索到的數據是最新的。
  可能有讀者會(huì )問(wèn),如果刪除了這條數據,你這樣取回的數據不就錯了嗎?
  這個(gè)Debezium也有相應的操作,有相應的配置選項供你選擇如何處理刪除行為的binlog數據。
  作為大家的參考,筆者選擇了rewrite的參數配置,這樣上面的SQL最外層只需要判斷“delete = 'false'”是正確的數據即可。
  四、結構總結
  在技??術(shù)的選擇和整體與細節的結構上,筆者一直堅持一個(gè)原則——
  過(guò)程要盡量簡(jiǎn)單但不簡(jiǎn)單。數據鏈接越長(cháng),可能出錯的鏈接就越多。后期的加鎖問(wèn)題和運維也會(huì )非常困難。
  所以筆者在技術(shù)選型上也考慮了Flink+Kafka的方式,但是基于當時(shí)的現狀,筆者并沒(méi)有選擇這樣的技術(shù)選型,筆者也說(shuō)明了原因。
  總結一下,我當時(shí)對 Flink 的想法是,如果 Flink 沒(méi)有一個(gè)開(kāi)發(fā)和運維監控的平臺,可以作為一個(gè)臨時(shí)的解決方案。很容易出問(wèn)題,或者只是大家在這樣的程序框架下造輪子,越造越慢。而且后期的主要項目方向也沒(méi)有把Flink平臺提上日程,所以選擇的時(shí)候也是考慮了一部分未來(lái)的情況。
  所以,最后確定技術(shù)選型的時(shí)候,我并沒(méi)有選擇Flink。
  5.結論
  解決方案:在線(xiàn)工具導航(一)
  工具 123 - 1750 工具收錄
在整個(gè)工位
  
  本工具導航網(wǎng)站共收錄
1750個(gè)在線(xiàn)工具,包括轉換工具、在線(xiàn)制作、在線(xiàn)生成、在線(xiàn)查詢(xún)、圖片工具、檢測工具、PDF工具、SEO工具、站長(cháng)推薦、生活工具、學(xué)習工具、娛樂(lè )工具、站長(cháng)工具等。
   查看全部

  解決方案:基于Binlog實(shí)時(shí)同步數據倉庫問(wèn)題總結
  前言
  今天刷公眾號的時(shí)候,看到了這篇文章:基于Binlog和Flink的實(shí)時(shí)同步數據倉庫實(shí)踐。主要解釋是基于Flink對Mysql Binlog數據采集的規劃??戳藢?shí)用的方法和具體的代碼操作,感覺(jué)有些情況考慮的還不夠。作者之前對采集工具的實(shí)踐也做過(guò)一些類(lèi)似的總結,但是沒(méi)有從整體上做一個(gè)系統的總結,所以我在想,能不能做一個(gè)個(gè)人的總結文章,總結一下Binlog采集中存在的問(wèn)題以及相應的解決方法也總結了?
  很多人可能對Binlog還不夠了解,有些人可能膚淺地想:“不就是mysql產(chǎn)生的嗎,它有固定結構的日志,采集
數據,然后做成數據落地,它有什么這么困難?”
  的確,本質(zhì)上確實(shí)是日志,但其實(shí)Binlog采集從場(chǎng)景分析到技術(shù)選型都有很多不為人知的坑,大家不要小看它。
  作者寫(xiě)這篇文章的目的是展示Binlog數據采集開(kāi)發(fā)過(guò)程在實(shí)際工作中的原理、注意事項以及可能出現的問(wèn)題。也會(huì )有一些筆者自己在資料采集
中的原則個(gè)人總結,供大家參考,都是干貨。
  讓我們開(kāi)始吧!
  一、Binlog實(shí)時(shí)采集與匯總原理
  首先拋開(kāi)技術(shù)框架的討論,我個(gè)人總結一下Binlog日志數據采集的主要原則:
  解釋這三個(gè)原則的具體含義
  原則一
  在數據采集中,數據落地一般采用時(shí)間分區的方式進(jìn)行落地,因此我們需要確定一個(gè)固定的時(shí)間戳作為時(shí)間分區的基本時(shí)間序列。
  這種情況下,業(yè)務(wù)數據上的時(shí)間戳字段,無(wú)論從實(shí)際開(kāi)發(fā)中獲取這個(gè)時(shí)間戳,還是在實(shí)際表中都會(huì )有這樣的時(shí)間戳來(lái)看,不可能所有的表都完全滿(mǎn)足。
  舉個(gè)反例:
  表:業(yè)務(wù)時(shí)間戳(或事件時(shí)間)
  表 A:創(chuàng )建時(shí)間、更新時(shí)間
  表 B:創(chuàng )建時(shí)間
  表 C:create_at
  表D:無(wú)
  像這樣的情況,理論上在設計表的時(shí)候可以通過(guò)限制RD和DBA規范表結構來(lái)統一和限制時(shí)間戳和命名,但是在實(shí)際工作中,這樣的情況基本是不可能的。是的,相信很多讀者都會(huì )遇到這種情況。
  很多做數據采集的同學(xué)可能會(huì )想,能不能請他們來(lái)制定標準呢?
  我個(gè)人的看法是可以,但是大數據的底層數據采集不能完全依賴(lài)這樣的相互標準。
  原因有以下三個(gè):
  因此,如果要使用唯一的固定時(shí)間序列,就必須將其與業(yè)務(wù)數據分開(kāi)。我們想要的時(shí)間戳不受業(yè)務(wù)數據變化的影響。
  原理二
  在一個(gè)業(yè)務(wù)數據庫中,肯定存在表結構變化的問(wèn)題。大多數情況下是添加列,但也有列重命名、列刪除等情況,字段變化順序不可控。
  這個(gè)原則想描述的是導入數據倉庫的表要適應數據庫表的各種操作,并保持其可用性和列數據的正確性。
  原則三
  這個(gè)數據是有溯源的,包括兩個(gè)方面
  第一種描述是在binlog采集
端,可以重新按location采集
binlog。
  第二種描述是在consumer binlog登陸結束時(shí),可以通過(guò)重復消費重新登陸數據。
  這是作者的個(gè)人總結。無(wú)論選擇何種技術(shù)選型進(jìn)行組合施工,都需要滿(mǎn)足這些原則。
  二、實(shí)施方案及具體操作
  技術(shù)架構:Debezium + Confluent + Kafka + OSS/S3 + Hive
  基于原理一的解決方案:
  
  Debezium 提供了 New Record State Extraction 的配置選項,相當于提供了一個(gè) transform 算子,可以提取 binlog 中的元數據。
  對于0.10版本的配置,可以提取table、version、connector、name、ts_ms、db、server_id、file、pos、row等binlog元數據信息。
  其中ts_ms是binlog日志的生成時(shí)間,是binlog元數據,可以應用于所有數據表,在不知道數據表內部結構的情況下,可以使用這個(gè)固定的時(shí)間戳來(lái)充分實(shí)現我們的原理一.
  關(guān)于Debezium,不同版本之前的配置參數可能不同。如果讀者需要練習,需要在官方文檔中確認對應版本的配置參數。
  對于其他框架,比如市場(chǎng)上廣泛使用的Canal,或者讀者需要開(kāi)發(fā)數據采集程序,建議將binlog的元數據全部提取出來(lái),在本流程和后續流程中可能會(huì )用到。
  基于原則二的解決方案
  對于Hive,目前主流的數據存儲格式有Parquet、ORC、Json、Avro。
  拋開(kāi)數據存儲的效率討論。
  對于前兩種數據格式,它是按列存儲的,也就是說(shuō),這兩種數據格式的數據讀取將嚴格依賴(lài)于數據在我們的數據表中的存儲順序。這樣的數據格式不能滿(mǎn)足數據列的靈活性。添加、刪除等操作。
  Avro格式是基于行的,但是需要依賴(lài)Schema Register服務(wù)??紤]到Hive的數據表讀取完全依賴(lài)于外部服務(wù),風(fēng)險太大。
  最后確定使用Json格式進(jìn)行數據存儲。這種讀取和存儲效率雖然沒(méi)有其他格式高,但是可以保證業(yè)務(wù)數據的任何變化都能在hive中讀取到。
  Debezium組件采集的binlog數據為json格式,符合預期的設計方案,可以解決第二個(gè)原理帶來(lái)的問(wèn)題。
  對于其他框架,比如市場(chǎng)上使用比較廣泛的Canal,可以設置為Json數據格式進(jìn)行傳輸,或者需要讀者自行開(kāi)發(fā)數據采集程序,同理。
  基于原理三的解決方案
  在binlog采集
端,可以重新按位置采集
binlog。
  Debezium官網(wǎng)也給出了該方案的實(shí)現。大致描述了相應的解決方案,需要Kafkacat工具。
  對于每一個(gè)采集到的mysql實(shí)例,在創(chuàng )建數據采集任務(wù)時(shí),Confluent會(huì )為connector(即采集程序)采集的元數據對應創(chuàng )建一個(gè)topic。
  相應的時(shí)間戳、文件位置、位置都會(huì )存儲在里面。您可以通過(guò)修改該數據來(lái)重新設置采集
binlog日志的位置。
  值得注意的是,這個(gè)操作的時(shí)間節點(diǎn)也是有限制的,這跟mysql binlog日志的保存周期有關(guān)。所以這種方式回溯的時(shí)候,需要確認mysql的日志是否還存在。
  對于重復消費,數據重新落地。
  因為這個(gè)方案是基于Kafka的,所以網(wǎng)上有很多Kafka重新設計消費offset消費站點(diǎn)的方案,這里不再贅述。
  讀者自己實(shí)現,需要確認的選擇的MQ支持該功能就好了。
  #how_to_change_the_offsets_of_the_source_database
  3、業(yè)務(wù)場(chǎng)景不同
  本節僅介紹在筆者的技術(shù)架構下如何實(shí)現以下操作。讀者可以根據自己選擇的技術(shù)組件探索不同的技術(shù)方案。
  1)數據庫分庫分表的情況
  基于Debezium的架構,一個(gè)source只能對應一個(gè)mysql實(shí)例進(jìn)行采集。對于同一個(gè)實(shí)例上的分表情況,可以使用Debezium Topic Routing功能。
  在采集
過(guò)濾binlog時(shí),將對應的要采集
的表按照正則匹配寫(xiě)入到指定的topic中。
  在分庫的情況下,還需要在sink端添加RegexRouter變換算子,進(jìn)行topic之間的merge寫(xiě)操作。
  2)數據增量采集和全量采集
  對于采集組件,目前配置默認是基于增量的,所以無(wú)論選擇Debezium還是Canal,都可以正常配置。
  但是有時(shí)候會(huì )出現需要采集
全表的情況,作者也給出了采集
全量數據的方案。
  選項一:
  Debezium本身就有這樣的功能,需要
  snapshot.mode參數選擇設置為when_needed,這樣可以進(jìn)行表的全量采集
操作。
  
  在官方文檔中,對這里的參數配置有比較詳細的說(shuō)明。
  #快照
  方案二:
  同時(shí)使用sqoop和增量采集
。
  該方案適用于表數據已經(jīng)很多,但binlog數據當前頻率不高的情況。
  值得注意的有兩點(diǎn):
  3)離線(xiàn)重刪條件
  數據落地后,通過(guò)json表映射binlog原創(chuàng )
數據,那么問(wèn)題來(lái)了,我們如何找到最新的一條數據呢?
  或許我們可以簡(jiǎn)單的認為,用剛才提取出來(lái)的ts_ms就好了,然后反演一下?
  在大多數情況下確實(shí)可以這樣做。
  但是筆者在實(shí)際開(kāi)發(fā)中發(fā)現這樣的情況并不能滿(mǎn)足所有的情況,因為在binlog中,可能真的有兩條數據ts_ms和PK相同,但確實(shí)不同。
  那么我們如何同時(shí)求解兩個(gè)數據呢?
  答案如上,我們只是建議提取所有binlog的元數據。
  選擇 *
  從
  (
  選擇 *,
  row_number() over(partition BY t.id ORDER BY t.`__ts_ms` DESC,t.`__file` DESC,cast(t.`__pos` AS int) DESC) AS order_by
  從測試 t
  WHERE dt='{pt}'
  AND hour='{now_hour}'
  ) t1
  在哪里 t1。order_by = 1
  解釋一下這條sql中row_number的情況:
  這樣的條件組合檢索到的數據是最新的。
  可能有讀者會(huì )問(wèn),如果刪除了這條數據,你這樣取回的數據不就錯了嗎?
  這個(gè)Debezium也有相應的操作,有相應的配置選項供你選擇如何處理刪除行為的binlog數據。
  作為大家的參考,筆者選擇了rewrite的參數配置,這樣上面的SQL最外層只需要判斷“delete = 'false'”是正確的數據即可。
  四、結構總結
  在技??術(shù)的選擇和整體與細節的結構上,筆者一直堅持一個(gè)原則——
  過(guò)程要盡量簡(jiǎn)單但不簡(jiǎn)單。數據鏈接越長(cháng),可能出錯的鏈接就越多。后期的加鎖問(wèn)題和運維也會(huì )非常困難。
  所以筆者在技術(shù)選型上也考慮了Flink+Kafka的方式,但是基于當時(shí)的現狀,筆者并沒(méi)有選擇這樣的技術(shù)選型,筆者也說(shuō)明了原因。
  總結一下,我當時(shí)對 Flink 的想法是,如果 Flink 沒(méi)有一個(gè)開(kāi)發(fā)和運維監控的平臺,可以作為一個(gè)臨時(shí)的解決方案。很容易出問(wèn)題,或者只是大家在這樣的程序框架下造輪子,越造越慢。而且后期的主要項目方向也沒(méi)有把Flink平臺提上日程,所以選擇的時(shí)候也是考慮了一部分未來(lái)的情況。
  所以,最后確定技術(shù)選型的時(shí)候,我并沒(méi)有選擇Flink。
  5.結論
  解決方案:在線(xiàn)工具導航(一)
  工具 123 - 1750 工具收錄
在整個(gè)工位
  
  本工具導航網(wǎng)站共收錄
1750個(gè)在線(xiàn)工具,包括轉換工具、在線(xiàn)制作、在線(xiàn)生成、在線(xiàn)查詢(xún)、圖片工具、檢測工具、PDF工具、SEO工具、站長(cháng)推薦、生活工具、學(xué)習工具、娛樂(lè )工具、站長(cháng)工具等。
  

匯總:文章實(shí)時(shí)采集最優(yōu)的方案?知乎|可供五十位兄弟

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 116 次瀏覽 ? 2022-11-24 20:34 ? 來(lái)自相關(guān)話(huà)題

  匯總:文章實(shí)時(shí)采集最優(yōu)的方案?知乎|可供五十位兄弟
  文章實(shí)時(shí)采集最優(yōu)的方案?知乎|、可供五十位兄弟姐妹大膽用、值得可喜的一點(diǎn)是,此前沒(méi)有類(lèi)似技術(shù)的書(shū),也沒(méi)有類(lèi)似的課程。所以你可以想做什么,就做什么。去而不返。(謝天笑)獲取更多java資訊,
  
  如果你以后想找軟件開(kāi)發(fā)相關(guān)的工作,或者至少當下找工作特別難,面試官特別挑剔。能夠自主做一個(gè)游戲引擎已經(jīng)非常難得。有這個(gè)游戲引擎在你寫(xiě)代碼,做app,做網(wǎng)站,做微信小程序都特別有利。當然,前提是你能把開(kāi)發(fā)這個(gè)引擎過(guò)程中遇到的每一個(gè)問(wèn)題都想得明白,真的要想明白你沒(méi)有三五年時(shí)間估計是做不好的。如果要我來(lái)說(shuō)的話(huà),以后的應該不會(huì )從事引擎相關(guān)的開(kāi)發(fā)。但是可以成為一個(gè)很好的程序員。
  純堆代碼不分實(shí)現與否都是在敷衍職業(yè)生涯前面半個(gè)階段。你用這種方式,你自己都可以干更多別的事情。比如可以做個(gè)非重度游戲引擎的thatgamekit。如果你喜歡。最后在十年后做一個(gè)不重度游戲引擎的android版本。
  
  此實(shí)習求職單位,所有人都要求20個(gè)月工作經(jīng)驗,但是滿(mǎn)足特定條件且個(gè)人認為不錯的25個(gè)月相對來(lái)說(shuō),你具備這些優(yōu)勢,所以建議你不要放棄這份工作,包括時(shí)間機會(huì )成本等等,實(shí)習的優(yōu)勢是經(jīng)驗可以復用,你做的東西只是個(gè)流水線(xiàn)或者別人的demo,并不會(huì )是真正的游戲引擎,也就是說(shuō),你的實(shí)習應該有轉正的機會(huì )的。這樣來(lái)看,留下和放棄都是不理智的,放棄你有更多選擇,留下可能你什么都不會(huì ),畢竟一年工作經(jīng)驗才算是初級程序員。
  還有其他幾個(gè)小建議1.可以多多搜集游戲引擎的資料,帶你入門(mén)比如原生類(lèi)或者unity啥的不錯的游戲引擎2.python,php,java什么的不用說(shuō),但是據我所知國內游戲引擎很少。你不想搞開(kāi)發(fā)的話(huà)用個(gè)java也是可以的。最后建議你都工作吧,做游戲引擎做引擎很重要。別太浪費時(shí)間,把興趣當工作,最后會(huì )發(fā)現興趣都變成痛苦的事業(yè)了。 查看全部

  匯總:文章實(shí)時(shí)采集最優(yōu)的方案?知乎|可供五十位兄弟
  文章實(shí)時(shí)采集最優(yōu)的方案?知乎|、可供五十位兄弟姐妹大膽用、值得可喜的一點(diǎn)是,此前沒(méi)有類(lèi)似技術(shù)的書(shū),也沒(méi)有類(lèi)似的課程。所以你可以想做什么,就做什么。去而不返。(謝天笑)獲取更多java資訊,
  
  如果你以后想找軟件開(kāi)發(fā)相關(guān)的工作,或者至少當下找工作特別難,面試官特別挑剔。能夠自主做一個(gè)游戲引擎已經(jīng)非常難得。有這個(gè)游戲引擎在你寫(xiě)代碼,做app,做網(wǎng)站,做微信小程序都特別有利。當然,前提是你能把開(kāi)發(fā)這個(gè)引擎過(guò)程中遇到的每一個(gè)問(wèn)題都想得明白,真的要想明白你沒(méi)有三五年時(shí)間估計是做不好的。如果要我來(lái)說(shuō)的話(huà),以后的應該不會(huì )從事引擎相關(guān)的開(kāi)發(fā)。但是可以成為一個(gè)很好的程序員。
  純堆代碼不分實(shí)現與否都是在敷衍職業(yè)生涯前面半個(gè)階段。你用這種方式,你自己都可以干更多別的事情。比如可以做個(gè)非重度游戲引擎的thatgamekit。如果你喜歡。最后在十年后做一個(gè)不重度游戲引擎的android版本。
  
  此實(shí)習求職單位,所有人都要求20個(gè)月工作經(jīng)驗,但是滿(mǎn)足特定條件且個(gè)人認為不錯的25個(gè)月相對來(lái)說(shuō),你具備這些優(yōu)勢,所以建議你不要放棄這份工作,包括時(shí)間機會(huì )成本等等,實(shí)習的優(yōu)勢是經(jīng)驗可以復用,你做的東西只是個(gè)流水線(xiàn)或者別人的demo,并不會(huì )是真正的游戲引擎,也就是說(shuō),你的實(shí)習應該有轉正的機會(huì )的。這樣來(lái)看,留下和放棄都是不理智的,放棄你有更多選擇,留下可能你什么都不會(huì ),畢竟一年工作經(jīng)驗才算是初級程序員。
  還有其他幾個(gè)小建議1.可以多多搜集游戲引擎的資料,帶你入門(mén)比如原生類(lèi)或者unity啥的不錯的游戲引擎2.python,php,java什么的不用說(shuō),但是據我所知國內游戲引擎很少。你不想搞開(kāi)發(fā)的話(huà)用個(gè)java也是可以的。最后建議你都工作吧,做游戲引擎做引擎很重要。別太浪費時(shí)間,把興趣當工作,最后會(huì )發(fā)現興趣都變成痛苦的事業(yè)了。

解決方案:微信小游戲直播在A(yíng)ndroid端的跨進(jìn)程渲染推流實(shí)踐

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 142 次瀏覽 ? 2022-11-24 13:40 ? 來(lái)自相關(guān)話(huà)題

  解決方案:微信小游戲直播在A(yíng)ndroid端的跨進(jìn)程渲染推流實(shí)踐
  本文由微信開(kāi)發(fā)團隊工程師“virwu”分享。
  1 簡(jiǎn)介
  近期,微信小游戲支持一鍵播放視頻號。將微信升級到最新版本后,打開(kāi)騰訊小游戲(如跳轉、歡樂(lè )斗地主等),在右上角的菜單中可以看到開(kāi)始直播的按鈕。按鈕成為游戲主播(如下圖所示)。
  但出于性能、安全等一系列考慮,微信小游戲運行在獨立進(jìn)程中,視頻號直播相關(guān)的模塊不會(huì )在該環(huán)境下初始化。這意味著(zhù)小游戲的音視頻數據必須跨進(jìn)程傳輸到主進(jìn)程進(jìn)行流式傳輸,這給我們實(shí)現小游戲的直播帶來(lái)了一系列的挑戰。
 ?。ū疚耐桨l(fā)表于:)
  2.系列文章
  本文是系列文章中的第 5 篇:
  《系統聊天技術(shù)(一):美拍直播彈幕系統的實(shí)時(shí)推送技術(shù)實(shí)踐之路》 《系統聊天技術(shù)(二):阿里電商IM消息平臺,在群聊和直播場(chǎng)景下的技術(shù)實(shí)踐直播系統聊天技術(shù)(三):微信直播聊天室單間1500萬(wàn)在線(xiàn)消息的消息架構演進(jìn)》 《直播系統聊天技術(shù)(四):微信直播聊天室實(shí)時(shí)消息系統架構演進(jìn)實(shí)踐》百度直播海量用戶(hù)》《直播系統聊天技術(shù)(五):微信小游戲直播在A(yíng)ndroid端的跨進(jìn)程渲染與推流實(shí)踐》(*篇)3.視頻采集與推流
  3.1 屏幕截圖?
  小游戲直播的本質(zhì)是將主播手機屏幕上的內容展示給觀(guān)眾。自然而然,我們可以想到利用系統的錄屏接口MediaProjection來(lái)采集視頻數據。
  該方案具有以下優(yōu)點(diǎn):
  但最終這個(gè)方案被否決了,主要是出于以下考慮:
  轉念一想,既然小游戲的渲染完全由我們來(lái)控制,那么為了更好的直播體驗,是否可以將小游戲渲染的內容跨進(jìn)程傳輸到主進(jìn)程進(jìn)行推流呢?
  3.2 小游戲渲染架構
  為了更好的描述我們采用的方案,這里簡(jiǎn)單介紹一下小游戲的渲染架構:
  可以看到圖中左半部分代表前臺的小游戲流程,其中MagicBrush是小游戲渲染引擎,從小游戲代碼接收渲染指令,將畫(huà)面渲染到由小游戲提供的Surface上屏幕上的 SurfaceView。主進(jìn)程在后臺不參與整個(gè)過(guò)程。
  3.3 小游戲錄屏時(shí)的情況
  小游戲之前已經(jīng)支持錄制游戲內容,原理上和直播類(lèi)似,都需要獲取當前小游戲的畫(huà)面內容。
  開(kāi)啟錄屏后,小游戲會(huì )切換到以下渲染模式:
  可以看出MagicBrush的輸出目標不再是屏幕上的SurfaceView,而是Renderer生成的SurfaceTexture。
  這里簡(jiǎn)單介紹一下Renderer的作用:
  Renderer是一個(gè)獨立的渲染模塊,代表了一個(gè)獨立的GL環(huán)境。它可以創(chuàng )建SurfaceTexture作為輸入,接收到SurfaceTexture的onFrameAvailable回調后,通過(guò)updateTexImage方法將圖像數據轉換為GL_TEXTURE_EXTERNAL_OES類(lèi)型的紋理參與后續的渲染過(guò)程,并可以將渲染結果輸出到另一個(gè)Surface。
  圖中的流程一步步解釋如下:
  1)MagicBrush接收到小游戲代碼調用的渲染指令,將小游戲的內容渲染到第一個(gè)Renderer創(chuàng )建的SurfaceTexture上;
  2)然后這個(gè)Renderer做了兩件事:
  3)第二個(gè)Renderer將第一個(gè)Renderer提供的紋理渲染到mp4編碼器提供的輸入SurfaceTexture中,最終編碼器編碼生成mp4錄屏文件。
  3.4 改造錄屏解決方案?
  可以看出,在錄屏方案中,一個(gè)Renderer負責將游戲內容上傳到屏幕上,另一個(gè)Renderer將相同的紋理渲染到編碼器,用于錄制游戲內容。直播其實(shí)也差不多。是不是只要把編碼器換成直播的推流模塊就夠了?
  沒(méi)錯,但是還漏掉了一個(gè)關(guān)鍵環(huán)節:streaming模塊運行在主進(jìn)程中,我們需要跨進(jìn)程傳遞圖片數據!如何跨進(jìn)程?
  說(shuō)到跨進(jìn)程: 可能我們腦海中跳出的第一反應就是Binder、Socket、共享內存等傳統的IPC通信方式。但是仔細想想,系統提供的SurfaceView是一個(gè)非常特殊的View組件。它不通過(guò)傳統的View樹(shù)參與繪制,而是通過(guò)系統的SurfaceFlinger直接合成到屏幕上,SurfaceFlinger運行在系統進(jìn)程上。我們在SurfaceView提供的Surface上繪制的內容必須能夠跨進(jìn)程傳遞,而Surface跨進(jìn)程的方法很簡(jiǎn)單——它本身實(shí)現了Parcelable接口,也就是說(shuō)我們可以使用Binder直接傳遞Surface對象跨進(jìn)程。
  所以我們有以下初步計劃:
  可以看出,第三步不再渲染到mp4編碼器,而是渲染到從主進(jìn)程跨進(jìn)程傳過(guò)來(lái)的Surface。主進(jìn)程的Surface由一個(gè)Renderer創(chuàng )建的SurfaceTexture封裝而成?,F在小游戲進(jìn)程將圖像渲染到這個(gè) Surface 作為生產(chǎn)者。當一幀渲染完成后,主進(jìn)程的SurfaceTexture會(huì )收到一個(gè)onFrameAvailable回調通知圖像數據已經(jīng)準備好,然后通過(guò)updateTexImage獲取對應的紋理數據。這里,由于直播模塊只支持GL_TEXTURE_2D類(lèi)型的貼圖,所以這里主進(jìn)程Renderer會(huì )將GL_TEXTURE_EXTERNAL_OES轉換成GL_TEXTURE_2D貼圖,然后發(fā)送給直播編碼器,完成推流過(guò)程。
  經(jīng)過(guò)一番改造:上述方案已經(jīng)成功將小游戲渲染到屏幕上,并傳遞給主進(jìn)程進(jìn)行流式傳輸,但這真的是最優(yōu)方案嗎?
  想了想,發(fā)現上面的解決方案中Renderer太多了。小游戲進(jìn)程中有兩個(gè),一個(gè)是渲染到屏幕上,一個(gè)是跨進(jìn)程渲染到Surface,還有一個(gè)是在主進(jìn)程中轉換紋理調用流模塊。如果要同時(shí)支持錄屏,需要在小游戲進(jìn)程中再啟動(dòng)一個(gè)Renderer渲染到mp4編碼器。過(guò)多的Renderer意味著(zhù)過(guò)多的額外渲染開(kāi)銷(xiāo),會(huì )影響小游戲的性能。
  3.5 跨進(jìn)程渲染方案
  
  縱觀(guān)整個(gè)流程,其實(shí)只需要主進(jìn)程的Renderer。小游戲額外使用的Render無(wú)非是為了同時(shí)滿(mǎn)足同屏渲染和跨進(jìn)程傳輸。constraints,那么我們就簡(jiǎn)單的把小游戲進(jìn)程的入屏Surface傳給主進(jìn)程進(jìn)行入屏渲染!
  最終,我們將小游戲流程中的兩個(gè)冗余Renderer大幅砍掉。MagicBrush直接渲染到跨進(jìn)程傳遞給Surface,而主進(jìn)程的Renderer負責將紋理渲染到跨進(jìn)程以及紋理類(lèi)型轉換。傳輸的小游戲進(jìn)程在屏幕Surface上,實(shí)現畫(huà)面在屏幕上的渲染。
  最終需要的Renderer數量從原來(lái)的3個(gè)減少到需要的1個(gè),性能提升的同時(shí)架構更加清晰。
  以后需要同時(shí)支持錄屏的時(shí)候,稍微改動(dòng)一下,把mp4編碼器的輸入SurfaceTexture跨進(jìn)程傳給主進(jìn)程,然后給它添加一個(gè)Renderer渲染紋理(如圖下圖)。
  3.6 兼容性和性能
  說(shuō)到這里,不禁有些擔心。Surface方案的跨進(jìn)程傳輸和渲染會(huì )不會(huì )有兼容性問(wèn)題?
  其實(shí)雖然不常見(jiàn),但是官方文檔上說(shuō)是可以跨進(jìn)程抽取的:
  SurfaceView 結合了表面和視圖。SurfaceView 的視圖組件由 SurfaceFlinger(而不是應用程序)合成,支持從單獨的線(xiàn)程/進(jìn)程進(jìn)行渲染,并與應用程序 UI 渲染隔離。
  而Chrome和Android O之后的系統WebView都有使用跨進(jìn)程渲染的方案。
  我們的兼容性測試覆蓋了Android 5.1及之后的所有主流系統版本和機型。除了Android 5.flow跨進(jìn)程渲染黑屏的問(wèn)題。
  性能方面:我們使用WebGL Aquarium的demo進(jìn)行性能測試。我們可以看到對平均幀率的影響約為15%。由于渲染和流式處理,主進(jìn)程的 CPU 有所增加。奇怪的是,小游戲進(jìn)程的CPU開(kāi)銷(xiāo)卻減少了。減少的原因尚未得到證實(shí)。疑似與屏幕操作移至主進(jìn)程有關(guān),不排除統計方法的影響。
  3.7 總結
  為了不記錄宿主端的評論插件,我們先從小游戲的渲染流程說(shuō)起。借助Surface的跨進(jìn)程渲染和傳輸圖像的能力,我們將渲染和上傳小游戲的過(guò)程移到了主進(jìn)程中,同時(shí)生成紋理進(jìn)行流式傳輸。兼容性和性能滿(mǎn)足要求。
  4. 音頻采集和流式傳輸
  4.1 方案選擇
  在音頻采集方案中,我們注意到Android 10及以上系統提供了AudioPlaybackCapture方案,可以讓我們在一定范圍內采集系統音頻。當時(shí)的一些預研結論如下。
  捕獲者 - 捕獲發(fā)生的條件:
  被俘方 - 可以被俘的條件:
  總的來(lái)說(shuō):Android 10及以上可以使用AudioPlaybackCapture方案進(jìn)行音頻采集,但考慮到Android 10的系統版本限制太多,我們最終選擇了自己對小游戲播放的所有音頻進(jìn)行采集和混音。
  4.2 跨進(jìn)程音頻數據傳輸
  現在,老問(wèn)題又一次出現在我們面前:小游戲中混入的音頻數據在小游戲進(jìn)程中,我們需要將數據傳輸到主進(jìn)程中進(jìn)行流式處理。
  它不同于一般的用于方法調用的IPC跨進(jìn)程通信:在這種場(chǎng)景下,我們需要頻繁(每40毫秒)傳輸大數據塊(16毫秒的數據量約為8k)。
  同時(shí):由于直播的特點(diǎn),這個(gè)跨進(jìn)程傳輸過(guò)程的延遲需要盡可能低,否則會(huì )導致音視頻不同步。
  為了實(shí)現上述目標:我們測試了Binder、LocalSocket、MMKV、SharedMemory、Pipe等幾種IPC方案。在搭建的測試環(huán)境中,我們模擬小游戲過(guò)程中真實(shí)的音頻傳輸過(guò)程,每16毫秒發(fā)送一次序列化數據對象。數據對象的大小分為三個(gè)級別:3k/4M/10M,發(fā)送前存儲時(shí)間戳在對象中;以主進(jìn)程接收到數據并反序列化成數據對象的時(shí)刻為結束時(shí)間,計算傳輸延遲。
  最終得到如下結果:
  注:其中XIPCInvoker(Binder)和MMKV傳輸大量數據耗時(shí)過(guò)長(cháng),結果不顯示。
  各方案分析如下(stall rate表示延遲&gt;2倍平均延遲且&gt;10毫秒的數據占總數的比例):
  可以看出,LocalSocket方案在各個(gè)情況下的傳輸延時(shí)表現都非常好。造成差異的主要原因是裸二進(jìn)制數據在跨進(jìn)程傳輸到主進(jìn)程后,仍然需要進(jìn)行數據復制操作,將其反序列化為數據對象。在使用LocalSocket時(shí),可以使用ObjectStream和Serializeable來(lái)實(shí)現流式復制。相比其他方案,一次性接收數據,然后復制,節省了很多時(shí)間(當然其他方案也可以設計成分塊流,同時(shí)復制,但是實(shí)現起來(lái)有一定的成本,它不像 ObjectStream 那樣穩定和易于使用)。
  我們還測試了LocalSocket的兼容性和性能,沒(méi)有出現傳輸失敗和斷開(kāi)連接的情況。只有三星S6的平均延遲超過(guò)了10毫秒,其他機型的延遲都在1毫秒左右,可以達到我們的預期。
  4.3 LocalSocket 的安全性
  常用的Binder的跨進(jìn)程安全是由系統實(shí)現的認證機制來(lái)保證的。LocalSocket是對Unix域套接字的封裝,所以要考慮它的安全性。
  《Android Unix Domain Sockets的誤用及安全隱患》一文詳細分析了在A(yíng)ndroid中使用LocalSocket帶來(lái)的安全風(fēng)險。
  PS:論文原文附件下載(請從本鏈接4.3節下載:)
  論文概要:由于LocalSocket本身缺乏認證機制,任何應用程序都可以連接,從而攔截數據或向接收端發(fā)送非法數據而導致異常。
  針對這個(gè)特點(diǎn),我們可以做兩種防御方式:
  4.4 總結
  為了兼容Android 10以下機型和直播,我們選擇自己處理小游戲的音頻采集,通過(guò)對比評測,我們選擇了LocalSocket作為跨進(jìn)程音頻數據傳輸的方案,滿(mǎn)足了直播在時(shí)延方面的需求。
  同時(shí),通過(guò)一些對策,可以有效規避LocalSocket的安全風(fēng)險。
  
  5.多進(jìn)程帶來(lái)的問(wèn)題
  回過(guò)頭來(lái)看,雖然整個(gè)解決方案看起來(lái)比較順利,但是由于多進(jìn)程的原因,在實(shí)現過(guò)程中還是有很多坑。以下兩個(gè)是主要的。
  5.1 glFinish導致渲染幀率嚴重下降
  在實(shí)現跨進(jìn)程渲染流解決方案后,我們進(jìn)行了一輪性能和兼容性測試。在測試過(guò)程中,我們發(fā)現部分中低端機型的幀率下降非常嚴重(如下圖)。
  重現后查看小游戲進(jìn)程渲染的幀率(即小游戲進(jìn)程繪制到跨進(jìn)程Surface的幀率),發(fā)現可以達到直播時(shí)的幀率未啟用廣播。
  我們使用的測試軟件PerfDog記錄了屏幕Surface的幀率,可以看出性能下降不是因為小游戲代碼執行效率低導致直播開(kāi)銷(xiāo)過(guò)高,而是主進(jìn)程效率低下造成的在屏幕渲染器上。
  于是我們剖析了直播時(shí)主進(jìn)程的運行效率,發(fā)現耗時(shí)函數是glFinish。
  并且有兩個(gè)電話(huà):
  如果去掉第一個(gè)調用,這次Live SDK里面的時(shí)間會(huì )超過(guò)100毫秒。
  要理解為什么這個(gè) GL 命令需要這么長(cháng)時(shí)間,讓我們看一下它的描述:
  直到所有先前調用的 GL 命令的效果完成后,glFinish 才會(huì )返回。
  描述很簡(jiǎn)單:它會(huì )阻塞,直到所有先前調用的 GL 指令都完成。
  所以好像之前的GL指令太多了?但是,GL指令隊列是線(xiàn)程隔離的。在主進(jìn)程的Renderer線(xiàn)程中,在glFinish之前只會(huì )執行極少量的紋理類(lèi)型轉換的GL指令。從騰訊云的同學(xué)那里了解到,本帖不會(huì )使用推流接口。線(xiàn)程執行了很多GL指令,這么少的GL指令怎么會(huì )讓glFinish阻塞這么久?等等,很多 GL 指令?小游戲進(jìn)程此時(shí)不是在執行大量的GL指令嗎?會(huì )不會(huì )是小游戲進(jìn)程中GL指令較多導致主進(jìn)程的glFinsih耗時(shí)過(guò)長(cháng)?
  這樣的猜測不無(wú)道理:雖然GL指令隊列是線(xiàn)程隔離的,但是處理指令的GPU只有一個(gè)。一個(gè)進(jìn)程中過(guò)多的 GL 指令會(huì )導致另一個(gè)進(jìn)程在需要 glFinish 時(shí)阻塞時(shí)間過(guò)長(cháng)。谷歌沒(méi)有找到相關(guān)的描述,需要自己驗證一下這個(gè)猜測。
  重新觀(guān)察上面的測試數據:發(fā)現直播能到60幀的時(shí)候,直播結束后能到60幀左右。這是否意味著(zhù)在小游戲GPU負載低的情況下,glFinish的耗時(shí)也會(huì )減少呢??
  在性能下降嚴重的模型上:保持其他變量不變,嘗試低負載運行一個(gè)小游戲,發(fā)現glFinsih的耗時(shí)成功下降到10毫秒左右,證實(shí)了上面的猜測——確實(shí)是小游戲正在執行的游戲進(jìn)程大量的GL指令阻塞了主進(jìn)程glFinish的執行。
  如何解決?小游戲進(jìn)程的高負載是改不了的,那小游戲可不可以在一幀渲染完就停止,等主進(jìn)程的glFinish完成再渲染下一幀呢?
  這里做了各種嘗試:OpenGL的glFence同步機制不能跨進(jìn)程使用;由于GL指令是異步執行的,所以通過(guò)跨進(jìn)程通信鎖定小游戲的GL線(xiàn)程,并不能保證主進(jìn)程執行g(shù)lFinish指令時(shí)小游戲進(jìn)程的進(jìn)度已經(jīng)執行完畢,這只能通過(guò)以下方式來(lái)保證在小游戲進(jìn)程中加入glFinish,但這會(huì )使雙緩沖機制失效,導致小游戲渲染幀率大幅下降。
  既然避免不了glFinish帶來(lái)的阻塞,那我們回到問(wèn)題的開(kāi)頭:為什么需要glFinish?由于雙緩沖機制的存在,一般來(lái)說(shuō)不需要glFinish等待前面的繪制完成,否則雙緩沖就失去了意義。在兩次glFinish調用中,可以直接去掉第一個(gè)紋理處理調用。經(jīng)過(guò)溝通,發(fā)現引入了第二次騰訊云SDK調用,解決了一個(gè)歷史問(wèn)題,可以嘗試去掉。在騰訊云同學(xué)的幫助下,去掉glFinish后,渲染幀率終于和小游戲的輸出幀率一致了。經(jīng)過(guò)兼容性和性能測試,沒(méi)有發(fā)現去掉glFinish導致的問(wèn)題。
  這個(gè)問(wèn)題的最終解決方案很簡(jiǎn)單:但是在分析問(wèn)題原因的過(guò)程中其實(shí)做了很多實(shí)驗。同一個(gè)應用中一個(gè)GPU負載高的進(jìn)程會(huì )影響到另一個(gè)進(jìn)程耗時(shí)的glFinish這種場(chǎng)景確實(shí)是非常困難的。很少見(jiàn),參考資料也不多。這個(gè)過(guò)程也讓我深刻體會(huì )到glFinish使雙緩沖機制失效帶來(lái)的性能影響是巨大的。在使用OpenGL進(jìn)行渲染和繪圖時(shí),我應該非常謹慎地使用glFinish。
  5.2 后臺進(jìn)程優(yōu)先級問(wèn)題
  測試過(guò)程中:我們發(fā)現無(wú)論使用多少幀率向直播SDK發(fā)送圖片,觀(guān)眾看到的圖片幀率始終只有16幀左右。排除背景原因后,我們發(fā)現編碼器的幀率不夠。經(jīng)騰訊云同學(xué)測試,同一進(jìn)程編碼幀率可以達到設定的30幀,所以還是多進(jìn)程導致的問(wèn)題。在這里,編碼是一個(gè)很重的操作,比較消耗CPU資源,所以我們首先懷疑的是后臺進(jìn)程的優(yōu)先級。
  要確認問(wèn)題:
  總結一下:可以確認幀率下降是后臺進(jìn)程(以及它擁有的線(xiàn)程)的優(yōu)先級低導致的。
  在微信中提高線(xiàn)程優(yōu)先級是很常見(jiàn)的。比如小程序的JS線(xiàn)程和小游戲的渲染線(xiàn)程,在運行時(shí)都會(huì )通過(guò)android.os.Process.setThreadPriority方法設置線(xiàn)程的優(yōu)先級。騰訊云SDK的同學(xué)很快就給我們提供了設置線(xiàn)程優(yōu)先級的接口,但是實(shí)際運行的時(shí)候發(fā)現編碼幀率只從16幀增加到18幀左右。什么地方出了錯?
  前面提到:我們通過(guò)chrt命令設置線(xiàn)程優(yōu)先級是有效的,但是android.os.Process.setThreadPriority方法設置的線(xiàn)程優(yōu)先級對應的是renice命令設置的nice值。仔細看了chrt手冊,發(fā)現之前測試的理解是錯誤的。我使用命令chrt -p [pid] [priority]直接設置了優(yōu)先級,但是沒(méi)有設置調度策略參數,導致線(xiàn)程的調度策略從Linux默認的SCHED_OTHER改為SCHED_RR,即該命令的默認設置,而SCHED_RR是一種“實(shí)時(shí)策略”,導致線(xiàn)程的調度優(yōu)先級變得很高。
  其實(shí):renice設置的線(xiàn)程優(yōu)先級(即android.os.Process.setThreadPriority)對于后臺進(jìn)程擁有的線(xiàn)程幫助不大。
  事實(shí)上,已經(jīng)有人對此進(jìn)行了解釋?zhuān)?br />   為了解決這個(gè)問(wèn)題,Android 還以一種簡(jiǎn)單的方式使用 Linux cgroups 來(lái)創(chuàng )建更嚴格的前臺與后臺調度。前臺/默認 cgroup 允許正常進(jìn)行線(xiàn)程調度。然而,后臺 cgroup 只應用了總 CPU 時(shí)間的一小部分的限制,該時(shí)間可用于該 cgroup 中的所有線(xiàn)程。因此,如果該百分比為 5%,并且您有 10 個(gè)后臺線(xiàn)程和一個(gè)前臺線(xiàn)程都想運行,那么這 10 個(gè)后臺線(xiàn)程加在一起最多只能占用前臺可用 CPU 周期的 5%。(當然,如果沒(méi)有前臺線(xiàn)程想要運行,后臺線(xiàn)程可以使用所有可用的 CPU 周期。)
  關(guān)于線(xiàn)程優(yōu)先級的設置,有興趣的同學(xué)可以看看另一位大佬的文章:《Android的詭異陷阱——設置線(xiàn)程優(yōu)先級導致的微信卡頓悲劇》。
  最后:為了提高編碼幀率,防止后臺主進(jìn)程被kill掉,我們最終決定在直播時(shí)在主進(jìn)程中創(chuàng )建一個(gè)前臺Service。
  六、總結與展望
  多進(jìn)程是一把雙刃劍。在給我們帶來(lái)隔離和性能優(yōu)勢的同時(shí),也給我們帶來(lái)了跨進(jìn)程通信的問(wèn)題。幸運的是,借助系統Surface能力和各種跨進(jìn)程解決方案,我們可以更好地解決小游戲直播中遇到的問(wèn)題。
  當然:解決跨進(jìn)程問(wèn)題最好的辦法就是避免跨進(jìn)程。我們也考慮過(guò)在小游戲的過(guò)程中運行視頻號直播的推流模塊的方案,但是考慮到改造成本,我們沒(méi)有選擇這個(gè)方案。
  同時(shí):本次SurfaceView跨進(jìn)程渲染的實(shí)踐對其他業(yè)務(wù)也有一定的參考價(jià)值——對于一些內存壓力大或者安全風(fēng)險高的場(chǎng)景,需要SurfaceView渲染繪制,邏輯可以放在一個(gè)獨立的進(jìn)程,然后通過(guò)跨進(jìn)程渲染的方式繪制到主進(jìn)程的View上,在獲得獨立進(jìn)程優(yōu)勢的同時(shí),也避免了進(jìn)程間跳轉帶來(lái)的體驗碎片化。
  手把手搭建一個(gè)簡(jiǎn)單的直播系統》《淘寶直播技術(shù)干貨:高清低延遲實(shí)時(shí)視頻直播技術(shù)解密》《技術(shù)干貨:實(shí)時(shí)視頻直播首屏優(yōu)化實(shí)踐》 400ms》《新浪微博技術(shù)分享:微博實(shí)時(shí)直播百萬(wàn)級高并發(fā)架構實(shí)踐》《視頻直播實(shí)時(shí)混音技術(shù)原理與實(shí)踐總結》《七牛云技術(shù)分享:使用QUIC協(xié)議》實(shí)現0卡頓的實(shí)時(shí)視頻直播!》《近期火爆的實(shí)時(shí)直播問(wèn)答系統實(shí)現思路與技術(shù)難點(diǎn)分享》》微信朋友圈千億訪(fǎng)問(wèn)量背后的技術(shù)挑戰與實(shí)踐總結》《微信團隊分享:微信移動(dòng)端全文搜索多拼音字符問(wèn)題解決方案》《微信團隊分享:高性能通用iOS版微信key-value組件技術(shù)實(shí)踐》》微信團隊分享:iOS版微信如何防止特殊字符導致爆群,APP閃退?》 《微信團隊原創(chuàng )分享:iOS版微信的內存監控系統技術(shù)實(shí)踐》 《iOS后臺喚醒實(shí)踐:微信收到和到達語(yǔ)音提醒技術(shù)總結》 《微信團隊分享:視頻圖像的超分辨率技術(shù)原理及應用場(chǎng)景》 》》微信團隊分享:微信團隊分享:iOS版微信高性能通用鍵值組件技術(shù)實(shí)踐》 《微信團隊分享:iOS版微信如何防止特殊字符導致的爆群和APP閃退?》 《微信團隊原創(chuàng )分享:iOS版微信的內存監控系統技術(shù)實(shí)踐》 《iOS后臺喚醒實(shí)踐:微信收到和到達語(yǔ)音提醒技術(shù)總結》 《微信團隊分享:視頻圖像的超分辨率技術(shù)原理及應用場(chǎng)景》 》 《微信團隊分享:解密微信每天幾億次實(shí)時(shí)音視頻聊天背后的技術(shù)》 《微信團隊分享:微信安卓版小視頻編解碼器填補的那些坑》
  . . . 《來(lái)龍去脈》《月活8.89億的超級IM微信如何做Android端兼容性測試》《一文搞定微信開(kāi)源移動(dòng)數據庫組件WCDB!》《技術(shù)專(zhuān)訪(fǎng)微信客戶(hù)端團隊負責人:如何啟動(dòng)客戶(hù)端性能監控與優(yōu)化》《基于時(shí)序海量數據冷熱分層架構的微信后臺設計實(shí)踐》《微信團隊原創(chuàng )分享:Android版微信臃腫難點(diǎn)與解決方案》 《模塊化實(shí)踐之路》《微信后臺團隊:異步消息隊列優(yōu)化升級微信后臺分享》《微信團隊原創(chuàng )分享:微信客戶(hù)端SQLite數據庫損壞修復實(shí)踐》《微信Mars:微信內部使用的網(wǎng)絡(luò )層封裝庫,即將開(kāi)源》《如約而至:移動(dòng)端微信自用End-IM網(wǎng)絡(luò )層跨平臺組件庫Mars》已正式開(kāi)源》 《開(kāi)源libco庫:支撐8億微信用戶(hù)單機千萬(wàn)級連接的后臺框架基石【源碼下載】》 《微信新一代通信安全解決方案:基于在 TLS1 上?!段⑿艌F隊分享:極致優(yōu)化,iOS版微信編譯速度提升3倍實(shí)踐總結》《IM“掃一掃”》功能容易做嗎?看微信“掃一掃識物”完整技術(shù)實(shí)現《微信團隊分享:微信支付代碼重構帶來(lái)的移動(dòng)端軟件架構思考》《IM開(kāi)發(fā)寶典:史上最全,微信各種功能參數》數據與邏輯規律總結》《微信團隊分享:微信直播間單間1500萬(wàn)在線(xiàn)聊天室的消息架構演進(jìn)》&gt;&gt;更多類(lèi)似文章...
 ?。ū疚耐桨l(fā)表于:)返回搜狐查看更多
  編輯:
  近期發(fā)布:中恒電國際融媒體平臺,多端傳播,全媒體發(fā)布
  
  媒體融合技術(shù)平臺-內容管理系統是順應全媒體時(shí)代和媒體融合發(fā)展的創(chuàng )新媒體發(fā)布管理平臺。平臺重構新聞采編生成流程,升級采編系統,真正實(shí)現“一次采編、多生成、多終端傳播、全媒體發(fā)布”。
  平臺系統系統、實(shí)用、可擴展、經(jīng)濟、技術(shù)先進(jìn)、成熟、安全;基于JAVA語(yǔ)言開(kāi)發(fā),采用自主研發(fā)的Enorth StructsX架構設計,具有良好的跨平臺性能??芍С諻indows、Linux等多種操作系統平臺,支持Oracle、MySQL等多種主流數據庫管理系統,可部署到Tomcat、Weblogic等多種應用服務(wù)器平臺。
  
  系統瀏覽器兼容性好,支持主流瀏覽器使用,包括Firefox、Chrome、IE、360瀏覽器等瀏覽器??沙休d億級數據量,支持高并發(fā)、高可用,配備多重安全策略。系統支持中文、英文、俄文、維吾爾文、哈薩克文等多種語(yǔ)言進(jìn)行管理和發(fā)布,支持使用utf-8編碼。手機端頁(yè)面,客戶(hù)端支持ios6.0及以上系統,Android4.0及以上系統。系統提供標準化接口規范,預留標準化二次開(kāi)發(fā)接口,方便日后平臺功能擴展及與第三方軟件系統對接。
  媒體融合技術(shù)平臺支持網(wǎng)站、手機網(wǎng)站、APP客戶(hù)端、微博等主流社交平臺內容同步管理,實(shí)現內容全面覆蓋、多終端覆蓋。新聞發(fā)布由過(guò)去的一對一發(fā)布轉變?yōu)橐粚Χ喟l(fā)布。 查看全部

  解決方案:微信小游戲直播在A(yíng)ndroid端的跨進(jìn)程渲染推流實(shí)踐
  本文由微信開(kāi)發(fā)團隊工程師“virwu”分享。
  1 簡(jiǎn)介
  近期,微信小游戲支持一鍵播放視頻號。將微信升級到最新版本后,打開(kāi)騰訊小游戲(如跳轉、歡樂(lè )斗地主等),在右上角的菜單中可以看到開(kāi)始直播的按鈕。按鈕成為游戲主播(如下圖所示)。
  但出于性能、安全等一系列考慮,微信小游戲運行在獨立進(jìn)程中,視頻號直播相關(guān)的模塊不會(huì )在該環(huán)境下初始化。這意味著(zhù)小游戲的音視頻數據必須跨進(jìn)程傳輸到主進(jìn)程進(jìn)行流式傳輸,這給我們實(shí)現小游戲的直播帶來(lái)了一系列的挑戰。
 ?。ū疚耐桨l(fā)表于:)
  2.系列文章
  本文是系列文章中的第 5 篇:
  《系統聊天技術(shù)(一):美拍直播彈幕系統的實(shí)時(shí)推送技術(shù)實(shí)踐之路》 《系統聊天技術(shù)(二):阿里電商IM消息平臺,在群聊和直播場(chǎng)景下的技術(shù)實(shí)踐直播系統聊天技術(shù)(三):微信直播聊天室單間1500萬(wàn)在線(xiàn)消息的消息架構演進(jìn)》 《直播系統聊天技術(shù)(四):微信直播聊天室實(shí)時(shí)消息系統架構演進(jìn)實(shí)踐》百度直播海量用戶(hù)》《直播系統聊天技術(shù)(五):微信小游戲直播在A(yíng)ndroid端的跨進(jìn)程渲染與推流實(shí)踐》(*篇)3.視頻采集與推流
  3.1 屏幕截圖?
  小游戲直播的本質(zhì)是將主播手機屏幕上的內容展示給觀(guān)眾。自然而然,我們可以想到利用系統的錄屏接口MediaProjection來(lái)采集視頻數據。
  該方案具有以下優(yōu)點(diǎn):
  但最終這個(gè)方案被否決了,主要是出于以下考慮:
  轉念一想,既然小游戲的渲染完全由我們來(lái)控制,那么為了更好的直播體驗,是否可以將小游戲渲染的內容跨進(jìn)程傳輸到主進(jìn)程進(jìn)行推流呢?
  3.2 小游戲渲染架構
  為了更好的描述我們采用的方案,這里簡(jiǎn)單介紹一下小游戲的渲染架構:
  可以看到圖中左半部分代表前臺的小游戲流程,其中MagicBrush是小游戲渲染引擎,從小游戲代碼接收渲染指令,將畫(huà)面渲染到由小游戲提供的Surface上屏幕上的 SurfaceView。主進(jìn)程在后臺不參與整個(gè)過(guò)程。
  3.3 小游戲錄屏時(shí)的情況
  小游戲之前已經(jīng)支持錄制游戲內容,原理上和直播類(lèi)似,都需要獲取當前小游戲的畫(huà)面內容。
  開(kāi)啟錄屏后,小游戲會(huì )切換到以下渲染模式:
  可以看出MagicBrush的輸出目標不再是屏幕上的SurfaceView,而是Renderer生成的SurfaceTexture。
  這里簡(jiǎn)單介紹一下Renderer的作用:
  Renderer是一個(gè)獨立的渲染模塊,代表了一個(gè)獨立的GL環(huán)境。它可以創(chuàng )建SurfaceTexture作為輸入,接收到SurfaceTexture的onFrameAvailable回調后,通過(guò)updateTexImage方法將圖像數據轉換為GL_TEXTURE_EXTERNAL_OES類(lèi)型的紋理參與后續的渲染過(guò)程,并可以將渲染結果輸出到另一個(gè)Surface。
  圖中的流程一步步解釋如下:
  1)MagicBrush接收到小游戲代碼調用的渲染指令,將小游戲的內容渲染到第一個(gè)Renderer創(chuàng )建的SurfaceTexture上;
  2)然后這個(gè)Renderer做了兩件事:
  3)第二個(gè)Renderer將第一個(gè)Renderer提供的紋理渲染到mp4編碼器提供的輸入SurfaceTexture中,最終編碼器編碼生成mp4錄屏文件。
  3.4 改造錄屏解決方案?
  可以看出,在錄屏方案中,一個(gè)Renderer負責將游戲內容上傳到屏幕上,另一個(gè)Renderer將相同的紋理渲染到編碼器,用于錄制游戲內容。直播其實(shí)也差不多。是不是只要把編碼器換成直播的推流模塊就夠了?
  沒(méi)錯,但是還漏掉了一個(gè)關(guān)鍵環(huán)節:streaming模塊運行在主進(jìn)程中,我們需要跨進(jìn)程傳遞圖片數據!如何跨進(jìn)程?
  說(shuō)到跨進(jìn)程: 可能我們腦海中跳出的第一反應就是Binder、Socket、共享內存等傳統的IPC通信方式。但是仔細想想,系統提供的SurfaceView是一個(gè)非常特殊的View組件。它不通過(guò)傳統的View樹(shù)參與繪制,而是通過(guò)系統的SurfaceFlinger直接合成到屏幕上,SurfaceFlinger運行在系統進(jìn)程上。我們在SurfaceView提供的Surface上繪制的內容必須能夠跨進(jìn)程傳遞,而Surface跨進(jìn)程的方法很簡(jiǎn)單——它本身實(shí)現了Parcelable接口,也就是說(shuō)我們可以使用Binder直接傳遞Surface對象跨進(jìn)程。
  所以我們有以下初步計劃:
  可以看出,第三步不再渲染到mp4編碼器,而是渲染到從主進(jìn)程跨進(jìn)程傳過(guò)來(lái)的Surface。主進(jìn)程的Surface由一個(gè)Renderer創(chuàng )建的SurfaceTexture封裝而成?,F在小游戲進(jìn)程將圖像渲染到這個(gè) Surface 作為生產(chǎn)者。當一幀渲染完成后,主進(jìn)程的SurfaceTexture會(huì )收到一個(gè)onFrameAvailable回調通知圖像數據已經(jīng)準備好,然后通過(guò)updateTexImage獲取對應的紋理數據。這里,由于直播模塊只支持GL_TEXTURE_2D類(lèi)型的貼圖,所以這里主進(jìn)程Renderer會(huì )將GL_TEXTURE_EXTERNAL_OES轉換成GL_TEXTURE_2D貼圖,然后發(fā)送給直播編碼器,完成推流過(guò)程。
  經(jīng)過(guò)一番改造:上述方案已經(jīng)成功將小游戲渲染到屏幕上,并傳遞給主進(jìn)程進(jìn)行流式傳輸,但這真的是最優(yōu)方案嗎?
  想了想,發(fā)現上面的解決方案中Renderer太多了。小游戲進(jìn)程中有兩個(gè),一個(gè)是渲染到屏幕上,一個(gè)是跨進(jìn)程渲染到Surface,還有一個(gè)是在主進(jìn)程中轉換紋理調用流模塊。如果要同時(shí)支持錄屏,需要在小游戲進(jìn)程中再啟動(dòng)一個(gè)Renderer渲染到mp4編碼器。過(guò)多的Renderer意味著(zhù)過(guò)多的額外渲染開(kāi)銷(xiāo),會(huì )影響小游戲的性能。
  3.5 跨進(jìn)程渲染方案
  
  縱觀(guān)整個(gè)流程,其實(shí)只需要主進(jìn)程的Renderer。小游戲額外使用的Render無(wú)非是為了同時(shí)滿(mǎn)足同屏渲染和跨進(jìn)程傳輸。constraints,那么我們就簡(jiǎn)單的把小游戲進(jìn)程的入屏Surface傳給主進(jìn)程進(jìn)行入屏渲染!
  最終,我們將小游戲流程中的兩個(gè)冗余Renderer大幅砍掉。MagicBrush直接渲染到跨進(jìn)程傳遞給Surface,而主進(jìn)程的Renderer負責將紋理渲染到跨進(jìn)程以及紋理類(lèi)型轉換。傳輸的小游戲進(jìn)程在屏幕Surface上,實(shí)現畫(huà)面在屏幕上的渲染。
  最終需要的Renderer數量從原來(lái)的3個(gè)減少到需要的1個(gè),性能提升的同時(shí)架構更加清晰。
  以后需要同時(shí)支持錄屏的時(shí)候,稍微改動(dòng)一下,把mp4編碼器的輸入SurfaceTexture跨進(jìn)程傳給主進(jìn)程,然后給它添加一個(gè)Renderer渲染紋理(如圖下圖)。
  3.6 兼容性和性能
  說(shuō)到這里,不禁有些擔心。Surface方案的跨進(jìn)程傳輸和渲染會(huì )不會(huì )有兼容性問(wèn)題?
  其實(shí)雖然不常見(jiàn),但是官方文檔上說(shuō)是可以跨進(jìn)程抽取的:
  SurfaceView 結合了表面和視圖。SurfaceView 的視圖組件由 SurfaceFlinger(而不是應用程序)合成,支持從單獨的線(xiàn)程/進(jìn)程進(jìn)行渲染,并與應用程序 UI 渲染隔離。
  而Chrome和Android O之后的系統WebView都有使用跨進(jìn)程渲染的方案。
  我們的兼容性測試覆蓋了Android 5.1及之后的所有主流系統版本和機型。除了Android 5.flow跨進(jìn)程渲染黑屏的問(wèn)題。
  性能方面:我們使用WebGL Aquarium的demo進(jìn)行性能測試。我們可以看到對平均幀率的影響約為15%。由于渲染和流式處理,主進(jìn)程的 CPU 有所增加。奇怪的是,小游戲進(jìn)程的CPU開(kāi)銷(xiāo)卻減少了。減少的原因尚未得到證實(shí)。疑似與屏幕操作移至主進(jìn)程有關(guān),不排除統計方法的影響。
  3.7 總結
  為了不記錄宿主端的評論插件,我們先從小游戲的渲染流程說(shuō)起。借助Surface的跨進(jìn)程渲染和傳輸圖像的能力,我們將渲染和上傳小游戲的過(guò)程移到了主進(jìn)程中,同時(shí)生成紋理進(jìn)行流式傳輸。兼容性和性能滿(mǎn)足要求。
  4. 音頻采集和流式傳輸
  4.1 方案選擇
  在音頻采集方案中,我們注意到Android 10及以上系統提供了AudioPlaybackCapture方案,可以讓我們在一定范圍內采集系統音頻。當時(shí)的一些預研結論如下。
  捕獲者 - 捕獲發(fā)生的條件:
  被俘方 - 可以被俘的條件:
  總的來(lái)說(shuō):Android 10及以上可以使用AudioPlaybackCapture方案進(jìn)行音頻采集,但考慮到Android 10的系統版本限制太多,我們最終選擇了自己對小游戲播放的所有音頻進(jìn)行采集和混音。
  4.2 跨進(jìn)程音頻數據傳輸
  現在,老問(wèn)題又一次出現在我們面前:小游戲中混入的音頻數據在小游戲進(jìn)程中,我們需要將數據傳輸到主進(jìn)程中進(jìn)行流式處理。
  它不同于一般的用于方法調用的IPC跨進(jìn)程通信:在這種場(chǎng)景下,我們需要頻繁(每40毫秒)傳輸大數據塊(16毫秒的數據量約為8k)。
  同時(shí):由于直播的特點(diǎn),這個(gè)跨進(jìn)程傳輸過(guò)程的延遲需要盡可能低,否則會(huì )導致音視頻不同步。
  為了實(shí)現上述目標:我們測試了Binder、LocalSocket、MMKV、SharedMemory、Pipe等幾種IPC方案。在搭建的測試環(huán)境中,我們模擬小游戲過(guò)程中真實(shí)的音頻傳輸過(guò)程,每16毫秒發(fā)送一次序列化數據對象。數據對象的大小分為三個(gè)級別:3k/4M/10M,發(fā)送前存儲時(shí)間戳在對象中;以主進(jìn)程接收到數據并反序列化成數據對象的時(shí)刻為結束時(shí)間,計算傳輸延遲。
  最終得到如下結果:
  注:其中XIPCInvoker(Binder)和MMKV傳輸大量數據耗時(shí)過(guò)長(cháng),結果不顯示。
  各方案分析如下(stall rate表示延遲&gt;2倍平均延遲且&gt;10毫秒的數據占總數的比例):
  可以看出,LocalSocket方案在各個(gè)情況下的傳輸延時(shí)表現都非常好。造成差異的主要原因是裸二進(jìn)制數據在跨進(jìn)程傳輸到主進(jìn)程后,仍然需要進(jìn)行數據復制操作,將其反序列化為數據對象。在使用LocalSocket時(shí),可以使用ObjectStream和Serializeable來(lái)實(shí)現流式復制。相比其他方案,一次性接收數據,然后復制,節省了很多時(shí)間(當然其他方案也可以設計成分塊流,同時(shí)復制,但是實(shí)現起來(lái)有一定的成本,它不像 ObjectStream 那樣穩定和易于使用)。
  我們還測試了LocalSocket的兼容性和性能,沒(méi)有出現傳輸失敗和斷開(kāi)連接的情況。只有三星S6的平均延遲超過(guò)了10毫秒,其他機型的延遲都在1毫秒左右,可以達到我們的預期。
  4.3 LocalSocket 的安全性
  常用的Binder的跨進(jìn)程安全是由系統實(shí)現的認證機制來(lái)保證的。LocalSocket是對Unix域套接字的封裝,所以要考慮它的安全性。
  《Android Unix Domain Sockets的誤用及安全隱患》一文詳細分析了在A(yíng)ndroid中使用LocalSocket帶來(lái)的安全風(fēng)險。
  PS:論文原文附件下載(請從本鏈接4.3節下載:)
  論文概要:由于LocalSocket本身缺乏認證機制,任何應用程序都可以連接,從而攔截數據或向接收端發(fā)送非法數據而導致異常。
  針對這個(gè)特點(diǎn),我們可以做兩種防御方式:
  4.4 總結
  為了兼容Android 10以下機型和直播,我們選擇自己處理小游戲的音頻采集,通過(guò)對比評測,我們選擇了LocalSocket作為跨進(jìn)程音頻數據傳輸的方案,滿(mǎn)足了直播在時(shí)延方面的需求。
  同時(shí),通過(guò)一些對策,可以有效規避LocalSocket的安全風(fēng)險。
  
  5.多進(jìn)程帶來(lái)的問(wèn)題
  回過(guò)頭來(lái)看,雖然整個(gè)解決方案看起來(lái)比較順利,但是由于多進(jìn)程的原因,在實(shí)現過(guò)程中還是有很多坑。以下兩個(gè)是主要的。
  5.1 glFinish導致渲染幀率嚴重下降
  在實(shí)現跨進(jìn)程渲染流解決方案后,我們進(jìn)行了一輪性能和兼容性測試。在測試過(guò)程中,我們發(fā)現部分中低端機型的幀率下降非常嚴重(如下圖)。
  重現后查看小游戲進(jìn)程渲染的幀率(即小游戲進(jìn)程繪制到跨進(jìn)程Surface的幀率),發(fā)現可以達到直播時(shí)的幀率未啟用廣播。
  我們使用的測試軟件PerfDog記錄了屏幕Surface的幀率,可以看出性能下降不是因為小游戲代碼執行效率低導致直播開(kāi)銷(xiāo)過(guò)高,而是主進(jìn)程效率低下造成的在屏幕渲染器上。
  于是我們剖析了直播時(shí)主進(jìn)程的運行效率,發(fā)現耗時(shí)函數是glFinish。
  并且有兩個(gè)電話(huà):
  如果去掉第一個(gè)調用,這次Live SDK里面的時(shí)間會(huì )超過(guò)100毫秒。
  要理解為什么這個(gè) GL 命令需要這么長(cháng)時(shí)間,讓我們看一下它的描述:
  直到所有先前調用的 GL 命令的效果完成后,glFinish 才會(huì )返回。
  描述很簡(jiǎn)單:它會(huì )阻塞,直到所有先前調用的 GL 指令都完成。
  所以好像之前的GL指令太多了?但是,GL指令隊列是線(xiàn)程隔離的。在主進(jìn)程的Renderer線(xiàn)程中,在glFinish之前只會(huì )執行極少量的紋理類(lèi)型轉換的GL指令。從騰訊云的同學(xué)那里了解到,本帖不會(huì )使用推流接口。線(xiàn)程執行了很多GL指令,這么少的GL指令怎么會(huì )讓glFinish阻塞這么久?等等,很多 GL 指令?小游戲進(jìn)程此時(shí)不是在執行大量的GL指令嗎?會(huì )不會(huì )是小游戲進(jìn)程中GL指令較多導致主進(jìn)程的glFinsih耗時(shí)過(guò)長(cháng)?
  這樣的猜測不無(wú)道理:雖然GL指令隊列是線(xiàn)程隔離的,但是處理指令的GPU只有一個(gè)。一個(gè)進(jìn)程中過(guò)多的 GL 指令會(huì )導致另一個(gè)進(jìn)程在需要 glFinish 時(shí)阻塞時(shí)間過(guò)長(cháng)。谷歌沒(méi)有找到相關(guān)的描述,需要自己驗證一下這個(gè)猜測。
  重新觀(guān)察上面的測試數據:發(fā)現直播能到60幀的時(shí)候,直播結束后能到60幀左右。這是否意味著(zhù)在小游戲GPU負載低的情況下,glFinish的耗時(shí)也會(huì )減少呢??
  在性能下降嚴重的模型上:保持其他變量不變,嘗試低負載運行一個(gè)小游戲,發(fā)現glFinsih的耗時(shí)成功下降到10毫秒左右,證實(shí)了上面的猜測——確實(shí)是小游戲正在執行的游戲進(jìn)程大量的GL指令阻塞了主進(jìn)程glFinish的執行。
  如何解決?小游戲進(jìn)程的高負載是改不了的,那小游戲可不可以在一幀渲染完就停止,等主進(jìn)程的glFinish完成再渲染下一幀呢?
  這里做了各種嘗試:OpenGL的glFence同步機制不能跨進(jìn)程使用;由于GL指令是異步執行的,所以通過(guò)跨進(jìn)程通信鎖定小游戲的GL線(xiàn)程,并不能保證主進(jìn)程執行g(shù)lFinish指令時(shí)小游戲進(jìn)程的進(jìn)度已經(jīng)執行完畢,這只能通過(guò)以下方式來(lái)保證在小游戲進(jìn)程中加入glFinish,但這會(huì )使雙緩沖機制失效,導致小游戲渲染幀率大幅下降。
  既然避免不了glFinish帶來(lái)的阻塞,那我們回到問(wèn)題的開(kāi)頭:為什么需要glFinish?由于雙緩沖機制的存在,一般來(lái)說(shuō)不需要glFinish等待前面的繪制完成,否則雙緩沖就失去了意義。在兩次glFinish調用中,可以直接去掉第一個(gè)紋理處理調用。經(jīng)過(guò)溝通,發(fā)現引入了第二次騰訊云SDK調用,解決了一個(gè)歷史問(wèn)題,可以嘗試去掉。在騰訊云同學(xué)的幫助下,去掉glFinish后,渲染幀率終于和小游戲的輸出幀率一致了。經(jīng)過(guò)兼容性和性能測試,沒(méi)有發(fā)現去掉glFinish導致的問(wèn)題。
  這個(gè)問(wèn)題的最終解決方案很簡(jiǎn)單:但是在分析問(wèn)題原因的過(guò)程中其實(shí)做了很多實(shí)驗。同一個(gè)應用中一個(gè)GPU負載高的進(jìn)程會(huì )影響到另一個(gè)進(jìn)程耗時(shí)的glFinish這種場(chǎng)景確實(shí)是非常困難的。很少見(jiàn),參考資料也不多。這個(gè)過(guò)程也讓我深刻體會(huì )到glFinish使雙緩沖機制失效帶來(lái)的性能影響是巨大的。在使用OpenGL進(jìn)行渲染和繪圖時(shí),我應該非常謹慎地使用glFinish。
  5.2 后臺進(jìn)程優(yōu)先級問(wèn)題
  測試過(guò)程中:我們發(fā)現無(wú)論使用多少幀率向直播SDK發(fā)送圖片,觀(guān)眾看到的圖片幀率始終只有16幀左右。排除背景原因后,我們發(fā)現編碼器的幀率不夠。經(jīng)騰訊云同學(xué)測試,同一進(jìn)程編碼幀率可以達到設定的30幀,所以還是多進(jìn)程導致的問(wèn)題。在這里,編碼是一個(gè)很重的操作,比較消耗CPU資源,所以我們首先懷疑的是后臺進(jìn)程的優(yōu)先級。
  要確認問(wèn)題:
  總結一下:可以確認幀率下降是后臺進(jìn)程(以及它擁有的線(xiàn)程)的優(yōu)先級低導致的。
  在微信中提高線(xiàn)程優(yōu)先級是很常見(jiàn)的。比如小程序的JS線(xiàn)程和小游戲的渲染線(xiàn)程,在運行時(shí)都會(huì )通過(guò)android.os.Process.setThreadPriority方法設置線(xiàn)程的優(yōu)先級。騰訊云SDK的同學(xué)很快就給我們提供了設置線(xiàn)程優(yōu)先級的接口,但是實(shí)際運行的時(shí)候發(fā)現編碼幀率只從16幀增加到18幀左右。什么地方出了錯?
  前面提到:我們通過(guò)chrt命令設置線(xiàn)程優(yōu)先級是有效的,但是android.os.Process.setThreadPriority方法設置的線(xiàn)程優(yōu)先級對應的是renice命令設置的nice值。仔細看了chrt手冊,發(fā)現之前測試的理解是錯誤的。我使用命令chrt -p [pid] [priority]直接設置了優(yōu)先級,但是沒(méi)有設置調度策略參數,導致線(xiàn)程的調度策略從Linux默認的SCHED_OTHER改為SCHED_RR,即該命令的默認設置,而SCHED_RR是一種“實(shí)時(shí)策略”,導致線(xiàn)程的調度優(yōu)先級變得很高。
  其實(shí):renice設置的線(xiàn)程優(yōu)先級(即android.os.Process.setThreadPriority)對于后臺進(jìn)程擁有的線(xiàn)程幫助不大。
  事實(shí)上,已經(jīng)有人對此進(jìn)行了解釋?zhuān)?br />   為了解決這個(gè)問(wèn)題,Android 還以一種簡(jiǎn)單的方式使用 Linux cgroups 來(lái)創(chuàng )建更嚴格的前臺與后臺調度。前臺/默認 cgroup 允許正常進(jìn)行線(xiàn)程調度。然而,后臺 cgroup 只應用了總 CPU 時(shí)間的一小部分的限制,該時(shí)間可用于該 cgroup 中的所有線(xiàn)程。因此,如果該百分比為 5%,并且您有 10 個(gè)后臺線(xiàn)程和一個(gè)前臺線(xiàn)程都想運行,那么這 10 個(gè)后臺線(xiàn)程加在一起最多只能占用前臺可用 CPU 周期的 5%。(當然,如果沒(méi)有前臺線(xiàn)程想要運行,后臺線(xiàn)程可以使用所有可用的 CPU 周期。)
  關(guān)于線(xiàn)程優(yōu)先級的設置,有興趣的同學(xué)可以看看另一位大佬的文章:《Android的詭異陷阱——設置線(xiàn)程優(yōu)先級導致的微信卡頓悲劇》。
  最后:為了提高編碼幀率,防止后臺主進(jìn)程被kill掉,我們最終決定在直播時(shí)在主進(jìn)程中創(chuàng )建一個(gè)前臺Service。
  六、總結與展望
  多進(jìn)程是一把雙刃劍。在給我們帶來(lái)隔離和性能優(yōu)勢的同時(shí),也給我們帶來(lái)了跨進(jìn)程通信的問(wèn)題。幸運的是,借助系統Surface能力和各種跨進(jìn)程解決方案,我們可以更好地解決小游戲直播中遇到的問(wèn)題。
  當然:解決跨進(jìn)程問(wèn)題最好的辦法就是避免跨進(jìn)程。我們也考慮過(guò)在小游戲的過(guò)程中運行視頻號直播的推流模塊的方案,但是考慮到改造成本,我們沒(méi)有選擇這個(gè)方案。
  同時(shí):本次SurfaceView跨進(jìn)程渲染的實(shí)踐對其他業(yè)務(wù)也有一定的參考價(jià)值——對于一些內存壓力大或者安全風(fēng)險高的場(chǎng)景,需要SurfaceView渲染繪制,邏輯可以放在一個(gè)獨立的進(jìn)程,然后通過(guò)跨進(jìn)程渲染的方式繪制到主進(jìn)程的View上,在獲得獨立進(jìn)程優(yōu)勢的同時(shí),也避免了進(jìn)程間跳轉帶來(lái)的體驗碎片化。
  手把手搭建一個(gè)簡(jiǎn)單的直播系統》《淘寶直播技術(shù)干貨:高清低延遲實(shí)時(shí)視頻直播技術(shù)解密》《技術(shù)干貨:實(shí)時(shí)視頻直播首屏優(yōu)化實(shí)踐》 400ms》《新浪微博技術(shù)分享:微博實(shí)時(shí)直播百萬(wàn)級高并發(fā)架構實(shí)踐》《視頻直播實(shí)時(shí)混音技術(shù)原理與實(shí)踐總結》《七牛云技術(shù)分享:使用QUIC協(xié)議》實(shí)現0卡頓的實(shí)時(shí)視頻直播!》《近期火爆的實(shí)時(shí)直播問(wèn)答系統實(shí)現思路與技術(shù)難點(diǎn)分享》》微信朋友圈千億訪(fǎng)問(wèn)量背后的技術(shù)挑戰與實(shí)踐總結》《微信團隊分享:微信移動(dòng)端全文搜索多拼音字符問(wèn)題解決方案》《微信團隊分享:高性能通用iOS版微信key-value組件技術(shù)實(shí)踐》》微信團隊分享:iOS版微信如何防止特殊字符導致爆群,APP閃退?》 《微信團隊原創(chuàng )分享:iOS版微信的內存監控系統技術(shù)實(shí)踐》 《iOS后臺喚醒實(shí)踐:微信收到和到達語(yǔ)音提醒技術(shù)總結》 《微信團隊分享:視頻圖像的超分辨率技術(shù)原理及應用場(chǎng)景》 》》微信團隊分享:微信團隊分享:iOS版微信高性能通用鍵值組件技術(shù)實(shí)踐》 《微信團隊分享:iOS版微信如何防止特殊字符導致的爆群和APP閃退?》 《微信團隊原創(chuàng )分享:iOS版微信的內存監控系統技術(shù)實(shí)踐》 《iOS后臺喚醒實(shí)踐:微信收到和到達語(yǔ)音提醒技術(shù)總結》 《微信團隊分享:視頻圖像的超分辨率技術(shù)原理及應用場(chǎng)景》 》 《微信團隊分享:解密微信每天幾億次實(shí)時(shí)音視頻聊天背后的技術(shù)》 《微信團隊分享:微信安卓版小視頻編解碼器填補的那些坑》
  . . . 《來(lái)龍去脈》《月活8.89億的超級IM微信如何做Android端兼容性測試》《一文搞定微信開(kāi)源移動(dòng)數據庫組件WCDB!》《技術(shù)專(zhuān)訪(fǎng)微信客戶(hù)端團隊負責人:如何啟動(dòng)客戶(hù)端性能監控與優(yōu)化》《基于時(shí)序海量數據冷熱分層架構的微信后臺設計實(shí)踐》《微信團隊原創(chuàng )分享:Android版微信臃腫難點(diǎn)與解決方案》 《模塊化實(shí)踐之路》《微信后臺團隊:異步消息隊列優(yōu)化升級微信后臺分享》《微信團隊原創(chuàng )分享:微信客戶(hù)端SQLite數據庫損壞修復實(shí)踐》《微信Mars:微信內部使用的網(wǎng)絡(luò )層封裝庫,即將開(kāi)源》《如約而至:移動(dòng)端微信自用End-IM網(wǎng)絡(luò )層跨平臺組件庫Mars》已正式開(kāi)源》 《開(kāi)源libco庫:支撐8億微信用戶(hù)單機千萬(wàn)級連接的后臺框架基石【源碼下載】》 《微信新一代通信安全解決方案:基于在 TLS1 上?!段⑿艌F隊分享:極致優(yōu)化,iOS版微信編譯速度提升3倍實(shí)踐總結》《IM“掃一掃”》功能容易做嗎?看微信“掃一掃識物”完整技術(shù)實(shí)現《微信團隊分享:微信支付代碼重構帶來(lái)的移動(dòng)端軟件架構思考》《IM開(kāi)發(fā)寶典:史上最全,微信各種功能參數》數據與邏輯規律總結》《微信團隊分享:微信直播間單間1500萬(wàn)在線(xiàn)聊天室的消息架構演進(jìn)》&gt;&gt;更多類(lèi)似文章...
 ?。ū疚耐桨l(fā)表于:)返回搜狐查看更多
  編輯:
  近期發(fā)布:中恒電國際融媒體平臺,多端傳播,全媒體發(fā)布
  
  媒體融合技術(shù)平臺-內容管理系統是順應全媒體時(shí)代和媒體融合發(fā)展的創(chuàng )新媒體發(fā)布管理平臺。平臺重構新聞采編生成流程,升級采編系統,真正實(shí)現“一次采編、多生成、多終端傳播、全媒體發(fā)布”。
  平臺系統系統、實(shí)用、可擴展、經(jīng)濟、技術(shù)先進(jìn)、成熟、安全;基于JAVA語(yǔ)言開(kāi)發(fā),采用自主研發(fā)的Enorth StructsX架構設計,具有良好的跨平臺性能??芍С諻indows、Linux等多種操作系統平臺,支持Oracle、MySQL等多種主流數據庫管理系統,可部署到Tomcat、Weblogic等多種應用服務(wù)器平臺。
  
  系統瀏覽器兼容性好,支持主流瀏覽器使用,包括Firefox、Chrome、IE、360瀏覽器等瀏覽器??沙休d億級數據量,支持高并發(fā)、高可用,配備多重安全策略。系統支持中文、英文、俄文、維吾爾文、哈薩克文等多種語(yǔ)言進(jìn)行管理和發(fā)布,支持使用utf-8編碼。手機端頁(yè)面,客戶(hù)端支持ios6.0及以上系統,Android4.0及以上系統。系統提供標準化接口規范,預留標準化二次開(kāi)發(fā)接口,方便日后平臺功能擴展及與第三方軟件系統對接。
  媒體融合技術(shù)平臺支持網(wǎng)站、手機網(wǎng)站、APP客戶(hù)端、微博等主流社交平臺內容同步管理,實(shí)現內容全面覆蓋、多終端覆蓋。新聞發(fā)布由過(guò)去的一對一發(fā)布轉變?yōu)橐粚Χ喟l(fā)布。

解決方案:搭建屬于你的在線(xiàn)實(shí)時(shí)采集系統——HTML5 在嵌入式系統中的應用

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 142 次瀏覽 ? 2022-11-23 23:18 ? 來(lái)自相關(guān)話(huà)題

  解決方案:搭建屬于你的在線(xiàn)實(shí)時(shí)采集系統——HTML5 在嵌入式系統中的應用
  在當今的信息社會(huì ),信息就是金錢(qián),所有的信息都必須是時(shí)效性的,過(guò)時(shí)的信息將沒(méi)有價(jià)值。由此可見(jiàn)實(shí)時(shí)信息的重要性。
  近年來(lái),隨著(zhù)物聯(lián)網(wǎng)在各行各業(yè)的快速發(fā)展,越來(lái)越多的終端設備接入網(wǎng)絡(luò ),實(shí)現遠程交互和控制;各種傳感器的廣泛分布使得數據節點(diǎn)的分布越來(lái)越多。而這些交互數據本身也是一種原創(chuàng )
信息。這些數據量需要我們采集
、分析、處理和反饋。數據的真實(shí)性、有效性、準確性和實(shí)時(shí)性保證了整個(gè)工作的效率、質(zhì)量和價(jià)值。
  在這里,我們實(shí)現了一個(gè)基于W5500的在線(xiàn)采集系統,并在其中引入了一個(gè)新鮮元素——HTML5。通過(guò)這種最新的Web語(yǔ)言,我們呈現了一個(gè)更加實(shí)時(shí)高效的在線(xiàn)實(shí)時(shí)采集系統。相信隨著(zhù)HTML5在嵌入式領(lǐng)域的不斷深入推廣,必將對產(chǎn)業(yè)效率和價(jià)值的提升產(chǎn)生重大影響。
  在詳細介紹這個(gè)實(shí)時(shí)采集系統之前,我們先簡(jiǎn)單了解一下HTML5。
  HTML5和HTML的區別
  HTML 是一種標記語(yǔ)言,旨在創(chuàng )建可在網(wǎng)絡(luò )瀏覽器中呈現的網(wǎng)頁(yè)。
  HTML5 是 HTML 的下一個(gè)修訂版本。從廣義上講,HTML5 包括一組新的和增強的 HTML、CSS3、JavaScript API 和事件的技術(shù)組合。
  圖 1HTML5 標志
  以下是 HTML5 相對于 HTML 新增和增強的主要特性:
  畫(huà)布 API 和 Web 套接字 API
  事實(shí)上,在線(xiàn)實(shí)時(shí)采集系統的實(shí)現得益于HTML5中新增的兩個(gè)API函數:Canvas和WebSocket。
  Canvas,由Apple于2004年為MAC OS X儀表盤(pán)開(kāi)發(fā)的像素繪圖元素發(fā)展而來(lái)。由一個(gè)Canvas元素和對應的JavaScript組成。它使開(kāi)發(fā)者無(wú)需借助其他第三方插件,即可使用JavaScript的Canvas圖形工具在Canvas元素畫(huà)板上動(dòng)態(tài)繪制圖形。
  Websocket,提供了一個(gè)直接與服務(wù)器通信的Socket。通信建立后,客戶(hù)端(瀏覽器)可以實(shí)現與Web服務(wù)器的雙向通信,而不需要客戶(hù)端頻繁輪詢(xún)服務(wù)器。這樣可以減少Http請求的開(kāi)銷(xiāo),減輕數據包的負擔,讓通信更加實(shí)時(shí)。
  通過(guò)這兩個(gè)API函數的靈活應用,我們實(shí)現了通過(guò)HTTP Server實(shí)時(shí)接收數據量并在網(wǎng)頁(yè)上動(dòng)態(tài)模擬的功能。
  在線(xiàn)實(shí)時(shí)采集系統演示
  系統環(huán)境
  a) MCU:STM32F103RC,256K字節的Flash,48K字節的SRAM,2K字節的EEPROM
  b) 以太網(wǎng)控制器:W5500,SPI接口連接單片機
  c) 電源:USB供電
  2.開(kāi)發(fā)工具:IAR for ARM v5.41,就是我們項目中使用的版本。如果你使用不同版本的IAR,請對STM的庫稍做調整。
  在看代碼之前,我們先看一下整個(gè)程序流程,如下圖所示。硬件初始化完成后,進(jìn)行網(wǎng)絡(luò )參數配置。這是根據自己網(wǎng)絡(luò )的情況配置W5500的IP地址等網(wǎng)絡(luò )參數,保證W5500可以上網(wǎng);在這個(gè)程序中,我們將使用W5500的兩個(gè)socket資源。一個(gè)是用來(lái)創(chuàng )建一個(gè)Http Server,這樣我們就可以通過(guò)在瀏覽器上輸入配置的IP地址來(lái)遠程訪(fǎng)問(wèn)我們的硬件;另一個(gè)是用來(lái)創(chuàng )建一個(gè)Web Socket Server,與網(wǎng)頁(yè)建立通信鏈接,用來(lái)傳輸我們的溫濕度數據。
  圖2 硬件運行流程
  當我們在瀏覽器上訪(fǎng)問(wèn)硬件的IP地址時(shí),它會(huì )向W5500發(fā)送一個(gè)http請求。W5500收到請求后,會(huì )將html5網(wǎng)頁(yè)信息發(fā)送給瀏覽器,以便瀏覽器顯示我們溫濕度檢測系統的主要信息。界面沒(méi)了 在網(wǎng)頁(yè)的代碼中,瀏覽器會(huì )主動(dòng)連接W5500的Web Socket Server,握手操作完成后,建立數據通信通道。這樣硬件就可以毫無(wú)障礙地將溫濕度數據發(fā)送給瀏覽器了。瀏覽器收到溫濕度數據后,使用canvas函數在指定位置繪制溫濕度指示的點(diǎn)和曲線(xiàn)。
  圖3 網(wǎng)頁(yè)顯示界面
  畫(huà)布和 Web 套接字
  在瀏覽器端,我們使用 HTML5 的 Canvas 繪圖工具和 WebSocket API 來(lái)構建我們的 Web 界面。當有新的溫濕度數據到來(lái)時(shí),畫(huà)布坐標系中會(huì )有點(diǎn)顯示,并標出編號,隨著(zhù)采集次數的增加,可以進(jìn)行多次數據連接,看曲線(xiàn)變化。網(wǎng)頁(yè)程序步驟如下:
  1)創(chuàng )建頁(yè)面和畫(huà)布所屬的style和body標簽
  2)繪制坐標軸,添加標題;建立 WebSocket 連接
  3)新數據到達,畫(huà)點(diǎn)畫(huà)線(xiàn)
  用畫(huà)布繪圖
  下面首先介紹如何創(chuàng )建畫(huà)布以及代碼中使用的繪圖函數。
  1)創(chuàng )建一個(gè)600×400的畫(huà)布,單位為像素
  '圖'width='600'height='400'&gt;
  2) 定義畫(huà)布的邊框寬度、顏色和填充大小。
  #圖表{
  邊框:1px 實(shí)心#03F;
  邊距:0 40px 0 80px;
  }
  3)JavaScript要繪制畫(huà)布,首先需要通過(guò)目標畫(huà)布的id獲取繪制環(huán)境。代碼需要通過(guò)id獲取canvas元素,然后使用該元素的getContext方法獲取其二維繪圖環(huán)境的引用
  canvas=document.getElementById('圖形');
  
  context=canvas.getContext('2d');
  4)畫(huà)線(xiàn)段
  context.lineWidth=2;//設置線(xiàn)寬
  context.strokeStyle='#999';//設置線(xiàn)條的顏色
  context.moveTo(x1,y1);//移動(dòng)到起點(diǎn)
  context.lineTo(x2,y2);//創(chuàng )建一條到終點(diǎn)的路徑
  context.stroke();//實(shí)際畫(huà)這條直線(xiàn)
  5)畫(huà)圓
  context.fillStyle='#000';//設置填充顏色
  context.beginPath();
  context.arc(x,y,2,0,Math.PI*2,true);//在坐標(x,y)處畫(huà)一個(gè)半徑為2的圓
  語(yǔ)境。關(guān)閉路徑();
  context.fill();//給圓圈填充顏色
  6)在指定位置寫(xiě)入標題文字
  context.fillText(text,x,y,maxWidth);
  結合上面的函數,畫(huà)出下圖。如果覺(jué)得這還不夠炫,html5 canvas還提供了漸變色、旋轉、插畫(huà)等功能。使用您的設計制作您自己的前端界面。
  圖 4 畫(huà)布示例圖
  WebSocket的使用接下來(lái)我們介紹一下WebSocket在html5中的使用及相關(guān)功能
  1)為了創(chuàng )建websocket連接,代碼需要創(chuàng )建一個(gè)WebSocket接口實(shí)例,傳入web服務(wù)的URL地址,sensorWebSocket對象會(huì )嘗試連接監聽(tīng)相應URL的服務(wù)
  varwsUri='ws:192.168.10.111:1818';
  sensorWebSocket=newWebSocket(wsUri);
  2)注冊事件,為事件鏈接相應的處理函數。比如瀏覽器頁(yè)面收到服務(wù)器的數據后,觸發(fā)onmessage事件,然后調用onMessage函數。在代碼中,我們注冊了四個(gè)事件:onopen、onmessage、onclose和onerror
  sensorWebSocket.onmessage=函數(evt){onMessage(evt)};
  3)消息處理函數。在硬件上,我們將采集到的溫濕度數據用'.'連接起來(lái)。在瀏覽器端,接收到數據后,使用字符串切分函數,將溫濕度數據進(jìn)行切分,存儲在一個(gè)數組對象中。下面的代碼是將指示轉換成坐標值顯示在畫(huà)布上,這里就不贅述了。
  functiononMessage(evt){
  vararrayTH = 新數組(2);
  arrayTH=evt.data.split('.');
  ...
  }
  4)主動(dòng)關(guān)閉websocket連接
  傳感器網(wǎng)絡(luò )套接字。關(guān)();
  怎么樣,websocket的使用很簡(jiǎn)單。使用這個(gè)強大的工具,您可以連接到遠程服務(wù)器并接收和發(fā)送消息。這個(gè)功能在雙向通信中非常有用,尤其是需要服務(wù)端主動(dòng)向瀏覽器頁(yè)面發(fā)送消息的時(shí)候。
  Web Socket 握手和數據幀
  在服務(wù)端創(chuàng )建好socket之后,首先要和客戶(hù)端進(jìn)行數據通信才能完成握手,那么在列出程序的時(shí)候如何實(shí)現這個(gè)握手呢,先看看握手過(guò)程:
  表1 握手過(guò)程
  上面已經(jīng)介紹了客戶(hù)端的代碼,下面是硬件中服務(wù)器1和2的代碼:
  #define WS_SERVER_PORT 1818//定義服務(wù)器監聽(tīng)的端口號
  socket(s,Sn_MR_TCP, WS_SERVER_PORT,0x20);//在W5500中建立socket連接
  listen(s);//開(kāi)啟監聽(tīng) s變量為W5500的socket序號,本例程中使用的是數字2
  下面是為W5500配置的網(wǎng)絡(luò )信息,其中IP地址為我們?yōu)g覽器頁(yè)面程序的websocket對象的監聽(tīng)地址。
  uint8 mac[6]={0x00,0x08,0xdc,0x11,0x11,0x11};
  
  uint8 嘴唇[4]={192,168,10,111};
  uint8 sub[4]={255,255,255,0};
  uint8gw[4]={192,168,10,1};
  設置SHAR(mac);
  設置SUBR(子);
  設置GAR(gw);
  設置SIPR(嘴唇);
  硬件中server 5、6、7進(jìn)程相關(guān)代碼:
  charsec_ws_key[32]={0x00,};
  characcept_key[32]={0x00,};
  //獲取Sec-WebSocket-Key:
  if(strstr((charconst*)wsRxBuf,"Sec-WebSocket-Key:"))
  {
  mid((char*)wsRxBuf,"Sec-WebSocket-Key: ","\r\n",sec_ws_key);//攔截sec_key
  calc_accept_key(sec_ws_key, accept_key);//編碼函數
  sprintf((char*)wsTxBuf, "HTTP/1.1 101 SwitchingProtocols\r\nUpgrade: WebSocket\r\nConnection:Upgrade\r\nSec-WebSocket-Accept: %s\r\n\r\n", accept_key); // 生成握手消息
  send(s,wsTxBuf,strlen((char*)wsTxBuf));//發(fā)送給客戶(hù)端
  }
  握手=1;
  這似乎有點(diǎn)抽象。讓我們看看實(shí)際的數據包。最上面的紅色字體是瀏覽器頁(yè)面的握手請求。Sec-websoket-Key之后就是我們截取的sec_key,后面的藍色字體就是服務(wù)器端的握手響應。,sec-websoket-Accept就是我們編碼好的accept_key,怎么樣,一目了然。
  圖5 握手過(guò)程捕獲信息
  握手成功后,可以將定時(shí)采集的溫濕度數據發(fā)送到硬件端的瀏覽器頁(yè)面。WebSocket 協(xié)議的數據包非常輕量。下面介紹數據包的幀格式:
  圖 6 WebSocket 數據幀格式
  上圖是官方的結構圖,第一個(gè)字節,第一位是FIN,后三位是RSV1到3。RSV是保留空間,用0填充,那么只需要前4位的第一個(gè)FIN要設置。接下來(lái)的四位存儲操作碼的值,它定義了有效載荷數據的解釋。FIN 用于指示消息的最后一個(gè)片段。如果只有一條消息,則FIN為1;這里我們使用opcode定義數據為text-0x1,所以第一個(gè)字的二進(jìn)制是1000001(0x81),第一個(gè)1是FIN值,最后一個(gè)1是opcode的值。
  然后是第二個(gè)字節的數據,由1位的MASK和7位的PayloadLen組成。MASK標識本數據幀的數據是否使用掩碼,PayloadLen表示數據部分的長(cháng)度。但是,PayloadLen 只有 7 位。如果換成無(wú)符號整數,它只有0到127之間的值。當然,這么小的值不能描述更大的數據。所以規定當數據長(cháng)度小于等于125時(shí),作為數據長(cháng)度的描述。,如果值為126,則接下來(lái)的兩個(gè)字節用于存放數據長(cháng)度,如果為127,則接下來(lái)的八個(gè)字節用于存放數據長(cháng)度。這里我們每次只發(fā)送5個(gè)字節的溫濕度數據,沒(méi)有使用掩碼,所以配置為0x05。
  然后就是上圖中的MaskingKey,它占用四個(gè)字節,存放mask的entity部分。但是這個(gè)數據只有在前面的MASK設置為1的時(shí)候才有,否則不使用mask就沒(méi)有這個(gè)數據了。最后是數據部分。如果掩碼存在,則所有數據都需要與掩碼進(jìn)行異或。如果沒(méi)有掩碼,那么可以直接使用下面的數據。
  看看我們的數據發(fā)送代碼是如何實(shí)現的:
  wsTxBuf[0]=0x81;
  wsTxBuf[1]=0x05;
  wsTxBuf[2]= 溫度/10+0x30;
  wsTxBuf[3]= 溫度+0x30;
  wsTxBuf[1]=0x2E;//分隔符'.'
  wsTxBuf[2]=Humi/10+0x30;
  wsTxBuf[3]= Humi+0x30;
  發(fā)送(s,wsTxBuf,strlen((char*)wsTxBuf));
  代碼是不是很簡(jiǎn)單!
  數據采集
  然后簡(jiǎn)要描述數據采集
過(guò)程。我們選用溫濕度傳感器DHT11實(shí)時(shí)采集并上傳室內溫濕度數據。這里,DHT11用于連接MCU(W5500)。它與MCU的通訊只需要一個(gè)I/O口,使用非常方便。DHT11與單片機的具體連接及相關(guān)調試這里不再詳述??梢运阉飨嚓P(guān)信息。
  相信隨著(zhù)HTML5的不斷成熟,它帶來(lái)的不僅僅是PC環(huán)境的Web革命。對于嵌入式領(lǐng)域,也能帶來(lái)更好的客戶(hù)體驗和產(chǎn)品性能。當然,我們還是要用到W5500這個(gè)特色以太網(wǎng)芯片。其全硬件的TCP/IP協(xié)議棧不僅大大節省了寶貴的嵌入式資源,也省去了很多開(kāi)發(fā)步驟和難度,使我們可以用更多的資源和精力來(lái)實(shí)現更精彩的Web功能。
  如果你感興趣,趕快做一個(gè)屬于你的在線(xiàn)實(shí)時(shí)采集系統吧。
  請到#p2527 下載完整的程序代碼程序。
  解決方案:如何高效的上架商品,采集產(chǎn)品到獨立站
  如何快速采集產(chǎn)品到獨立站?
  獨立跨境電商網(wǎng)站收貨后快速上架的情況很常見(jiàn),可以為賣(mài)家節省大量的時(shí)間和精力。
  有了采集工具,每天有上千種產(chǎn)品并不難。當然現在的獨立站已經(jīng)不是分發(fā)的時(shí)代了,講究的是精細分發(fā)。
  在shopyy獨立站后臺應用中心,應用商店,搜集,可以看到建站系統為賣(mài)家提供的免費采集
工具。
  支持:采集Shopify、亞馬遜、阿里巴巴、1688、速賣(mài)通等主流平臺的商品數據。
  推薦使用場(chǎng)景: 注意事項:
  教程:
  首先,如果你沒(méi)有安裝谷歌瀏覽器,你必須先安裝一個(gè)。
  應用中心,我的應用,設置,點(diǎn)擊下載插件,順便復制api鏈接
  
  然后打開(kāi)瀏覽器,點(diǎn)擊如圖所示的插件,如果沒(méi)有開(kāi)啟開(kāi)發(fā)者模式,點(diǎn)擊開(kāi)啟,加載解壓后的安裝包或者拖放到這個(gè)頁(yè)面。
  然后可以看到一個(gè)優(yōu)采云
抓圖工具插件,把它固定到工具欄上。
  點(diǎn)擊店鋪圖標,店鋪管理,給店鋪一個(gè)code,方便識別,
  一鍵粘貼并確認。
  前后可以打開(kāi)跨境電商平臺,開(kāi)始選擇商品收貨到獨立站。
  已成功采集
的商品可以在后臺的商品管理中看到,在已下架的商品中可以看到。如果采集的產(chǎn)品再次采集,會(huì )提示重復采集。
  
  使用產(chǎn)品批量修改工具,可以在申請中心修改多個(gè)產(chǎn)品的價(jià)格,實(shí)現批量上架。
  補充:除了平臺之外,我們經(jīng)常會(huì )遇到一些其他的獨立站想要收貨??梢允褂眠@個(gè)第三方工具采集導出shopify格式,然后在后臺應用中心選擇shopify導入。
  shopcaiji采集工具還是很強大的,支持主流的saas建站和開(kāi)源系統。擁有如此萬(wàn)能的采集工具,將大大提高尚品的效率。
  shopcaiji是一個(gè)支持采集
的建站平臺
  SAAS模式建站:shopify、oemsas、shopyy、shoplazza、shopline、xshopy、shopbase、wshop、
  開(kāi)源自建站:wordpress、opencart、magento
  基本涵蓋市面上所有主流建站平臺,還支持單品采集、全目錄采集、全站采集,可根據您的需求靈活配置。
  有免費版和付費版可供選擇。支持免費試用,滿(mǎn)意后再開(kāi)通。允許會(huì )員在同一個(gè)公網(wǎng)IP下以多個(gè)用戶(hù)登錄,即一個(gè)公司同一個(gè)IP。您只需購買(mǎi)一個(gè)即可供整個(gè)公司使用。
  采集工具官網(wǎng): 查看全部

  解決方案:搭建屬于你的在線(xiàn)實(shí)時(shí)采集系統——HTML5 在嵌入式系統中的應用
  在當今的信息社會(huì ),信息就是金錢(qián),所有的信息都必須是時(shí)效性的,過(guò)時(shí)的信息將沒(méi)有價(jià)值。由此可見(jiàn)實(shí)時(shí)信息的重要性。
  近年來(lái),隨著(zhù)物聯(lián)網(wǎng)在各行各業(yè)的快速發(fā)展,越來(lái)越多的終端設備接入網(wǎng)絡(luò ),實(shí)現遠程交互和控制;各種傳感器的廣泛分布使得數據節點(diǎn)的分布越來(lái)越多。而這些交互數據本身也是一種原創(chuàng )
信息。這些數據量需要我們采集
、分析、處理和反饋。數據的真實(shí)性、有效性、準確性和實(shí)時(shí)性保證了整個(gè)工作的效率、質(zhì)量和價(jià)值。
  在這里,我們實(shí)現了一個(gè)基于W5500的在線(xiàn)采集系統,并在其中引入了一個(gè)新鮮元素——HTML5。通過(guò)這種最新的Web語(yǔ)言,我們呈現了一個(gè)更加實(shí)時(shí)高效的在線(xiàn)實(shí)時(shí)采集系統。相信隨著(zhù)HTML5在嵌入式領(lǐng)域的不斷深入推廣,必將對產(chǎn)業(yè)效率和價(jià)值的提升產(chǎn)生重大影響。
  在詳細介紹這個(gè)實(shí)時(shí)采集系統之前,我們先簡(jiǎn)單了解一下HTML5。
  HTML5和HTML的區別
  HTML 是一種標記語(yǔ)言,旨在創(chuàng )建可在網(wǎng)絡(luò )瀏覽器中呈現的網(wǎng)頁(yè)。
  HTML5 是 HTML 的下一個(gè)修訂版本。從廣義上講,HTML5 包括一組新的和增強的 HTML、CSS3、JavaScript API 和事件的技術(shù)組合。
  圖 1HTML5 標志
  以下是 HTML5 相對于 HTML 新增和增強的主要特性:
  畫(huà)布 API 和 Web 套接字 API
  事實(shí)上,在線(xiàn)實(shí)時(shí)采集系統的實(shí)現得益于HTML5中新增的兩個(gè)API函數:Canvas和WebSocket。
  Canvas,由Apple于2004年為MAC OS X儀表盤(pán)開(kāi)發(fā)的像素繪圖元素發(fā)展而來(lái)。由一個(gè)Canvas元素和對應的JavaScript組成。它使開(kāi)發(fā)者無(wú)需借助其他第三方插件,即可使用JavaScript的Canvas圖形工具在Canvas元素畫(huà)板上動(dòng)態(tài)繪制圖形。
  Websocket,提供了一個(gè)直接與服務(wù)器通信的Socket。通信建立后,客戶(hù)端(瀏覽器)可以實(shí)現與Web服務(wù)器的雙向通信,而不需要客戶(hù)端頻繁輪詢(xún)服務(wù)器。這樣可以減少Http請求的開(kāi)銷(xiāo),減輕數據包的負擔,讓通信更加實(shí)時(shí)。
  通過(guò)這兩個(gè)API函數的靈活應用,我們實(shí)現了通過(guò)HTTP Server實(shí)時(shí)接收數據量并在網(wǎng)頁(yè)上動(dòng)態(tài)模擬的功能。
  在線(xiàn)實(shí)時(shí)采集系統演示
  系統環(huán)境
  a) MCU:STM32F103RC,256K字節的Flash,48K字節的SRAM,2K字節的EEPROM
  b) 以太網(wǎng)控制器:W5500,SPI接口連接單片機
  c) 電源:USB供電
  2.開(kāi)發(fā)工具:IAR for ARM v5.41,就是我們項目中使用的版本。如果你使用不同版本的IAR,請對STM的庫稍做調整。
  在看代碼之前,我們先看一下整個(gè)程序流程,如下圖所示。硬件初始化完成后,進(jìn)行網(wǎng)絡(luò )參數配置。這是根據自己網(wǎng)絡(luò )的情況配置W5500的IP地址等網(wǎng)絡(luò )參數,保證W5500可以上網(wǎng);在這個(gè)程序中,我們將使用W5500的兩個(gè)socket資源。一個(gè)是用來(lái)創(chuàng )建一個(gè)Http Server,這樣我們就可以通過(guò)在瀏覽器上輸入配置的IP地址來(lái)遠程訪(fǎng)問(wèn)我們的硬件;另一個(gè)是用來(lái)創(chuàng )建一個(gè)Web Socket Server,與網(wǎng)頁(yè)建立通信鏈接,用來(lái)傳輸我們的溫濕度數據。
  圖2 硬件運行流程
  當我們在瀏覽器上訪(fǎng)問(wèn)硬件的IP地址時(shí),它會(huì )向W5500發(fā)送一個(gè)http請求。W5500收到請求后,會(huì )將html5網(wǎng)頁(yè)信息發(fā)送給瀏覽器,以便瀏覽器顯示我們溫濕度檢測系統的主要信息。界面沒(méi)了 在網(wǎng)頁(yè)的代碼中,瀏覽器會(huì )主動(dòng)連接W5500的Web Socket Server,握手操作完成后,建立數據通信通道。這樣硬件就可以毫無(wú)障礙地將溫濕度數據發(fā)送給瀏覽器了。瀏覽器收到溫濕度數據后,使用canvas函數在指定位置繪制溫濕度指示的點(diǎn)和曲線(xiàn)。
  圖3 網(wǎng)頁(yè)顯示界面
  畫(huà)布和 Web 套接字
  在瀏覽器端,我們使用 HTML5 的 Canvas 繪圖工具和 WebSocket API 來(lái)構建我們的 Web 界面。當有新的溫濕度數據到來(lái)時(shí),畫(huà)布坐標系中會(huì )有點(diǎn)顯示,并標出編號,隨著(zhù)采集次數的增加,可以進(jìn)行多次數據連接,看曲線(xiàn)變化。網(wǎng)頁(yè)程序步驟如下:
  1)創(chuàng )建頁(yè)面和畫(huà)布所屬的style和body標簽
  2)繪制坐標軸,添加標題;建立 WebSocket 連接
  3)新數據到達,畫(huà)點(diǎn)畫(huà)線(xiàn)
  用畫(huà)布繪圖
  下面首先介紹如何創(chuàng )建畫(huà)布以及代碼中使用的繪圖函數。
  1)創(chuàng )建一個(gè)600×400的畫(huà)布,單位為像素
  '圖'width='600'height='400'&gt;
  2) 定義畫(huà)布的邊框寬度、顏色和填充大小。
  #圖表{
  邊框:1px 實(shí)心#03F;
  邊距:0 40px 0 80px;
  }
  3)JavaScript要繪制畫(huà)布,首先需要通過(guò)目標畫(huà)布的id獲取繪制環(huán)境。代碼需要通過(guò)id獲取canvas元素,然后使用該元素的getContext方法獲取其二維繪圖環(huán)境的引用
  canvas=document.getElementById('圖形');
  
  context=canvas.getContext('2d');
  4)畫(huà)線(xiàn)段
  context.lineWidth=2;//設置線(xiàn)寬
  context.strokeStyle='#999';//設置線(xiàn)條的顏色
  context.moveTo(x1,y1);//移動(dòng)到起點(diǎn)
  context.lineTo(x2,y2);//創(chuàng )建一條到終點(diǎn)的路徑
  context.stroke();//實(shí)際畫(huà)這條直線(xiàn)
  5)畫(huà)圓
  context.fillStyle='#000';//設置填充顏色
  context.beginPath();
  context.arc(x,y,2,0,Math.PI*2,true);//在坐標(x,y)處畫(huà)一個(gè)半徑為2的圓
  語(yǔ)境。關(guān)閉路徑();
  context.fill();//給圓圈填充顏色
  6)在指定位置寫(xiě)入標題文字
  context.fillText(text,x,y,maxWidth);
  結合上面的函數,畫(huà)出下圖。如果覺(jué)得這還不夠炫,html5 canvas還提供了漸變色、旋轉、插畫(huà)等功能。使用您的設計制作您自己的前端界面。
  圖 4 畫(huà)布示例圖
  WebSocket的使用接下來(lái)我們介紹一下WebSocket在html5中的使用及相關(guān)功能
  1)為了創(chuàng )建websocket連接,代碼需要創(chuàng )建一個(gè)WebSocket接口實(shí)例,傳入web服務(wù)的URL地址,sensorWebSocket對象會(huì )嘗試連接監聽(tīng)相應URL的服務(wù)
  varwsUri='ws:192.168.10.111:1818';
  sensorWebSocket=newWebSocket(wsUri);
  2)注冊事件,為事件鏈接相應的處理函數。比如瀏覽器頁(yè)面收到服務(wù)器的數據后,觸發(fā)onmessage事件,然后調用onMessage函數。在代碼中,我們注冊了四個(gè)事件:onopen、onmessage、onclose和onerror
  sensorWebSocket.onmessage=函數(evt){onMessage(evt)};
  3)消息處理函數。在硬件上,我們將采集到的溫濕度數據用'.'連接起來(lái)。在瀏覽器端,接收到數據后,使用字符串切分函數,將溫濕度數據進(jìn)行切分,存儲在一個(gè)數組對象中。下面的代碼是將指示轉換成坐標值顯示在畫(huà)布上,這里就不贅述了。
  functiononMessage(evt){
  vararrayTH = 新數組(2);
  arrayTH=evt.data.split('.');
  ...
  }
  4)主動(dòng)關(guān)閉websocket連接
  傳感器網(wǎng)絡(luò )套接字。關(guān)();
  怎么樣,websocket的使用很簡(jiǎn)單。使用這個(gè)強大的工具,您可以連接到遠程服務(wù)器并接收和發(fā)送消息。這個(gè)功能在雙向通信中非常有用,尤其是需要服務(wù)端主動(dòng)向瀏覽器頁(yè)面發(fā)送消息的時(shí)候。
  Web Socket 握手和數據幀
  在服務(wù)端創(chuàng )建好socket之后,首先要和客戶(hù)端進(jìn)行數據通信才能完成握手,那么在列出程序的時(shí)候如何實(shí)現這個(gè)握手呢,先看看握手過(guò)程:
  表1 握手過(guò)程
  上面已經(jīng)介紹了客戶(hù)端的代碼,下面是硬件中服務(wù)器1和2的代碼:
  #define WS_SERVER_PORT 1818//定義服務(wù)器監聽(tīng)的端口號
  socket(s,Sn_MR_TCP, WS_SERVER_PORT,0x20);//在W5500中建立socket連接
  listen(s);//開(kāi)啟監聽(tīng) s變量為W5500的socket序號,本例程中使用的是數字2
  下面是為W5500配置的網(wǎng)絡(luò )信息,其中IP地址為我們?yōu)g覽器頁(yè)面程序的websocket對象的監聽(tīng)地址。
  uint8 mac[6]={0x00,0x08,0xdc,0x11,0x11,0x11};
  
  uint8 嘴唇[4]={192,168,10,111};
  uint8 sub[4]={255,255,255,0};
  uint8gw[4]={192,168,10,1};
  設置SHAR(mac);
  設置SUBR(子);
  設置GAR(gw);
  設置SIPR(嘴唇);
  硬件中server 5、6、7進(jìn)程相關(guān)代碼:
  charsec_ws_key[32]={0x00,};
  characcept_key[32]={0x00,};
  //獲取Sec-WebSocket-Key:
  if(strstr((charconst*)wsRxBuf,"Sec-WebSocket-Key:"))
  {
  mid((char*)wsRxBuf,"Sec-WebSocket-Key: ","\r\n",sec_ws_key);//攔截sec_key
  calc_accept_key(sec_ws_key, accept_key);//編碼函數
  sprintf((char*)wsTxBuf, "HTTP/1.1 101 SwitchingProtocols\r\nUpgrade: WebSocket\r\nConnection:Upgrade\r\nSec-WebSocket-Accept: %s\r\n\r\n", accept_key); // 生成握手消息
  send(s,wsTxBuf,strlen((char*)wsTxBuf));//發(fā)送給客戶(hù)端
  }
  握手=1;
  這似乎有點(diǎn)抽象。讓我們看看實(shí)際的數據包。最上面的紅色字體是瀏覽器頁(yè)面的握手請求。Sec-websoket-Key之后就是我們截取的sec_key,后面的藍色字體就是服務(wù)器端的握手響應。,sec-websoket-Accept就是我們編碼好的accept_key,怎么樣,一目了然。
  圖5 握手過(guò)程捕獲信息
  握手成功后,可以將定時(shí)采集的溫濕度數據發(fā)送到硬件端的瀏覽器頁(yè)面。WebSocket 協(xié)議的數據包非常輕量。下面介紹數據包的幀格式:
  圖 6 WebSocket 數據幀格式
  上圖是官方的結構圖,第一個(gè)字節,第一位是FIN,后三位是RSV1到3。RSV是保留空間,用0填充,那么只需要前4位的第一個(gè)FIN要設置。接下來(lái)的四位存儲操作碼的值,它定義了有效載荷數據的解釋。FIN 用于指示消息的最后一個(gè)片段。如果只有一條消息,則FIN為1;這里我們使用opcode定義數據為text-0x1,所以第一個(gè)字的二進(jìn)制是1000001(0x81),第一個(gè)1是FIN值,最后一個(gè)1是opcode的值。
  然后是第二個(gè)字節的數據,由1位的MASK和7位的PayloadLen組成。MASK標識本數據幀的數據是否使用掩碼,PayloadLen表示數據部分的長(cháng)度。但是,PayloadLen 只有 7 位。如果換成無(wú)符號整數,它只有0到127之間的值。當然,這么小的值不能描述更大的數據。所以規定當數據長(cháng)度小于等于125時(shí),作為數據長(cháng)度的描述。,如果值為126,則接下來(lái)的兩個(gè)字節用于存放數據長(cháng)度,如果為127,則接下來(lái)的八個(gè)字節用于存放數據長(cháng)度。這里我們每次只發(fā)送5個(gè)字節的溫濕度數據,沒(méi)有使用掩碼,所以配置為0x05。
  然后就是上圖中的MaskingKey,它占用四個(gè)字節,存放mask的entity部分。但是這個(gè)數據只有在前面的MASK設置為1的時(shí)候才有,否則不使用mask就沒(méi)有這個(gè)數據了。最后是數據部分。如果掩碼存在,則所有數據都需要與掩碼進(jìn)行異或。如果沒(méi)有掩碼,那么可以直接使用下面的數據。
  看看我們的數據發(fā)送代碼是如何實(shí)現的:
  wsTxBuf[0]=0x81;
  wsTxBuf[1]=0x05;
  wsTxBuf[2]= 溫度/10+0x30;
  wsTxBuf[3]= 溫度+0x30;
  wsTxBuf[1]=0x2E;//分隔符'.'
  wsTxBuf[2]=Humi/10+0x30;
  wsTxBuf[3]= Humi+0x30;
  發(fā)送(s,wsTxBuf,strlen((char*)wsTxBuf));
  代碼是不是很簡(jiǎn)單!
  數據采集
  然后簡(jiǎn)要描述數據采集
過(guò)程。我們選用溫濕度傳感器DHT11實(shí)時(shí)采集并上傳室內溫濕度數據。這里,DHT11用于連接MCU(W5500)。它與MCU的通訊只需要一個(gè)I/O口,使用非常方便。DHT11與單片機的具體連接及相關(guān)調試這里不再詳述??梢运阉飨嚓P(guān)信息。
  相信隨著(zhù)HTML5的不斷成熟,它帶來(lái)的不僅僅是PC環(huán)境的Web革命。對于嵌入式領(lǐng)域,也能帶來(lái)更好的客戶(hù)體驗和產(chǎn)品性能。當然,我們還是要用到W5500這個(gè)特色以太網(wǎng)芯片。其全硬件的TCP/IP協(xié)議棧不僅大大節省了寶貴的嵌入式資源,也省去了很多開(kāi)發(fā)步驟和難度,使我們可以用更多的資源和精力來(lái)實(shí)現更精彩的Web功能。
  如果你感興趣,趕快做一個(gè)屬于你的在線(xiàn)實(shí)時(shí)采集系統吧。
  請到#p2527 下載完整的程序代碼程序。
  解決方案:如何高效的上架商品,采集產(chǎn)品到獨立站
  如何快速采集產(chǎn)品到獨立站?
  獨立跨境電商網(wǎng)站收貨后快速上架的情況很常見(jiàn),可以為賣(mài)家節省大量的時(shí)間和精力。
  有了采集工具,每天有上千種產(chǎn)品并不難。當然現在的獨立站已經(jīng)不是分發(fā)的時(shí)代了,講究的是精細分發(fā)。
  在shopyy獨立站后臺應用中心,應用商店,搜集,可以看到建站系統為賣(mài)家提供的免費采集
工具。
  支持:采集Shopify、亞馬遜、阿里巴巴、1688、速賣(mài)通等主流平臺的商品數據。
  推薦使用場(chǎng)景: 注意事項:
  教程:
  首先,如果你沒(méi)有安裝谷歌瀏覽器,你必須先安裝一個(gè)。
  應用中心,我的應用,設置,點(diǎn)擊下載插件,順便復制api鏈接
  
  然后打開(kāi)瀏覽器,點(diǎn)擊如圖所示的插件,如果沒(méi)有開(kāi)啟開(kāi)發(fā)者模式,點(diǎn)擊開(kāi)啟,加載解壓后的安裝包或者拖放到這個(gè)頁(yè)面。
  然后可以看到一個(gè)優(yōu)采云
抓圖工具插件,把它固定到工具欄上。
  點(diǎn)擊店鋪圖標,店鋪管理,給店鋪一個(gè)code,方便識別,
  一鍵粘貼并確認。
  前后可以打開(kāi)跨境電商平臺,開(kāi)始選擇商品收貨到獨立站。
  已成功采集
的商品可以在后臺的商品管理中看到,在已下架的商品中可以看到。如果采集的產(chǎn)品再次采集,會(huì )提示重復采集。
  
  使用產(chǎn)品批量修改工具,可以在申請中心修改多個(gè)產(chǎn)品的價(jià)格,實(shí)現批量上架。
  補充:除了平臺之外,我們經(jīng)常會(huì )遇到一些其他的獨立站想要收貨??梢允褂眠@個(gè)第三方工具采集導出shopify格式,然后在后臺應用中心選擇shopify導入。
  shopcaiji采集工具還是很強大的,支持主流的saas建站和開(kāi)源系統。擁有如此萬(wàn)能的采集工具,將大大提高尚品的效率。
  shopcaiji是一個(gè)支持采集
的建站平臺
  SAAS模式建站:shopify、oemsas、shopyy、shoplazza、shopline、xshopy、shopbase、wshop、
  開(kāi)源自建站:wordpress、opencart、magento
  基本涵蓋市面上所有主流建站平臺,還支持單品采集、全目錄采集、全站采集,可根據您的需求靈活配置。
  有免費版和付費版可供選擇。支持免費試用,滿(mǎn)意后再開(kāi)通。允許會(huì )員在同一個(gè)公網(wǎng)IP下以多個(gè)用戶(hù)登錄,即一個(gè)公司同一個(gè)IP。您只需購買(mǎi)一個(gè)即可供整個(gè)公司使用。
  采集工具官網(wǎng):

匯總:文章實(shí)時(shí)采集新聞熱點(diǎn),然后自己進(jìn)行后期加工改編排版

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 125 次瀏覽 ? 2022-11-21 01:22 ? 來(lái)自相關(guān)話(huà)題

  匯總:文章實(shí)時(shí)采集新聞熱點(diǎn),然后自己進(jìn)行后期加工改編排版
  文章實(shí)時(shí)采集新聞熱點(diǎn),然后自己進(jìn)行后期加工改編排版,然后讓專(zhuān)業(yè)的新聞熱點(diǎn)圖編輯器制作成網(wǎng)頁(yè)讓用戶(hù)瀏覽,說(shuō)到底網(wǎng)易新聞客戶(hù)端就是一個(gè)加工廠(chǎng),提供給用戶(hù)新聞素材、去掉水印、去掉廣告、去掉殘余。
  
  網(wǎng)易新聞是評論類(lèi)新聞客戶(hù)端,意義就是由你評論一條新聞或打個(gè)結論。
  生產(chǎn)新聞的傳播方,可以被你消費,無(wú)論是taobao、微博、pc、紙媒,都會(huì )生產(chǎn)或者發(fā)行新聞,評論則是這些的評論,有事實(shí),有觀(guān)點(diǎn),現在利用評論而獲得的粉絲數等都是社會(huì )價(jià)值的體現。taobao是平臺,微博是消費,紙媒是承載,
  
  個(gè)人看法,新聞類(lèi)app,寫(xiě)稿的是人,發(fā)稿的是機器,兩種不同的交流方式。優(yōu)勢是評論即新聞,不用擔心,不怕原文里夾帶私貨,不怕回憶重重有虛無(wú)。劣勢是評論大多為個(gè)人意見(jiàn),觀(guān)點(diǎn)變動(dòng)太大。
  要用獨特的視角去看待它
  評論制作的媒介主要是文字和圖片。首先,在文字評論的基礎上,新聞評論的考究要求需要考慮到受眾感受和需求,通過(guò)圖片的后期制作和排版等方式豐富文字評論的表現力。缺點(diǎn)也是明顯的,文字評論不適用于直觀(guān)的視頻和圖片對于受眾的影響,圖片因為易于修改或制作周期短很適合在節假日制作短視頻與圖片搭配。文字評論與視頻結合也會(huì )有例外,像春晚文字評論可以緊扣節日主題,長(cháng)連播文字評論方式便于大眾識別識別度高。就看你想要占據哪一個(gè)定位。 查看全部

  匯總:文章實(shí)時(shí)采集新聞熱點(diǎn),然后自己進(jìn)行后期加工改編排版
  文章實(shí)時(shí)采集新聞熱點(diǎn),然后自己進(jìn)行后期加工改編排版,然后讓專(zhuān)業(yè)的新聞熱點(diǎn)圖編輯器制作成網(wǎng)頁(yè)讓用戶(hù)瀏覽,說(shuō)到底網(wǎng)易新聞客戶(hù)端就是一個(gè)加工廠(chǎng),提供給用戶(hù)新聞素材、去掉水印、去掉廣告、去掉殘余。
  
  網(wǎng)易新聞是評論類(lèi)新聞客戶(hù)端,意義就是由你評論一條新聞或打個(gè)結論。
  生產(chǎn)新聞的傳播方,可以被你消費,無(wú)論是taobao、微博、pc、紙媒,都會(huì )生產(chǎn)或者發(fā)行新聞,評論則是這些的評論,有事實(shí),有觀(guān)點(diǎn),現在利用評論而獲得的粉絲數等都是社會(huì )價(jià)值的體現。taobao是平臺,微博是消費,紙媒是承載,
  
  個(gè)人看法,新聞類(lèi)app,寫(xiě)稿的是人,發(fā)稿的是機器,兩種不同的交流方式。優(yōu)勢是評論即新聞,不用擔心,不怕原文里夾帶私貨,不怕回憶重重有虛無(wú)。劣勢是評論大多為個(gè)人意見(jiàn),觀(guān)點(diǎn)變動(dòng)太大。
  要用獨特的視角去看待它
  評論制作的媒介主要是文字和圖片。首先,在文字評論的基礎上,新聞評論的考究要求需要考慮到受眾感受和需求,通過(guò)圖片的后期制作和排版等方式豐富文字評論的表現力。缺點(diǎn)也是明顯的,文字評論不適用于直觀(guān)的視頻和圖片對于受眾的影響,圖片因為易于修改或制作周期短很適合在節假日制作短視頻與圖片搭配。文字評論與視頻結合也會(huì )有例外,像春晚文字評論可以緊扣節日主題,長(cháng)連播文字評論方式便于大眾識別識別度高。就看你想要占據哪一個(gè)定位。

解讀:一篇對大數據深度思考的文章,讓你認識并讀懂大數據

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 228 次瀏覽 ? 2022-11-20 03:09 ? 來(lái)自相關(guān)話(huà)題

  解讀:一篇對大數據深度思考的文章,讓你認識并讀懂大數據
  在寫(xiě)這篇文章之前,我發(fā)現我身邊的很多IT人往往都渴望這些熱門(mén)的新技術(shù)和新趨勢,但很難說(shuō)透徹,如果你問(wèn)他大數據和你有什么關(guān)系?估計很少能說(shuō)出一、二、三的名字。原因是每個(gè)人都對新技術(shù)有著(zhù)同樣的原創(chuàng )
渴望,至少他們在聊天時(shí)看起來(lái)并不“臟”;其次,工作和生活環(huán)境中能夠真正參與大數據實(shí)踐的案例太少,所以沒(méi)有必要讓大家花時(shí)間去了解原因。
  我希望有些不同,所以我考慮了如何理解大數據,包括查閱數據和
  翻閱最新的專(zhuān)業(yè)書(shū)籍,但我不想簡(jiǎn)單地整理堆積那些零散的數據碎片或不同的理解,形成毫無(wú)價(jià)值的釋義或評論,我真誠地希望進(jìn)入事物來(lái)探索本質(zhì)。
  如果你說(shuō)大數據就是大數據,或者談?wù)?br />   4 Vs,也許很深入地談?wù)凚I的價(jià)值或者預測,或者以谷歌和亞馬遜為例,技術(shù)流可能談?wù)揌adoop和云計算,無(wú)論是對還是錯,就是無(wú)法勾勒出對大數據的整體理解,不是片面的,但至少是一些猜測,襯衫癢癢的?;蛟S,“解構”才是最好的方式。
  如何構建大數據?
  首先,我認為大數據是互聯(lián)網(wǎng)發(fā)展的一種表象或特征。
  現階段,沒(méi)有必要去神話(huà)它,也沒(méi)有必要對它保持敬畏,在以云計算為代表的技術(shù)創(chuàng )新大幕下,這些原本難以采集
和使用的數據開(kāi)始變得容易使用,通過(guò)各行各業(yè)的不斷創(chuàng )新,大數據將逐漸為人類(lèi)創(chuàng )造更多價(jià)值。
  其次,想要系統的認知大數據,必須全面細致地分解它,我著(zhù)手從三個(gè)層面進(jìn)行擴展:
  第一個(gè)層次是理論,這是認識的必要途徑,也是廣泛認識和傳播的底線(xiàn)。我將從大數據的特征定義來(lái)理解行業(yè)對大數據的整體描述和表征;從對大數據價(jià)值的討論中,我們可以深入分析大數據的可貴性;從大數據的現狀和未來(lái)洞察大數據的發(fā)展趨勢;從大數據隱私的特殊性和重要角度出發(fā),審視人與數據的長(cháng)期博弈。
  第二個(gè)層次是技術(shù),它是大數據體現價(jià)值的手段和基石。我將解釋大數據從采集
、處理、存儲到形成云計算、分布式處理技術(shù)、存儲技術(shù)和感知技術(shù)發(fā)展的結果的全過(guò)程。
  第三個(gè)層次是實(shí)踐,這是大數據的終極價(jià)值體現。我將從互聯(lián)網(wǎng)大數據、政府大數據、企業(yè)大數據和個(gè)人大數據四個(gè)方面描繪大數據所展現的美好場(chǎng)景和將要實(shí)現的藍圖。
  大數據相關(guān)理論
  1
  功能定義
  最早提出大數據時(shí)代到來(lái)的是麥肯錫:“如今,數據已經(jīng)滲透到每個(gè)行業(yè)和業(yè)務(wù)功能領(lǐng)域,成為重要的生產(chǎn)要素。大量數據的挖掘和使用預示著(zhù)新一輪的生產(chǎn)率增長(cháng)和消費者剩余。"
  業(yè)界(最早定義IBM)將大數據的特征概括為4個(gè)“V”(體積、品種、價(jià)值值、速度),或者有四個(gè)層次的特征:一是數據量巨大。大數據的起始測量單位至少是P(1000 T),E(100萬(wàn)T)或Z(10億T);其次,數據類(lèi)型多種多樣。例如,網(wǎng)絡(luò )日志、視頻、圖像、地理位置信息等。三是價(jià)值密度低,商業(yè)價(jià)值高。第四,處理速度快。最后一點(diǎn)也與傳統的數據挖掘技術(shù)有著(zhù)根本的不同。
  事實(shí)上,這些V并不能真正解釋大數據的所有特征,下圖有效地解釋了大數據的一些相關(guān)特征。
  俗話(huà)說(shuō):技術(shù)三分,數據七分,誰(shuí)得到數據誰(shuí)就贏(yíng)天下。誰(shuí)說(shuō)的并不重要,但這句話(huà)的正確性就不用爭論了。Victor Meier-Sch?nberg在《大數據時(shí)代》一書(shū)中舉了數百個(gè)例子,都說(shuō)明了一個(gè)道理:當大數據時(shí)代到來(lái)時(shí),我們必須用大數據思維來(lái)探索大數據的潛在價(jià)值。在書(shū)中,作者提到最多的是谷歌如何利用人們的搜索記錄來(lái)挖掘數據的二次使用價(jià)值,比如預測某個(gè)地方流感爆發(fā)的趨勢;亞馬遜如何利用用戶(hù)的購買(mǎi)和瀏覽歷史數據,做出有針對性的購書(shū)推薦,有效提升銷(xiāo)量;Farecast如何在過(guò)去十年中使用所有航線(xiàn)的折扣機票來(lái)預測用戶(hù)是否會(huì )在正確的時(shí)間購買(mǎi)機票。
  那么,什么是大數據思維?根據維克多·邁耶-勛伯格的說(shuō)法,1 - 需要整個(gè)數據樣本而不是采樣;2-注重效率而不是精度;3-關(guān)注相關(guān)性而不是因果關(guān)系。
  阿里巴巴的王健對大數據也有一些獨到的見(jiàn)解,比如
  “如今的數據不大,真正有意思的是數據已經(jīng)上線(xiàn),這正是互聯(lián)網(wǎng)的特點(diǎn)?!薄爱a(chǎn)品在非互聯(lián)網(wǎng)時(shí)期的功能一定是它的價(jià)值,而今天互聯(lián)網(wǎng)的產(chǎn)品,數據一定是它的價(jià)值?!澳悴幌胧褂脭祿?lái)改善業(yè)務(wù),這不是大數據。你一定做了以前做不到的事情。"
  特別是最后一點(diǎn),我非常同意大數據的真正價(jià)值在于創(chuàng )造,在于填補無(wú)數尚未實(shí)現的空白。
  有些人將數據比作含有能源的煤礦。煤炭按其性質(zhì)分類(lèi),如煉焦煤、無(wú)煙煤、脂肪煤、貧煤等,而露天煤礦和深山煤礦的開(kāi)挖成本不同。同樣,大數據不是“大”,而是“有用”。價(jià)值內容和挖礦成本比數量更重要。
  阿拉伯數字
  價(jià)值討論
  什么是大數據?投資者眼中閃耀著(zhù)兩個(gè)詞:資產(chǎn)。例如,當Facebook上市時(shí),評估人員評估的大部分有效資產(chǎn)都是其社交網(wǎng)站上的數據。
  如果把大數據比作一個(gè)行業(yè),那么這個(gè)行業(yè)盈利的關(guān)鍵在于提高數據的“處理能力”,通過(guò)“處理”實(shí)現數據的“增值”。
  目標
  超市以孕婦在孕期可能購買(mǎi)的20多種產(chǎn)品為基礎,以所有用戶(hù)的購買(mǎi)記錄為數據源,通過(guò)構建模型分析購買(mǎi)者的行為相關(guān)性,可以準確推斷出懷孕的具體時(shí)間,以便Target的銷(xiāo)售部門(mén)在每位懷孕顧客的不同階段發(fā)送相應的產(chǎn)品優(yōu)惠券。
  塔吉特的例子就是一個(gè)很好的例子,證實(shí)了維克多·邁耶-勛伯格(Victor Meier-Sch?nberg)提出的一個(gè)有說(shuō)服力的觀(guān)點(diǎn):通過(guò)識別關(guān)聯(lián)并對其進(jìn)行監控,可以預測未來(lái)。Target通過(guò)監控買(mǎi)家購買(mǎi)商品的時(shí)間和類(lèi)型來(lái)準確預測懷孕時(shí)間,這是二次使用數據的典型例子。如果,通過(guò)從駕駛員的手機采集
GPS數據,我們可以分析出哪些道路目前堵車(chē),我們可以及時(shí)發(fā)出道路交通提醒;通過(guò)采集
汽車(chē)的GPS位置數據,可以分析出城市的哪些區域有更多的停車(chē)位,這也意味著(zhù)該地區有更多的活躍人群,這些分析數據適合出售給廣告商。
  無(wú)論大數據的核心價(jià)值是否
  無(wú)論預測與否,基于大數據形成決策的模型為許多企業(yè)帶來(lái)了利潤和聲譽(yù)。
  從大數據價(jià)值鏈的分析來(lái)看,有三種模式:
  大數據在手,但利用不好;比較典型的是金融機構、電信業(yè)、政府機構等。沒(méi)有數據,但知道如何幫助擁有它的人利用它;典型的是IT咨詢(xún)和服務(wù)公司,如埃森哲,IBM,甲骨文等。既有數據思維,也有大數據思維;比較典型的是谷歌、亞馬遜、萬(wàn)事達卡等。
  未來(lái)在大數據領(lǐng)域最有價(jià)值的是兩件事:
  具有大數據思維的人,能夠將大數據的潛在價(jià)值轉化為實(shí)際收益;沒(méi)有業(yè)務(wù)領(lǐng)域尚未被大數據觸及。這些是未開(kāi)發(fā)的油井,金礦,所謂的藍海。
  沃爾瑪作為零售業(yè)的巨頭,他們的分析師會(huì )對每個(gè)階段的銷(xiāo)售記錄進(jìn)行全面分析,一旦他們意外發(fā)現雖然無(wú)關(guān)緊要但非常有價(jià)值的數據,在美國颶風(fēng)季節,蛋撻和抗颶風(fēng)商品在超市的銷(xiāo)量大幅增加,于是他們做出了明智的決定,將蛋撻的銷(xiāo)售地點(diǎn)移到了颶風(fēng)的一邊。商品銷(xiāo)售區,看似是為了方便用戶(hù)選擇。但沒(méi)想到蛋撻的銷(xiāo)量因此增加了不少。
  另一個(gè)有趣的例子是,1948年遼沈戰役期間,司令員林彪要求每天例行的“軍事情報日報”,由值班參謀宣讀下屬各縱隊、師、團的無(wú)線(xiàn)電報的戰情和俘虜情況。這幾乎是重復同樣無(wú)聊的數據:每個(gè)單位殲滅了多少敵人,俘虜了多少俘虜;有多少火炮、車(chē)輛、槍支、物資...一天,參謀照例匯報當天的戰情時(shí),林彪突然打斷他:“你剛才聽(tīng)到胡家棚屋里打仗的消息了嗎?大家都不知所措,因為這樣的戰斗每天都有幾十場(chǎng)戰斗,不都是幾乎一模一樣的無(wú)聊數字嗎?林彪掃了一遍,見(jiàn)沒(méi)人回答,于是連問(wèn)了三個(gè)問(wèn)題:“為什么那里繳獲的短槍和長(cháng)槍的比例比其他戰斗略高?為什么那里的手推車(chē)與被俘虜和摧毀的手推車(chē)的比例略高于其他戰斗?為什么在那里被俘和陣亡的軍官與士兵的比例略高于其他戰斗?林彪司令大步走到掛滿(mǎn)軍事地圖的墻前,指著(zhù)地圖上的點(diǎn)說(shuō):“我猜,不,我決定!敵人的指揮所來(lái)了!果不其然,部隊很快俘虜了敵人的指揮官廖耀祥,并贏(yíng)得了這場(chǎng)重要的戰斗。
  這些例子真實(shí)地體現在各行各業(yè),對數據價(jià)值的追尋取決于掌握數據的人,關(guān)鍵是人的數據思維;與其說(shuō)大數據創(chuàng )造價(jià)值,不如說(shuō)大數據思維引發(fā)了新的價(jià)值增長(cháng)。
  現在和未來(lái)
  讓我們先來(lái)看看大數據在今天是如何做的:
  大數據助力政府實(shí)現市場(chǎng)經(jīng)濟調控、公共衛生安全防范、災害預警、輿情監督;
  大數據幫助城市預防犯罪,實(shí)現智慧交通,提升應急能力。
  大數據幫助醫療機構建立患者疾病風(fēng)險跟蹤機制,幫助藥企改善藥物臨床使用,幫助艾滋病研究機構為患者提供定制化藥物。
  大數據幫助航空公司節約運營(yíng)成本,電信公司提高售后服務(wù)質(zhì)量,保險公司識別欺詐和保險欺詐,快遞公司監控和分析運輸車(chē)輛故障提前預警維修,電力公司有效識別和預警即將發(fā)生故障的設備。
  大數據幫助電商企業(yè)向用戶(hù)推薦商品和服務(wù),幫助旅游網(wǎng)站為游客提供自己喜歡的旅游路線(xiàn),幫助二手市場(chǎng)的買(mǎi)賣(mài)雙方找到最合適的交易標的,幫助用戶(hù)找到最合適的購買(mǎi)期、商家和最優(yōu)惠的價(jià)格。大數據幫助企業(yè)提高
  營(yíng)銷(xiāo)針對性,降低物流和庫存成本,降低投資風(fēng)險,幫助企業(yè)提高廣告精準度;
  大數據幫助娛樂(lè )行業(yè)預測歌手、歌曲、電影、電視劇的熱度,為投資者分析評估拍一部電影最合適的錢(qián)是多少,否則可能無(wú)法收回成本;
  大數據幫助社交網(wǎng)站提供更精準的好友推薦,為用戶(hù)提供更精準的企業(yè)招聘信息,推薦用戶(hù)可能喜歡的游戲和適合購買(mǎi)的產(chǎn)品。
  
  其實(shí)這些還遠遠不夠,大數據的身影在未來(lái)應該無(wú)處不在,即使無(wú)法準確預測大數據最終會(huì )給人類(lèi)社會(huì )帶來(lái)哪種最終形態(tài),但我相信,只要發(fā)展步伐繼續下去,大數據引發(fā)的變革浪潮很快就會(huì )淹沒(méi)地球的每一個(gè)角落。
  比如亞馬遜的終極期望是:“最成功的圖書(shū)推薦應該是唯一的書(shū),也就是用戶(hù)會(huì )買(mǎi)的下一本書(shū)。"
  谷歌
  同樣希望用戶(hù)搜索的最佳體驗是搜索結果只收錄
用戶(hù)需要的內容,而這并不需要用戶(hù)給Google太多提示。
  當發(fā)展
  物聯(lián)網(wǎng)達到一定規模,借助條碼、二維碼、RFID等唯一標識產(chǎn)品,傳感器、可穿戴設備、智能感知、視頻采集、增強現實(shí)等技術(shù)可以實(shí)現信息的實(shí)時(shí)采集和分析,這些數據可以支撐智慧城市、智慧交通、智慧能源、智慧醫療、智慧環(huán)保等概念需求, 這些所謂的智慧,就是大數據數據源的集合和服務(wù)范圍。
  除了更好地解決社會(huì )問(wèn)題、商業(yè)營(yíng)銷(xiāo)問(wèn)題、科技問(wèn)題外,未來(lái)的大數據政策也將出現可預見(jiàn)的以人為本的大數據政策趨勢。人才是地球的主人,大部分數據都與人類(lèi)有關(guān),需要通過(guò)大數據解決人類(lèi)的問(wèn)題。
  比如建立個(gè)人數據中心,整合大家的日常習慣、身體體征、社交網(wǎng)絡(luò )、智力、愛(ài)好氣質(zhì)、疾病愛(ài)好、情緒波動(dòng)......換句話(huà)說(shuō),一個(gè)人從出生的那一刻起的每一分每一秒都被記錄下來(lái),除了頭腦之外的一切都被存儲起來(lái),這些數據可以得到充分利用:
  當然,以上一切看起來(lái)都不錯,但前提是犧牲用戶(hù)的自由嗎?只能說(shuō),新事物帶來(lái)創(chuàng )新的同時(shí),也帶來(lái)了“萌芽”。比如在手機普及之前,大家都喜歡聚在一起聊天,自從手機普及,尤其是有了互聯(lián)網(wǎng),大家不需要聚在一起就可以隨時(shí)隨地聊天,但“病菌”滋生了另一種情況,大家慢慢習慣了與手機共度時(shí)光,人與人之間的情感交流似乎永遠被一個(gè)“網(wǎng)絡(luò )”隔開(kāi)了。
  大數據隱私
  您可能不敏感,當您在不同網(wǎng)站上注冊個(gè)人信息時(shí),可能已經(jīng)擴散,當您莫名其妙地收到各種電子郵件、電話(huà)、短信滋擾時(shí),您不會(huì )想到您的電話(huà)號碼、郵箱、生日、購買(mǎi)記錄、收入水平、家庭住址、親友等私人信息早已被各種商業(yè)組織非法存儲或出售給任何其他有需要的企業(yè)或個(gè)人。
  更可怕的是,你永遠無(wú)法刪除這些信息,它們將永遠存在于互聯(lián)網(wǎng)的某個(gè)你不知道的角落。除非您替換所有信息,否則成本太高。用戶(hù)隱私
  問(wèn)題一直是大數據應用中難以繞開(kāi)的問(wèn)題,如央視曝光的焦點(diǎn)無(wú)線(xiàn)、洛威鄧白氏、網(wǎng)易郵箱等,都涉及侵犯用戶(hù)隱私。目前,我國沒(méi)有專(zhuān)門(mén)的法律法規來(lái)定義用戶(hù)隱私,其他相關(guān)法律法規多用于解釋相關(guān)問(wèn)題。然而,隨著(zhù)公眾隱私意識的提高,合法和合規地訪(fǎng)問(wèn)數據,數據分析和應用數據是進(jìn)行大數據分析時(shí)必須遵循的原則。
  說(shuō)到隱私被侵犯,愛(ài)德華?斯諾登應該為這位前中央情報局雇員提供一席之地,他單槍匹馬地引爆了有關(guān)美國棱鏡計劃的內部信息。Project Prism是自2007年以來(lái)由國家安全局(NSA)運營(yíng)的絕密電子監視計劃,每年花費近2000億美元來(lái)監控美國各地的電話(huà)記錄,據稱(chēng)允許情報人員訪(fǎng)問(wèn)九家主要科技公司的服務(wù)器,包括微軟,雅虎,谷歌,Facebook,PalTalk,AOL,Skype,YouTube和蘋(píng)果。這一事件引發(fā)了人們對政府使用大數據時(shí)侵犯公民隱私的擔憂(yōu)。
  環(huán)顧四周,當微博、微信、QQ空間這些社交平臺肆意吞噬數億用戶(hù)的各種信息時(shí),你不要指望你有隱私,即使你刪除了某處,但也許這些信息已經(jīng)被別人復制或保存了,更有可能被百度或者谷歌保存成快照,早就提供給任何用戶(hù)搜索。
  因此,在大數據的背景下,很多人都在積極抵制無(wú)底洞的數字化,這場(chǎng)大數據與個(gè)人的博弈將永遠持續下去......
  專(zhuān)家就如何在大數據背景下有效保護隱私給出了一些建議:
  減少信息的數字化;隱私立法;數字隱私基礎設施(類(lèi)似于DRM數字版權管理);人類(lèi)改變認知(接受忽略過(guò)去);打造良性信息生態(tài);語(yǔ)境化。
  但這些都不是立即有效或實(shí)質(zhì)性改善的。
  例如,現在有一個(gè)職業(yè)叫做帖子編輯,專(zhuān)門(mén)負責幫助人們刪除帖子和刪除主要網(wǎng)站上的評論。實(shí)際上,這些人正在入侵主要網(wǎng)站,破解管理員的密碼,然后手動(dòng)刪除它。只是他們不保護客戶(hù)的隱私,而主要是丑聞。還有一個(gè)職業(yè)叫做人肉專(zhuān)家,他們負責從互聯(lián)網(wǎng)上查找與他們無(wú)關(guān)的用戶(hù)的任意信息。這是一件可怕的事情,也就是說(shuō),如果有人想找到你,只需要兩個(gè)條件:1-你一直在互聯(lián)網(wǎng)上并留下了痕跡;2-您的朋友和家人或只是認識您的人一直在互聯(lián)網(wǎng)上并留下了您的蹤跡。如果滿(mǎn)足這兩個(gè)條件之一,人類(lèi)動(dòng)物學(xué)家可以很容易地找到你,并可能知道你在餐廳和誰(shuí)共進(jìn)晚餐。
  當很多互聯(lián)網(wǎng)公司意識到隱私對用戶(hù)的重要性時(shí),為了繼續獲得用戶(hù)的信任,他們采取了許多措施,比如谷歌承諾只保留用戶(hù)的搜索記錄9個(gè)月,瀏覽器廠(chǎng)商提供隱身沖浪模式,社交網(wǎng)站拒絕來(lái)自公共搜索引擎的爬蟲(chóng)進(jìn)入, 所提供的所有數據都將匿名處理。
  在這種復雜的環(huán)境下,很多人仍然沒(méi)有樹(shù)立信息隱私的保護意識,讓自己處于被騷擾、精心設計、使用、監控的境地。然而,我們幾乎無(wú)能為力,因為個(gè)人隱私數據不再受我們控制,正如一首詩(shī)所說(shuō):“如果你現在繼續麻木,那么不要指望這種麻木能承受被”剝離“那一刻的恐慌和絕望”
  大數據相關(guān)技術(shù)
  云技術(shù)
  大數據通常與云計算相關(guān)聯(lián),因為對大型數據集的實(shí)時(shí)分析需要一個(gè)分布式處理框架將工作分配給數十、數百甚至數萬(wàn)臺計算機??梢哉f(shuō),云計算起到了工業(yè)革命引擎的作用,而大數據就是電。
  云計算思想的起源是由麥卡錫在 60 年代提出的:作為水和電一樣的公用事業(yè)為用戶(hù)提供計算能力。
  如今,在谷歌、亞馬遜、Facebook等一批互聯(lián)網(wǎng)公司的帶領(lǐng)下,出現了一種有效的模式:云計算提供了一個(gè)基礎設施平臺,大數據應用運行在這個(gè)平臺上。
  業(yè)內人士這樣描述兩者的關(guān)系:沒(méi)有大數據信息的積累,云計算的算力再強大,也很難找到用處;沒(méi)有云計算的處理能力,大數據的信息積累再豐富,也終究只是一面鏡子。
  那么大數據需要哪些云計算技術(shù)呢?
  以下是一些示例,例如虛擬化技術(shù)、分布式處理技術(shù)、海量數據存儲和管理技術(shù)、NoSQL、實(shí)時(shí)流數據處理、智能分析技術(shù)(類(lèi)似于模式識別和自然語(yǔ)言理解)等。
  云計算與大數據的關(guān)系可以用下圖來(lái)說(shuō)明,兩者的結合會(huì )產(chǎn)生以下效果:它可以基于海量業(yè)務(wù)數據提供更多創(chuàng )新的服務(wù);通過(guò)云計算技術(shù)的不斷發(fā)展,降低大數據業(yè)務(wù)的創(chuàng )新成本。
  如果將云計算與大數據進(jìn)行比較,最明顯的區別在于兩個(gè)方面:
  分布式處理技術(shù)
  分布式處理系統
  可以將不同位置或具有不同功能或具有不同數據的多臺計算機與通信網(wǎng)絡(luò )連接起來(lái),在控制系統的統一管理和控制下協(xié)調完成信息處理任務(wù)——這就是分布式處理系統的定義。
  以Hadoop為例(Yahoo
 ?。┮訷ahoo為例,Hadoop是一個(gè)軟件框架,它實(shí)現了MapReduce模式,對大量數據進(jìn)行分布式處理,這些數據以可靠,高效和可擴展的方式進(jìn)行處理。
  MapReduce是一種核心計算模式
  谷歌提出的云計算,是一種分布式計算技術(shù),也是一種簡(jiǎn)化的分布式編程模型,MapReduce模式的主要思想是將要執行的問(wèn)題(如程序)自動(dòng)拆分為map(map)和reduce(簡(jiǎn)化)的方式,數據被拆分后通過(guò)map函數程序將數據映射到不同的塊中, 分配給計算機隊列進(jìn)行處理以達到分布式計算的效果,結果通過(guò)Reduce功能在程序中聚合,從而輸出開(kāi)發(fā)人員所需的結果。
  首先,它是可靠的,因為它假設計算元素和存儲將發(fā)生故障,因此它維護工作數據的多個(gè)副本,以確保處理可以在故障節點(diǎn)之間重新分配。其次,Hadoop是高效的,因為它并行工作,通過(guò)并行處理加快處理速度。Hadoop也是可擴展的,能夠處理PB級的數據。此外,Hadoop依賴(lài)于社區服務(wù)器,因此成本相對較低,任何人都可以使用。
  你也可以這樣理解Hadoop的組成,Hadoop=HDFS(文件系統、數據存儲技術(shù)相關(guān))+HBase(數據庫)+MapReduce(數據處理)+...別人
  Hadoop中使用的一些技術(shù)是:
  說(shuō)了這么多,舉個(gè)實(shí)際的例子,雖然這個(gè)例子有點(diǎn)老舊,但淘寶的海量數據技術(shù)架構還是能幫助我們理解大數據的運行和處理機制:
  淘寶大數據如上圖所示,
  淘寶的海量數據產(chǎn)品技術(shù)架構分為五個(gè)層次,從上到下分別是:數據源層、計算層、存儲層、查詢(xún)層和產(chǎn)品層。
  存儲技術(shù)
  大數據可以抽象地分為大數據存儲和大數據分析,兩者的關(guān)系是:大數據存儲的目的是支持大數據分析。到目前為止,計算機技術(shù)已經(jīng)是兩個(gè)截然不同的領(lǐng)域:大數據存儲致力于開(kāi)發(fā)可擴展到PB甚至EB的數據存儲平臺;大數據分析專(zhuān)注于在最短的時(shí)間內處理大量不同類(lèi)型的數據集。
  說(shuō)到存儲,有一個(gè)著(zhù)名的摩爾定律,我相信每個(gè)人都聽(tīng)說(shuō)過(guò):集成電路的復雜性在18個(gè)月內翻了一番。因此,內存成本大約每 18-24 個(gè)月下降一半。成本下降也使大數據可存儲。例如,谷歌
  管理著(zhù)超過(guò)50萬(wàn)臺服務(wù)器和100萬(wàn)個(gè)硬盤(pán),谷歌也在不斷擴大計算能力和存儲容量,其中很多都是基于廉價(jià)的服務(wù)器和普通存儲硬盤(pán),大大降低了其服務(wù)成本,因此可以在技術(shù)研發(fā)上投入更多的資金。
  就亞馬遜而言,Amazon S3是一種面向互聯(lián)網(wǎng)的存儲服務(wù)。該服務(wù)旨在使開(kāi)發(fā)人員更容易進(jìn)行網(wǎng)絡(luò )規模的計算。Amazon S3 提供了一個(gè)簡(jiǎn)潔的 Web 服務(wù)界面,允許用戶(hù)隨時(shí)隨地在 Web 上存儲和檢索任何大小的數據。該服務(wù)使所有開(kāi)發(fā)人員都可以訪(fǎng)問(wèn)亞馬遜用于運行其全球網(wǎng)站網(wǎng)絡(luò )的相同可擴展、可靠、安全和快速成本的基礎設施??紤] S3 的設計指標:給定年份中對象的 99.9999999999% 的持久性和 99.99% 的可用性,以及承受兩個(gè)設施的數據丟失的能力。
  S3 已經(jīng)成功并且確實(shí)有效,S3 云中有數萬(wàn)億個(gè)存儲對象,并且性能相當不錯。S3 Cloud已經(jīng)跨區域存儲了數萬(wàn)億個(gè)對象,AWS的對象執行請求已達到100萬(wàn)個(gè)的峰值。全球已有數十萬(wàn)家企業(yè)通過(guò) AWS 運行其全部或部分日常業(yè)務(wù)。這些業(yè)務(wù)遍布 190 多個(gè)國家/地區,亞馬遜用戶(hù)幾乎遍布世界每個(gè)角落。
  
  感知技術(shù)
  大數據的采集
和傳感技術(shù)的發(fā)展密切相關(guān)?;趥鞲衅骷夹g(shù)、指紋識別技術(shù)、RFID技術(shù)、坐標定位技術(shù)等感知能力的提升也是物聯(lián)網(wǎng)發(fā)展的基石。世界各地的工業(yè)設備、汽車(chē)、電表上都有無(wú)數的數字傳感器,它們隨時(shí)測量和傳輸位置、運動(dòng)、振動(dòng)、溫度、濕度,甚至空氣中化學(xué)物質(zhì)的變化,這將產(chǎn)生海量的數據信息。
  隨著(zhù)智能手機的普及,感知技術(shù)可以
  可謂是發(fā)展的巔峰,除了地理位置信息的廣泛應用外,一些新的感知手段也開(kāi)始出現在舞臺上,比如最新的“iPhone 5S”在Home鍵中嵌入了指紋傳感器,新手機可以直接檢測呼氣燃燒的脂肪量,手機的嗅覺(jué)傳感器可以監測從空氣污染到危險化學(xué)品, 微軟正在開(kāi)發(fā)能夠感知用戶(hù)當前情緒的智能手機技術(shù),谷歌眼鏡InSight新技術(shù)使人能夠通過(guò)服裝進(jìn)行識別。
  此外,還有許多與感知相關(guān)的技術(shù)創(chuàng )新讓我們精神煥發(fā):例如,牙科傳感器實(shí)時(shí)監測口腔活動(dòng)和飲食,嬰兒可穿戴設備可以使用大數據撫養嬰兒,英特爾正在開(kāi)發(fā)可以跟蹤眼睛和讀取情緒的3D筆記本電腦相機,日本公司正在開(kāi)發(fā)可以監測用戶(hù)心率的新型紡織材料, 該行業(yè)正試圖將生物識別技術(shù)引入支付領(lǐng)域。
  事實(shí)上,這個(gè)過(guò)程
  這些感知被逐漸捕捉,就是世界被數據化的過(guò)程,一旦世界完全數據化,那么世界的本質(zhì)就是信息。
  俗話(huà)說(shuō):“人類(lèi)過(guò)去延續文明,現在繼承信息。"
  大數據的實(shí)踐
  互聯(lián)網(wǎng)大數據
  因特網(wǎng)上的數據每年增長(cháng)50%,每?jì)赡陮⒎环?,而目前世界?0%以上的數據是最近幾年才產(chǎn)生的。IDC預測,到2020年,全球將有35澤字節的數據?;ヂ?lián)網(wǎng)是大數據發(fā)展的前哨,隨著(zhù)WEB 2.0時(shí)代的發(fā)展,人們似乎習慣于通過(guò)網(wǎng)絡(luò )將自己的生活數字化,方便分享、記錄和回憶。
  互聯(lián)網(wǎng)上的大數據很難明確界定分類(lèi)邊界,我們先來(lái)看看BAT的大數據:
  在信息技術(shù)較為發(fā)達的美國,除了谷歌、Facebook等知名公司外,涌現出許多大數據公司,專(zhuān)門(mén)從事數據產(chǎn)品,如:
  Metamarkets:這家公司分析Twitter,支付,簽到和一些與互聯(lián)網(wǎng)相關(guān)的問(wèn)題,為客戶(hù)提供出色的數據分析支持。
  Tableau:他們的重點(diǎn)是可視化大量數據。Tableau 提供了一種為數字媒體呈現數據的新方法。他們提供了一個(gè)免費工具,允許任何沒(méi)有編程背景的人創(chuàng )建特定于數據的圖表。該軟件還會(huì )分析數據并提供有價(jià)值的建議。
  ParAccel:他們向美國執法機構提供數據分析,例如跟蹤15,000名有犯罪記錄的人,為執法機構提供信息豐富的犯罪預測。他們是罪的先知。
  QlikTech:Qlikview是QlikTech的一個(gè)部門(mén),是商業(yè)智能領(lǐng)域的自主服務(wù)工具,可以應用于科學(xué)研究和藝術(shù)等領(lǐng)域。為了幫助開(kāi)發(fā)人員分析這些數據,QlikTech 提供了用于可視化原創(chuàng )
數據的工具等。
  好數據
 ?。篏oodData希望幫助客戶(hù)從數據中挖掘財富。該初創(chuàng )公司面向業(yè)務(wù)用戶(hù)和IT高管,提供數據存儲,性能報告,數據分析等工具。TellApart
 ?。篢ellApart與電子商務(wù)公司合作,分析用戶(hù)瀏覽行為等數據,通過(guò)定位潛在買(mǎi)家來(lái)增加收入。DataSift
 ?。篋ataSift采集
和分析社交媒體上的數據,幫助品牌掌握突發(fā)新聞?wù)擖c(diǎn)并制定有針對性的營(yíng)銷(xiāo)計劃。該公司還與Twitter建立了合作伙伴關(guān)系,使其成為業(yè)內為數不多的可以分析早期推文的初創(chuàng )公司之一。
  Datahero:公司的目標是讓復雜的數據更簡(jiǎn)單、更清晰,讓普通人更容易理解和想象。
  例子很多,這里簡(jiǎn)單總結一下,互聯(lián)網(wǎng)上大數據的典型代表有:
  用戶(hù)行為數據(精準廣告、內容推薦、行為習慣與偏好分析、產(chǎn)品優(yōu)化等)用戶(hù)消費數據(精準營(yíng)銷(xiāo)、信用記錄分析、活動(dòng)推廣、財富管理等)用戶(hù)
  地理位置數據(O2O促銷(xiāo)、商家推薦、交友推薦等)互聯(lián)網(wǎng)金融數據(P2P、小額貸款、支付、信貸、供應鏈金融等)用戶(hù)社交和其他UGC數據(趨勢分析,流行元素分析,流行度分析,輿情監測分析,社會(huì )問(wèn)題分析等)。
  面向政府的大數據
  最近,
  奧巴馬政府宣布投資2億美元,推動(dòng)大數據相關(guān)產(chǎn)業(yè)發(fā)展,將“大數據戰略”提升為國家意志。奧巴馬政府將數據定義為“未來(lái)的新石油”,并表示一個(gè)國家擁有數據的規模、活動(dòng)、解釋和使用的能力將成為綜合國力的重要組成部分,未來(lái),數據的擁有和控制甚至將成為國家除土地之外的另一項核心資產(chǎn), ??樟α?。
  在我國,所有政府部門(mén)都有構成社會(huì )基礎的原創(chuàng )
數據,如氣象數據、財務(wù)數據、信用數據、電力數據、燃氣數據、自來(lái)水數據、道路交通數據、客運數據、安全刑事案件數據、住房數據、海關(guān)數據、出入境數據、旅游數據、醫療數據、教育數據、環(huán)保數據等。這些數據在每個(gè)政府部門(mén)內似乎是單一和靜態(tài)的。但是,如果政府能夠關(guān)聯(lián)這些數據,并對這些數據進(jìn)行有效的相關(guān)性分析和統一管理,這些數據必將重生,其價(jià)值不可估量。
  具體來(lái)說(shuō),城市現在正朝著(zhù)智能化、智慧智慧化、智慧化城市邁進(jìn),比如智能電網(wǎng)、智慧交通、智慧醫療、智慧環(huán)保、智慧城市,這些都依賴(lài)于大數據,可以說(shuō)大數據是智慧的核心能量。從我國整體投資規模來(lái)看,到2012年底,全國城市數量將開(kāi)始建設智慧城市,通信網(wǎng)絡(luò )、數據平臺等基礎設施建設投資規模接近5000億元?!笆濉逼陂g,智慧城市建設帶動(dòng)的設備投資規模將達到1萬(wàn)億元。大數據為智慧城市的所有領(lǐng)域提供決策支持。在城市規劃方面,通過(guò)挖掘城市地理、氣象等自然信息和經(jīng)濟、社會(huì )、文化、人口等人文社會(huì )信息,為城市規劃提供決策,增強城市管理服務(wù)的科學(xué)性和前瞻性。在交通管理方面,通過(guò)對道路交通信息的實(shí)時(shí)挖掘,可以有效緩解交通擁堵,快速應對突發(fā)事件,為城市交通良性運行提供科學(xué)決策依據。在輿情監測方面,通過(guò)網(wǎng)絡(luò )關(guān)鍵詞搜索和語(yǔ)義智能分析,可以提高輿情分析的及時(shí)性和全面性,全面掌握社會(huì )狀況和輿情,提高公共服務(wù)能力,應對互聯(lián)網(wǎng)突發(fā)公共事件,打擊違法犯罪。在安防災害領(lǐng)域,通過(guò)大數據挖掘,及時(shí)發(fā)現人為或自然災害和恐怖事件,提高應急處置能力和安全防范能力。
  此外,作為國家的管理者,政府應該有勇氣逐步將手中的數據開(kāi)放給更有能力的組織或個(gè)人進(jìn)行分析和利用,以加速造福人類(lèi)。比如美國政府建了一個(gè)網(wǎng)站,這是奧巴馬總統任期內的重要一步:要求政府透明,核心是公開(kāi)政府機構的數據。到目前為止,已經(jīng)開(kāi)放了91054個(gè)數據集;349個(gè)公民開(kāi)發(fā)的應用程序;137個(gè)移動(dòng)應用程序;175個(gè)機構和子機構;87個(gè)畫(huà)廊;295個(gè)政府API。
  面向企業(yè)的大數據
  企業(yè)的CXO最關(guān)心的是報告曲線(xiàn)背后能有什么樣的信息,他應該做出什么樣的決策,其實(shí)這一切都需要數據的傳遞和支撐。在理想的世界中,大數據是一個(gè)巨大的杠桿,可以改變公司的影響力,區分競爭對手,省錢(qián),增加利潤,取悅買(mǎi)家,獎勵忠誠用戶(hù),將潛在客戶(hù)轉化為客戶(hù),增加吸引力,擊敗競爭對手,擴大用戶(hù)群,創(chuàng )造市場(chǎng)。
  那么,哪些傳統企業(yè)最需要大數據服務(wù)呢?我們舉幾個(gè)例子:1)向大量消費者提供產(chǎn)品或服務(wù)的企業(yè)(精準營(yíng)銷(xiāo));2)做中長(cháng)尾企業(yè)(服務(wù)轉型)的小而美典范;3)在互聯(lián)網(wǎng)(生死攸關(guān))的壓力下必須轉型的傳統企業(yè)。
  對于企業(yè)的大數據,
  還有一個(gè)預測:隨著(zhù)數據逐漸成為企業(yè)的資產(chǎn),數據產(chǎn)業(yè)將發(fā)展到傳統企業(yè)的供應鏈模式,最終形成“數據供應鏈”。特別是,有兩件事是顯而易見(jiàn)的:1)外部數據比內部數據越來(lái)越重要。在互聯(lián)互通的互聯(lián)網(wǎng)時(shí)代,單個(gè)企業(yè)的內部數據與整個(gè)互聯(lián)網(wǎng)數據相比只是滄海一粟;2)能夠提供數據供應、數據集成處理、數據應用等多鏈路服務(wù)的企業(yè)將具有明顯的綜合競爭優(yōu)勢。
  對于提供大數據服務(wù)的公司來(lái)說(shuō),他們正在等待合作的機會(huì ),正如微軟史密斯所說(shuō):“給我一些數據,我可以做出一些改變。如果你把所有的數據都給我,我就能拯救世界。"
  然而,一直做企業(yè)服務(wù)的巨頭們不會(huì )有優(yōu)勢,他們不得不眼睜睜地看著(zhù)新興互聯(lián)網(wǎng)公司加入戰斗,開(kāi)啟殘酷的競爭模式。為什么會(huì )這樣?從IT行業(yè)發(fā)展來(lái)看,第一代IT巨頭大多是ToB,如IBM、微軟、甲骨文、SAP、惠普等傳統IT企業(yè);第二代IT巨頭大多是ToC,如雅虎、谷歌、亞馬遜、Facebook等互聯(lián)網(wǎng)公司。在大數據到來(lái)之前,這兩類(lèi)公司基本互不逆河;但在當前大數據時(shí)代,這兩類(lèi)公司已經(jīng)開(kāi)始直接競爭。例如,亞馬遜已經(jīng)開(kāi)始提供基于云的數據倉庫服務(wù),直接搶占了IBM和甲骨文的市場(chǎng)。這種現象出現的本質(zhì)原因是:在互聯(lián)網(wǎng)巨頭的推動(dòng)下,傳統IT巨頭的客戶(hù)普遍開(kāi)始從事電子商務(wù)業(yè)務(wù),而正是因為客戶(hù)進(jìn)入了互聯(lián)網(wǎng),所以傳統IT巨頭才被不情愿地拖入互聯(lián)網(wǎng)領(lǐng)域。如果他們不進(jìn)入互聯(lián)網(wǎng),他們的業(yè)務(wù)就會(huì )萎縮。進(jìn)入互聯(lián)網(wǎng)后,必須將云技術(shù)、大數據等互聯(lián)網(wǎng)最具優(yōu)勢的技術(shù)打包到自己的產(chǎn)品中,然后提供給企業(yè)。
  例如,IBM在過(guò)去十年中已經(jīng)放棄了PC,并成功轉向軟件和服務(wù),這一次他們將遠離服務(wù)和咨詢(xún),更多地關(guān)注大數據分析軟件帶來(lái)的新業(yè)務(wù)增長(cháng)。IBM首席執行官Rometty Romet認為,“數據將成為決定所有行業(yè)成敗的根本因素,最終數據將成為人類(lèi)至關(guān)重要的自然資源。IBM積極提出“大數據平臺”架構。該平臺的四個(gè)核心功能包括Hadoop,流計算,數據倉庫以及信息集成和治理。
  IBM 大數據
  另一家需要通過(guò)云和大數據戰略進(jìn)行恢復的巨頭惠普也推出了自己的產(chǎn)品:HAVEn,這是一種可以自由擴展和擴展的大數據解決方案。該解決方案包括四種技術(shù):HP Autonomy、HP Vertica、HP ArcSight 和 HP Operations Management。它還支持Hadoop等通用技術(shù)。HAVEn不是一個(gè)軟件平臺,而是一個(gè)生態(tài)系統。四大組件滿(mǎn)足不同應用場(chǎng)景的需求,Autonomy是解決音視頻識別的重要解決方案;Vertica 的解決方案,用于解決數據處理的速度和效率問(wèn)題;ArcSight解決了機器的記錄信息處理,幫助企業(yè)獲得更高級別的安全管理;運營(yíng)管理不僅涉及外部數據的處理,還涉及IT基礎架構生成的數據。
  個(gè)人大數據
  個(gè)人大數據的概念很少被提及,簡(jiǎn)單來(lái)說(shuō),在有效采集
了與個(gè)人相關(guān)的各種有價(jià)值的數據信息后,可以得到本人的授權,提供給第三方進(jìn)行處理和使用,獲得第三方提供的數據服務(wù)。
  用一個(gè)例子來(lái)說(shuō)明會(huì )更清楚:
  未來(lái),每個(gè)用戶(hù)都可以在互聯(lián)網(wǎng)上注冊一個(gè)個(gè)人數據中心來(lái)存儲個(gè)人大數據信息。用戶(hù)可以確定可以采集
哪些個(gè)人數據,并通過(guò)可穿戴設備或植入芯片等感知技術(shù)采集
和捕獲個(gè)人大數據,如牙科監測數據、心率數據、體溫數據、視覺(jué)數據、記憶能力、地理位置信息、社交關(guān)系數據、運動(dòng)數據、飲食數據、購物數據等。用戶(hù)可以將牙科監測數據授權給XX牙科診所使用,他們可以監控和使用這些數據,為用戶(hù)制定有效的牙齒預防和保養計劃;也可以授權將個(gè)人的運動(dòng)數據提供給體育和健身機構,該機構將監測其身體運動(dòng)功能,并有針對性地制定和調整其個(gè)人運動(dòng)計劃;您還可以將您的個(gè)人消費數據委托給金融機構,他們可以幫助您制定合理的財務(wù)計劃并預測收益。當然,其中一些個(gè)人數據可以提供給國家相關(guān)部門(mén)進(jìn)行實(shí)時(shí)監控,而無(wú)需個(gè)人授權,例如犯罪預防和監測中心,它可以實(shí)時(shí)監控該地區每個(gè)人的情緒和心理狀態(tài),以防止自殺和犯罪。
  以個(gè)人為中心的大數據具有一些特征:數據僅
  保留在個(gè)人中心,其他第三方機構僅授權使用(數據有一定的使用期限),使用后必須接受立即銷(xiāo)毀的監督。個(gè)人數據的采集
應明確分類(lèi),其他類(lèi)型的數據由用戶(hù)自己采集
,但國家立法明確要求監控的數據除外。數據的使用僅由用戶(hù)授權,數據中心可以幫助監控個(gè)人數據的整個(gè)生命周期。
  前景太好了,也許個(gè)人數據中心的實(shí)現會(huì )
  在遙遠的地方,也許這不是解決個(gè)人數據隱私的最好方法,也許行業(yè)對大數據的無(wú)限渴望會(huì )阻止數據個(gè)人中心的實(shí)現,但隨著(zhù)數據越來(lái)越多,在缺乏監管之后,必然會(huì )出現一場(chǎng)激烈的博弈:數據重要還是隱私重要;無(wú)論是以業(yè)務(wù)為中心還是以個(gè)人為中心。
  結束
  版權聲明:轉載文章來(lái)源于公眾網(wǎng)絡(luò ),僅供學(xué)習使用,不會(huì )用于任何商業(yè)目的,如來(lái)源錯誤或侵犯原作者權益,請聯(lián)系我們進(jìn)行刪除或授權,聯(lián)系郵箱:。請注明轉載大數據公眾號文章的原創(chuàng )
鏈接和作者,否則產(chǎn)生的版權糾紛與大數據無(wú)關(guān)。
  解讀:什么是原創(chuàng )文章?原創(chuàng )文章與偽原創(chuàng )文章區別?皆知傳媒為您解答?
  什么是原創(chuàng )文章?原創(chuàng )文章和seo偽原創(chuàng )有什么區別?接下來(lái),知乎傳媒將為您詳細解讀。說(shuō)白了,原創(chuàng )文章就是從頭到尾所有的內容都是用自己的話(huà)來(lái)表達的。偽原創(chuàng )就是文章的開(kāi)頭和結尾都是自己寫(xiě)的。,其余內容是摘錄別人在網(wǎng)上的文章修改的,稍微修改一下別人的內容,冒充自己寫(xiě)的。下面說(shuō)說(shuō)原創(chuàng )文章和偽原創(chuàng )文章的區別。
  
  原創(chuàng )文章:未被搜索引擎收錄的文章。它利用谷歌通過(guò)翻墻軟件查找英文資料,然后翻譯成中文。方法是翻簡(jiǎn)的方法,通過(guò)Kimo搜索引擎找到和你網(wǎng)站相關(guān)的文章,用網(wǎng)頁(yè)編輯器對內容進(jìn)行格式化,然后創(chuàng )建一個(gè)word文檔選擇里面的所有內容,通過(guò)審核給翻簡(jiǎn)。通過(guò)圖像識別創(chuàng )作原創(chuàng )文章,需要高清相機或手機、dopdf-7虛擬打印機、rj_nd1854圖像識別軟件。用word打開(kāi)你準備好的圖片文件,用你安裝的虛擬打印機的pdf格式打印出來(lái),放在合適的位置。使用圖像識別軟件打開(kāi)此pdf文件并選擇一個(gè)區域進(jìn)行識別。
  偽原創(chuàng ):一般來(lái)說(shuō),偽原創(chuàng )占網(wǎng)站的70%左右。就是對原創(chuàng )文章進(jìn)行處理,讓文章以為是自己的。修改一篇文章的標題,先把這個(gè)標題放到百度的搜索框里,看這個(gè)標題出現頻率高不高,再看這個(gè)標題下的搜索結果是不是全部都是紅色的。要修改的標題必須收錄
關(guān)鍵詞。文章的第一段最好自己寫(xiě),第一段在文章的關(guān)鍵詞加上錨文本。文章中間的段落需要自己寫(xiě)或修改,需要文章的關(guān)鍵詞,文章的結尾需要自己寫(xiě),有關(guān)鍵詞。這種偽原創(chuàng )文章至少要經(jīng)過(guò)80%的工具檢測才能發(fā)表。它可以用作更新站點(diǎn)內容的方法,并與原創(chuàng )
文章結合使用。
  
  站外平臺發(fā)布可以使用偽原創(chuàng )文章,但是要注意站內文章不要重復,那么站外怎么發(fā)呢。你可以天天用這個(gè)偽原創(chuàng )seo的工具進(jìn)行批量站外發(fā)布,為自己的網(wǎng)站引入流量。網(wǎng)站的內容怎么寫(xiě),很容易引起網(wǎng)友的興趣。第一種形式是軟文。簡(jiǎn)單來(lái)說(shuō),軟文就是廣告。這種軟件通常隱藏在故事情節中。廣告自然地穿插在劇情中間。第二種是新聞文章。這類(lèi)文章具有權威性,比較真實(shí)可靠。第三種是知識分享文章的內容,很容易引起客戶(hù)的共鳴,啟發(fā)客戶(hù)。第四類(lèi)是有爭議的文章內容。 查看全部

  解讀:一篇對大數據深度思考的文章,讓你認識并讀懂大數據
  在寫(xiě)這篇文章之前,我發(fā)現我身邊的很多IT人往往都渴望這些熱門(mén)的新技術(shù)和新趨勢,但很難說(shuō)透徹,如果你問(wèn)他大數據和你有什么關(guān)系?估計很少能說(shuō)出一、二、三的名字。原因是每個(gè)人都對新技術(shù)有著(zhù)同樣的原創(chuàng )
渴望,至少他們在聊天時(shí)看起來(lái)并不“臟”;其次,工作和生活環(huán)境中能夠真正參與大數據實(shí)踐的案例太少,所以沒(méi)有必要讓大家花時(shí)間去了解原因。
  我希望有些不同,所以我考慮了如何理解大數據,包括查閱數據和
  翻閱最新的專(zhuān)業(yè)書(shū)籍,但我不想簡(jiǎn)單地整理堆積那些零散的數據碎片或不同的理解,形成毫無(wú)價(jià)值的釋義或評論,我真誠地希望進(jìn)入事物來(lái)探索本質(zhì)。
  如果你說(shuō)大數據就是大數據,或者談?wù)?br />   4 Vs,也許很深入地談?wù)凚I的價(jià)值或者預測,或者以谷歌和亞馬遜為例,技術(shù)流可能談?wù)揌adoop和云計算,無(wú)論是對還是錯,就是無(wú)法勾勒出對大數據的整體理解,不是片面的,但至少是一些猜測,襯衫癢癢的?;蛟S,“解構”才是最好的方式。
  如何構建大數據?
  首先,我認為大數據是互聯(lián)網(wǎng)發(fā)展的一種表象或特征。
  現階段,沒(méi)有必要去神話(huà)它,也沒(méi)有必要對它保持敬畏,在以云計算為代表的技術(shù)創(chuàng )新大幕下,這些原本難以采集
和使用的數據開(kāi)始變得容易使用,通過(guò)各行各業(yè)的不斷創(chuàng )新,大數據將逐漸為人類(lèi)創(chuàng )造更多價(jià)值。
  其次,想要系統的認知大數據,必須全面細致地分解它,我著(zhù)手從三個(gè)層面進(jìn)行擴展:
  第一個(gè)層次是理論,這是認識的必要途徑,也是廣泛認識和傳播的底線(xiàn)。我將從大數據的特征定義來(lái)理解行業(yè)對大數據的整體描述和表征;從對大數據價(jià)值的討論中,我們可以深入分析大數據的可貴性;從大數據的現狀和未來(lái)洞察大數據的發(fā)展趨勢;從大數據隱私的特殊性和重要角度出發(fā),審視人與數據的長(cháng)期博弈。
  第二個(gè)層次是技術(shù),它是大數據體現價(jià)值的手段和基石。我將解釋大數據從采集
、處理、存儲到形成云計算、分布式處理技術(shù)、存儲技術(shù)和感知技術(shù)發(fā)展的結果的全過(guò)程。
  第三個(gè)層次是實(shí)踐,這是大數據的終極價(jià)值體現。我將從互聯(lián)網(wǎng)大數據、政府大數據、企業(yè)大數據和個(gè)人大數據四個(gè)方面描繪大數據所展現的美好場(chǎng)景和將要實(shí)現的藍圖。
  大數據相關(guān)理論
  1
  功能定義
  最早提出大數據時(shí)代到來(lái)的是麥肯錫:“如今,數據已經(jīng)滲透到每個(gè)行業(yè)和業(yè)務(wù)功能領(lǐng)域,成為重要的生產(chǎn)要素。大量數據的挖掘和使用預示著(zhù)新一輪的生產(chǎn)率增長(cháng)和消費者剩余。"
  業(yè)界(最早定義IBM)將大數據的特征概括為4個(gè)“V”(體積、品種、價(jià)值值、速度),或者有四個(gè)層次的特征:一是數據量巨大。大數據的起始測量單位至少是P(1000 T),E(100萬(wàn)T)或Z(10億T);其次,數據類(lèi)型多種多樣。例如,網(wǎng)絡(luò )日志、視頻、圖像、地理位置信息等。三是價(jià)值密度低,商業(yè)價(jià)值高。第四,處理速度快。最后一點(diǎn)也與傳統的數據挖掘技術(shù)有著(zhù)根本的不同。
  事實(shí)上,這些V并不能真正解釋大數據的所有特征,下圖有效地解釋了大數據的一些相關(guān)特征。
  俗話(huà)說(shuō):技術(shù)三分,數據七分,誰(shuí)得到數據誰(shuí)就贏(yíng)天下。誰(shuí)說(shuō)的并不重要,但這句話(huà)的正確性就不用爭論了。Victor Meier-Sch?nberg在《大數據時(shí)代》一書(shū)中舉了數百個(gè)例子,都說(shuō)明了一個(gè)道理:當大數據時(shí)代到來(lái)時(shí),我們必須用大數據思維來(lái)探索大數據的潛在價(jià)值。在書(shū)中,作者提到最多的是谷歌如何利用人們的搜索記錄來(lái)挖掘數據的二次使用價(jià)值,比如預測某個(gè)地方流感爆發(fā)的趨勢;亞馬遜如何利用用戶(hù)的購買(mǎi)和瀏覽歷史數據,做出有針對性的購書(shū)推薦,有效提升銷(xiāo)量;Farecast如何在過(guò)去十年中使用所有航線(xiàn)的折扣機票來(lái)預測用戶(hù)是否會(huì )在正確的時(shí)間購買(mǎi)機票。
  那么,什么是大數據思維?根據維克多·邁耶-勛伯格的說(shuō)法,1 - 需要整個(gè)數據樣本而不是采樣;2-注重效率而不是精度;3-關(guān)注相關(guān)性而不是因果關(guān)系。
  阿里巴巴的王健對大數據也有一些獨到的見(jiàn)解,比如
  “如今的數據不大,真正有意思的是數據已經(jīng)上線(xiàn),這正是互聯(lián)網(wǎng)的特點(diǎn)?!薄爱a(chǎn)品在非互聯(lián)網(wǎng)時(shí)期的功能一定是它的價(jià)值,而今天互聯(lián)網(wǎng)的產(chǎn)品,數據一定是它的價(jià)值?!澳悴幌胧褂脭祿?lái)改善業(yè)務(wù),這不是大數據。你一定做了以前做不到的事情。"
  特別是最后一點(diǎn),我非常同意大數據的真正價(jià)值在于創(chuàng )造,在于填補無(wú)數尚未實(shí)現的空白。
  有些人將數據比作含有能源的煤礦。煤炭按其性質(zhì)分類(lèi),如煉焦煤、無(wú)煙煤、脂肪煤、貧煤等,而露天煤礦和深山煤礦的開(kāi)挖成本不同。同樣,大數據不是“大”,而是“有用”。價(jià)值內容和挖礦成本比數量更重要。
  阿拉伯數字
  價(jià)值討論
  什么是大數據?投資者眼中閃耀著(zhù)兩個(gè)詞:資產(chǎn)。例如,當Facebook上市時(shí),評估人員評估的大部分有效資產(chǎn)都是其社交網(wǎng)站上的數據。
  如果把大數據比作一個(gè)行業(yè),那么這個(gè)行業(yè)盈利的關(guān)鍵在于提高數據的“處理能力”,通過(guò)“處理”實(shí)現數據的“增值”。
  目標
  超市以孕婦在孕期可能購買(mǎi)的20多種產(chǎn)品為基礎,以所有用戶(hù)的購買(mǎi)記錄為數據源,通過(guò)構建模型分析購買(mǎi)者的行為相關(guān)性,可以準確推斷出懷孕的具體時(shí)間,以便Target的銷(xiāo)售部門(mén)在每位懷孕顧客的不同階段發(fā)送相應的產(chǎn)品優(yōu)惠券。
  塔吉特的例子就是一個(gè)很好的例子,證實(shí)了維克多·邁耶-勛伯格(Victor Meier-Sch?nberg)提出的一個(gè)有說(shuō)服力的觀(guān)點(diǎn):通過(guò)識別關(guān)聯(lián)并對其進(jìn)行監控,可以預測未來(lái)。Target通過(guò)監控買(mǎi)家購買(mǎi)商品的時(shí)間和類(lèi)型來(lái)準確預測懷孕時(shí)間,這是二次使用數據的典型例子。如果,通過(guò)從駕駛員的手機采集
GPS數據,我們可以分析出哪些道路目前堵車(chē),我們可以及時(shí)發(fā)出道路交通提醒;通過(guò)采集
汽車(chē)的GPS位置數據,可以分析出城市的哪些區域有更多的停車(chē)位,這也意味著(zhù)該地區有更多的活躍人群,這些分析數據適合出售給廣告商。
  無(wú)論大數據的核心價(jià)值是否
  無(wú)論預測與否,基于大數據形成決策的模型為許多企業(yè)帶來(lái)了利潤和聲譽(yù)。
  從大數據價(jià)值鏈的分析來(lái)看,有三種模式:
  大數據在手,但利用不好;比較典型的是金融機構、電信業(yè)、政府機構等。沒(méi)有數據,但知道如何幫助擁有它的人利用它;典型的是IT咨詢(xún)和服務(wù)公司,如埃森哲,IBM,甲骨文等。既有數據思維,也有大數據思維;比較典型的是谷歌、亞馬遜、萬(wàn)事達卡等。
  未來(lái)在大數據領(lǐng)域最有價(jià)值的是兩件事:
  具有大數據思維的人,能夠將大數據的潛在價(jià)值轉化為實(shí)際收益;沒(méi)有業(yè)務(wù)領(lǐng)域尚未被大數據觸及。這些是未開(kāi)發(fā)的油井,金礦,所謂的藍海。
  沃爾瑪作為零售業(yè)的巨頭,他們的分析師會(huì )對每個(gè)階段的銷(xiāo)售記錄進(jìn)行全面分析,一旦他們意外發(fā)現雖然無(wú)關(guān)緊要但非常有價(jià)值的數據,在美國颶風(fēng)季節,蛋撻和抗颶風(fēng)商品在超市的銷(xiāo)量大幅增加,于是他們做出了明智的決定,將蛋撻的銷(xiāo)售地點(diǎn)移到了颶風(fēng)的一邊。商品銷(xiāo)售區,看似是為了方便用戶(hù)選擇。但沒(méi)想到蛋撻的銷(xiāo)量因此增加了不少。
  另一個(gè)有趣的例子是,1948年遼沈戰役期間,司令員林彪要求每天例行的“軍事情報日報”,由值班參謀宣讀下屬各縱隊、師、團的無(wú)線(xiàn)電報的戰情和俘虜情況。這幾乎是重復同樣無(wú)聊的數據:每個(gè)單位殲滅了多少敵人,俘虜了多少俘虜;有多少火炮、車(chē)輛、槍支、物資...一天,參謀照例匯報當天的戰情時(shí),林彪突然打斷他:“你剛才聽(tīng)到胡家棚屋里打仗的消息了嗎?大家都不知所措,因為這樣的戰斗每天都有幾十場(chǎng)戰斗,不都是幾乎一模一樣的無(wú)聊數字嗎?林彪掃了一遍,見(jiàn)沒(méi)人回答,于是連問(wèn)了三個(gè)問(wèn)題:“為什么那里繳獲的短槍和長(cháng)槍的比例比其他戰斗略高?為什么那里的手推車(chē)與被俘虜和摧毀的手推車(chē)的比例略高于其他戰斗?為什么在那里被俘和陣亡的軍官與士兵的比例略高于其他戰斗?林彪司令大步走到掛滿(mǎn)軍事地圖的墻前,指著(zhù)地圖上的點(diǎn)說(shuō):“我猜,不,我決定!敵人的指揮所來(lái)了!果不其然,部隊很快俘虜了敵人的指揮官廖耀祥,并贏(yíng)得了這場(chǎng)重要的戰斗。
  這些例子真實(shí)地體現在各行各業(yè),對數據價(jià)值的追尋取決于掌握數據的人,關(guān)鍵是人的數據思維;與其說(shuō)大數據創(chuàng )造價(jià)值,不如說(shuō)大數據思維引發(fā)了新的價(jià)值增長(cháng)。
  現在和未來(lái)
  讓我們先來(lái)看看大數據在今天是如何做的:
  大數據助力政府實(shí)現市場(chǎng)經(jīng)濟調控、公共衛生安全防范、災害預警、輿情監督;
  大數據幫助城市預防犯罪,實(shí)現智慧交通,提升應急能力。
  大數據幫助醫療機構建立患者疾病風(fēng)險跟蹤機制,幫助藥企改善藥物臨床使用,幫助艾滋病研究機構為患者提供定制化藥物。
  大數據幫助航空公司節約運營(yíng)成本,電信公司提高售后服務(wù)質(zhì)量,保險公司識別欺詐和保險欺詐,快遞公司監控和分析運輸車(chē)輛故障提前預警維修,電力公司有效識別和預警即將發(fā)生故障的設備。
  大數據幫助電商企業(yè)向用戶(hù)推薦商品和服務(wù),幫助旅游網(wǎng)站為游客提供自己喜歡的旅游路線(xiàn),幫助二手市場(chǎng)的買(mǎi)賣(mài)雙方找到最合適的交易標的,幫助用戶(hù)找到最合適的購買(mǎi)期、商家和最優(yōu)惠的價(jià)格。大數據幫助企業(yè)提高
  營(yíng)銷(xiāo)針對性,降低物流和庫存成本,降低投資風(fēng)險,幫助企業(yè)提高廣告精準度;
  大數據幫助娛樂(lè )行業(yè)預測歌手、歌曲、電影、電視劇的熱度,為投資者分析評估拍一部電影最合適的錢(qián)是多少,否則可能無(wú)法收回成本;
  大數據幫助社交網(wǎng)站提供更精準的好友推薦,為用戶(hù)提供更精準的企業(yè)招聘信息,推薦用戶(hù)可能喜歡的游戲和適合購買(mǎi)的產(chǎn)品。
  
  其實(shí)這些還遠遠不夠,大數據的身影在未來(lái)應該無(wú)處不在,即使無(wú)法準確預測大數據最終會(huì )給人類(lèi)社會(huì )帶來(lái)哪種最終形態(tài),但我相信,只要發(fā)展步伐繼續下去,大數據引發(fā)的變革浪潮很快就會(huì )淹沒(méi)地球的每一個(gè)角落。
  比如亞馬遜的終極期望是:“最成功的圖書(shū)推薦應該是唯一的書(shū),也就是用戶(hù)會(huì )買(mǎi)的下一本書(shū)。"
  谷歌
  同樣希望用戶(hù)搜索的最佳體驗是搜索結果只收錄
用戶(hù)需要的內容,而這并不需要用戶(hù)給Google太多提示。
  當發(fā)展
  物聯(lián)網(wǎng)達到一定規模,借助條碼、二維碼、RFID等唯一標識產(chǎn)品,傳感器、可穿戴設備、智能感知、視頻采集、增強現實(shí)等技術(shù)可以實(shí)現信息的實(shí)時(shí)采集和分析,這些數據可以支撐智慧城市、智慧交通、智慧能源、智慧醫療、智慧環(huán)保等概念需求, 這些所謂的智慧,就是大數據數據源的集合和服務(wù)范圍。
  除了更好地解決社會(huì )問(wèn)題、商業(yè)營(yíng)銷(xiāo)問(wèn)題、科技問(wèn)題外,未來(lái)的大數據政策也將出現可預見(jiàn)的以人為本的大數據政策趨勢。人才是地球的主人,大部分數據都與人類(lèi)有關(guān),需要通過(guò)大數據解決人類(lèi)的問(wèn)題。
  比如建立個(gè)人數據中心,整合大家的日常習慣、身體體征、社交網(wǎng)絡(luò )、智力、愛(ài)好氣質(zhì)、疾病愛(ài)好、情緒波動(dòng)......換句話(huà)說(shuō),一個(gè)人從出生的那一刻起的每一分每一秒都被記錄下來(lái),除了頭腦之外的一切都被存儲起來(lái),這些數據可以得到充分利用:
  當然,以上一切看起來(lái)都不錯,但前提是犧牲用戶(hù)的自由嗎?只能說(shuō),新事物帶來(lái)創(chuàng )新的同時(shí),也帶來(lái)了“萌芽”。比如在手機普及之前,大家都喜歡聚在一起聊天,自從手機普及,尤其是有了互聯(lián)網(wǎng),大家不需要聚在一起就可以隨時(shí)隨地聊天,但“病菌”滋生了另一種情況,大家慢慢習慣了與手機共度時(shí)光,人與人之間的情感交流似乎永遠被一個(gè)“網(wǎng)絡(luò )”隔開(kāi)了。
  大數據隱私
  您可能不敏感,當您在不同網(wǎng)站上注冊個(gè)人信息時(shí),可能已經(jīng)擴散,當您莫名其妙地收到各種電子郵件、電話(huà)、短信滋擾時(shí),您不會(huì )想到您的電話(huà)號碼、郵箱、生日、購買(mǎi)記錄、收入水平、家庭住址、親友等私人信息早已被各種商業(yè)組織非法存儲或出售給任何其他有需要的企業(yè)或個(gè)人。
  更可怕的是,你永遠無(wú)法刪除這些信息,它們將永遠存在于互聯(lián)網(wǎng)的某個(gè)你不知道的角落。除非您替換所有信息,否則成本太高。用戶(hù)隱私
  問(wèn)題一直是大數據應用中難以繞開(kāi)的問(wèn)題,如央視曝光的焦點(diǎn)無(wú)線(xiàn)、洛威鄧白氏、網(wǎng)易郵箱等,都涉及侵犯用戶(hù)隱私。目前,我國沒(méi)有專(zhuān)門(mén)的法律法規來(lái)定義用戶(hù)隱私,其他相關(guān)法律法規多用于解釋相關(guān)問(wèn)題。然而,隨著(zhù)公眾隱私意識的提高,合法和合規地訪(fǎng)問(wèn)數據,數據分析和應用數據是進(jìn)行大數據分析時(shí)必須遵循的原則。
  說(shuō)到隱私被侵犯,愛(ài)德華?斯諾登應該為這位前中央情報局雇員提供一席之地,他單槍匹馬地引爆了有關(guān)美國棱鏡計劃的內部信息。Project Prism是自2007年以來(lái)由國家安全局(NSA)運營(yíng)的絕密電子監視計劃,每年花費近2000億美元來(lái)監控美國各地的電話(huà)記錄,據稱(chēng)允許情報人員訪(fǎng)問(wèn)九家主要科技公司的服務(wù)器,包括微軟,雅虎,谷歌,Facebook,PalTalk,AOL,Skype,YouTube和蘋(píng)果。這一事件引發(fā)了人們對政府使用大數據時(shí)侵犯公民隱私的擔憂(yōu)。
  環(huán)顧四周,當微博、微信、QQ空間這些社交平臺肆意吞噬數億用戶(hù)的各種信息時(shí),你不要指望你有隱私,即使你刪除了某處,但也許這些信息已經(jīng)被別人復制或保存了,更有可能被百度或者谷歌保存成快照,早就提供給任何用戶(hù)搜索。
  因此,在大數據的背景下,很多人都在積極抵制無(wú)底洞的數字化,這場(chǎng)大數據與個(gè)人的博弈將永遠持續下去......
  專(zhuān)家就如何在大數據背景下有效保護隱私給出了一些建議:
  減少信息的數字化;隱私立法;數字隱私基礎設施(類(lèi)似于DRM數字版權管理);人類(lèi)改變認知(接受忽略過(guò)去);打造良性信息生態(tài);語(yǔ)境化。
  但這些都不是立即有效或實(shí)質(zhì)性改善的。
  例如,現在有一個(gè)職業(yè)叫做帖子編輯,專(zhuān)門(mén)負責幫助人們刪除帖子和刪除主要網(wǎng)站上的評論。實(shí)際上,這些人正在入侵主要網(wǎng)站,破解管理員的密碼,然后手動(dòng)刪除它。只是他們不保護客戶(hù)的隱私,而主要是丑聞。還有一個(gè)職業(yè)叫做人肉專(zhuān)家,他們負責從互聯(lián)網(wǎng)上查找與他們無(wú)關(guān)的用戶(hù)的任意信息。這是一件可怕的事情,也就是說(shuō),如果有人想找到你,只需要兩個(gè)條件:1-你一直在互聯(lián)網(wǎng)上并留下了痕跡;2-您的朋友和家人或只是認識您的人一直在互聯(lián)網(wǎng)上并留下了您的蹤跡。如果滿(mǎn)足這兩個(gè)條件之一,人類(lèi)動(dòng)物學(xué)家可以很容易地找到你,并可能知道你在餐廳和誰(shuí)共進(jìn)晚餐。
  當很多互聯(lián)網(wǎng)公司意識到隱私對用戶(hù)的重要性時(shí),為了繼續獲得用戶(hù)的信任,他們采取了許多措施,比如谷歌承諾只保留用戶(hù)的搜索記錄9個(gè)月,瀏覽器廠(chǎng)商提供隱身沖浪模式,社交網(wǎng)站拒絕來(lái)自公共搜索引擎的爬蟲(chóng)進(jìn)入, 所提供的所有數據都將匿名處理。
  在這種復雜的環(huán)境下,很多人仍然沒(méi)有樹(shù)立信息隱私的保護意識,讓自己處于被騷擾、精心設計、使用、監控的境地。然而,我們幾乎無(wú)能為力,因為個(gè)人隱私數據不再受我們控制,正如一首詩(shī)所說(shuō):“如果你現在繼續麻木,那么不要指望這種麻木能承受被”剝離“那一刻的恐慌和絕望”
  大數據相關(guān)技術(shù)
  云技術(shù)
  大數據通常與云計算相關(guān)聯(lián),因為對大型數據集的實(shí)時(shí)分析需要一個(gè)分布式處理框架將工作分配給數十、數百甚至數萬(wàn)臺計算機??梢哉f(shuō),云計算起到了工業(yè)革命引擎的作用,而大數據就是電。
  云計算思想的起源是由麥卡錫在 60 年代提出的:作為水和電一樣的公用事業(yè)為用戶(hù)提供計算能力。
  如今,在谷歌、亞馬遜、Facebook等一批互聯(lián)網(wǎng)公司的帶領(lǐng)下,出現了一種有效的模式:云計算提供了一個(gè)基礎設施平臺,大數據應用運行在這個(gè)平臺上。
  業(yè)內人士這樣描述兩者的關(guān)系:沒(méi)有大數據信息的積累,云計算的算力再強大,也很難找到用處;沒(méi)有云計算的處理能力,大數據的信息積累再豐富,也終究只是一面鏡子。
  那么大數據需要哪些云計算技術(shù)呢?
  以下是一些示例,例如虛擬化技術(shù)、分布式處理技術(shù)、海量數據存儲和管理技術(shù)、NoSQL、實(shí)時(shí)流數據處理、智能分析技術(shù)(類(lèi)似于模式識別和自然語(yǔ)言理解)等。
  云計算與大數據的關(guān)系可以用下圖來(lái)說(shuō)明,兩者的結合會(huì )產(chǎn)生以下效果:它可以基于海量業(yè)務(wù)數據提供更多創(chuàng )新的服務(wù);通過(guò)云計算技術(shù)的不斷發(fā)展,降低大數據業(yè)務(wù)的創(chuàng )新成本。
  如果將云計算與大數據進(jìn)行比較,最明顯的區別在于兩個(gè)方面:
  分布式處理技術(shù)
  分布式處理系統
  可以將不同位置或具有不同功能或具有不同數據的多臺計算機與通信網(wǎng)絡(luò )連接起來(lái),在控制系統的統一管理和控制下協(xié)調完成信息處理任務(wù)——這就是分布式處理系統的定義。
  以Hadoop為例(Yahoo
 ?。┮訷ahoo為例,Hadoop是一個(gè)軟件框架,它實(shí)現了MapReduce模式,對大量數據進(jìn)行分布式處理,這些數據以可靠,高效和可擴展的方式進(jìn)行處理。
  MapReduce是一種核心計算模式
  谷歌提出的云計算,是一種分布式計算技術(shù),也是一種簡(jiǎn)化的分布式編程模型,MapReduce模式的主要思想是將要執行的問(wèn)題(如程序)自動(dòng)拆分為map(map)和reduce(簡(jiǎn)化)的方式,數據被拆分后通過(guò)map函數程序將數據映射到不同的塊中, 分配給計算機隊列進(jìn)行處理以達到分布式計算的效果,結果通過(guò)Reduce功能在程序中聚合,從而輸出開(kāi)發(fā)人員所需的結果。
  首先,它是可靠的,因為它假設計算元素和存儲將發(fā)生故障,因此它維護工作數據的多個(gè)副本,以確保處理可以在故障節點(diǎn)之間重新分配。其次,Hadoop是高效的,因為它并行工作,通過(guò)并行處理加快處理速度。Hadoop也是可擴展的,能夠處理PB級的數據。此外,Hadoop依賴(lài)于社區服務(wù)器,因此成本相對較低,任何人都可以使用。
  你也可以這樣理解Hadoop的組成,Hadoop=HDFS(文件系統、數據存儲技術(shù)相關(guān))+HBase(數據庫)+MapReduce(數據處理)+...別人
  Hadoop中使用的一些技術(shù)是:
  說(shuō)了這么多,舉個(gè)實(shí)際的例子,雖然這個(gè)例子有點(diǎn)老舊,但淘寶的海量數據技術(shù)架構還是能幫助我們理解大數據的運行和處理機制:
  淘寶大數據如上圖所示,
  淘寶的海量數據產(chǎn)品技術(shù)架構分為五個(gè)層次,從上到下分別是:數據源層、計算層、存儲層、查詢(xún)層和產(chǎn)品層。
  存儲技術(shù)
  大數據可以抽象地分為大數據存儲和大數據分析,兩者的關(guān)系是:大數據存儲的目的是支持大數據分析。到目前為止,計算機技術(shù)已經(jīng)是兩個(gè)截然不同的領(lǐng)域:大數據存儲致力于開(kāi)發(fā)可擴展到PB甚至EB的數據存儲平臺;大數據分析專(zhuān)注于在最短的時(shí)間內處理大量不同類(lèi)型的數據集。
  說(shuō)到存儲,有一個(gè)著(zhù)名的摩爾定律,我相信每個(gè)人都聽(tīng)說(shuō)過(guò):集成電路的復雜性在18個(gè)月內翻了一番。因此,內存成本大約每 18-24 個(gè)月下降一半。成本下降也使大數據可存儲。例如,谷歌
  管理著(zhù)超過(guò)50萬(wàn)臺服務(wù)器和100萬(wàn)個(gè)硬盤(pán),谷歌也在不斷擴大計算能力和存儲容量,其中很多都是基于廉價(jià)的服務(wù)器和普通存儲硬盤(pán),大大降低了其服務(wù)成本,因此可以在技術(shù)研發(fā)上投入更多的資金。
  就亞馬遜而言,Amazon S3是一種面向互聯(lián)網(wǎng)的存儲服務(wù)。該服務(wù)旨在使開(kāi)發(fā)人員更容易進(jìn)行網(wǎng)絡(luò )規模的計算。Amazon S3 提供了一個(gè)簡(jiǎn)潔的 Web 服務(wù)界面,允許用戶(hù)隨時(shí)隨地在 Web 上存儲和檢索任何大小的數據。該服務(wù)使所有開(kāi)發(fā)人員都可以訪(fǎng)問(wèn)亞馬遜用于運行其全球網(wǎng)站網(wǎng)絡(luò )的相同可擴展、可靠、安全和快速成本的基礎設施??紤] S3 的設計指標:給定年份中對象的 99.9999999999% 的持久性和 99.99% 的可用性,以及承受兩個(gè)設施的數據丟失的能力。
  S3 已經(jīng)成功并且確實(shí)有效,S3 云中有數萬(wàn)億個(gè)存儲對象,并且性能相當不錯。S3 Cloud已經(jīng)跨區域存儲了數萬(wàn)億個(gè)對象,AWS的對象執行請求已達到100萬(wàn)個(gè)的峰值。全球已有數十萬(wàn)家企業(yè)通過(guò) AWS 運行其全部或部分日常業(yè)務(wù)。這些業(yè)務(wù)遍布 190 多個(gè)國家/地區,亞馬遜用戶(hù)幾乎遍布世界每個(gè)角落。
  
  感知技術(shù)
  大數據的采集
和傳感技術(shù)的發(fā)展密切相關(guān)?;趥鞲衅骷夹g(shù)、指紋識別技術(shù)、RFID技術(shù)、坐標定位技術(shù)等感知能力的提升也是物聯(lián)網(wǎng)發(fā)展的基石。世界各地的工業(yè)設備、汽車(chē)、電表上都有無(wú)數的數字傳感器,它們隨時(shí)測量和傳輸位置、運動(dòng)、振動(dòng)、溫度、濕度,甚至空氣中化學(xué)物質(zhì)的變化,這將產(chǎn)生海量的數據信息。
  隨著(zhù)智能手機的普及,感知技術(shù)可以
  可謂是發(fā)展的巔峰,除了地理位置信息的廣泛應用外,一些新的感知手段也開(kāi)始出現在舞臺上,比如最新的“iPhone 5S”在Home鍵中嵌入了指紋傳感器,新手機可以直接檢測呼氣燃燒的脂肪量,手機的嗅覺(jué)傳感器可以監測從空氣污染到危險化學(xué)品, 微軟正在開(kāi)發(fā)能夠感知用戶(hù)當前情緒的智能手機技術(shù),谷歌眼鏡InSight新技術(shù)使人能夠通過(guò)服裝進(jìn)行識別。
  此外,還有許多與感知相關(guān)的技術(shù)創(chuàng )新讓我們精神煥發(fā):例如,牙科傳感器實(shí)時(shí)監測口腔活動(dòng)和飲食,嬰兒可穿戴設備可以使用大數據撫養嬰兒,英特爾正在開(kāi)發(fā)可以跟蹤眼睛和讀取情緒的3D筆記本電腦相機,日本公司正在開(kāi)發(fā)可以監測用戶(hù)心率的新型紡織材料, 該行業(yè)正試圖將生物識別技術(shù)引入支付領(lǐng)域。
  事實(shí)上,這個(gè)過(guò)程
  這些感知被逐漸捕捉,就是世界被數據化的過(guò)程,一旦世界完全數據化,那么世界的本質(zhì)就是信息。
  俗話(huà)說(shuō):“人類(lèi)過(guò)去延續文明,現在繼承信息。"
  大數據的實(shí)踐
  互聯(lián)網(wǎng)大數據
  因特網(wǎng)上的數據每年增長(cháng)50%,每?jì)赡陮⒎环?,而目前世界?0%以上的數據是最近幾年才產(chǎn)生的。IDC預測,到2020年,全球將有35澤字節的數據?;ヂ?lián)網(wǎng)是大數據發(fā)展的前哨,隨著(zhù)WEB 2.0時(shí)代的發(fā)展,人們似乎習慣于通過(guò)網(wǎng)絡(luò )將自己的生活數字化,方便分享、記錄和回憶。
  互聯(lián)網(wǎng)上的大數據很難明確界定分類(lèi)邊界,我們先來(lái)看看BAT的大數據:
  在信息技術(shù)較為發(fā)達的美國,除了谷歌、Facebook等知名公司外,涌現出許多大數據公司,專(zhuān)門(mén)從事數據產(chǎn)品,如:
  Metamarkets:這家公司分析Twitter,支付,簽到和一些與互聯(lián)網(wǎng)相關(guān)的問(wèn)題,為客戶(hù)提供出色的數據分析支持。
  Tableau:他們的重點(diǎn)是可視化大量數據。Tableau 提供了一種為數字媒體呈現數據的新方法。他們提供了一個(gè)免費工具,允許任何沒(méi)有編程背景的人創(chuàng )建特定于數據的圖表。該軟件還會(huì )分析數據并提供有價(jià)值的建議。
  ParAccel:他們向美國執法機構提供數據分析,例如跟蹤15,000名有犯罪記錄的人,為執法機構提供信息豐富的犯罪預測。他們是罪的先知。
  QlikTech:Qlikview是QlikTech的一個(gè)部門(mén),是商業(yè)智能領(lǐng)域的自主服務(wù)工具,可以應用于科學(xué)研究和藝術(shù)等領(lǐng)域。為了幫助開(kāi)發(fā)人員分析這些數據,QlikTech 提供了用于可視化原創(chuàng )
數據的工具等。
  好數據
 ?。篏oodData希望幫助客戶(hù)從數據中挖掘財富。該初創(chuàng )公司面向業(yè)務(wù)用戶(hù)和IT高管,提供數據存儲,性能報告,數據分析等工具。TellApart
 ?。篢ellApart與電子商務(wù)公司合作,分析用戶(hù)瀏覽行為等數據,通過(guò)定位潛在買(mǎi)家來(lái)增加收入。DataSift
 ?。篋ataSift采集
和分析社交媒體上的數據,幫助品牌掌握突發(fā)新聞?wù)擖c(diǎn)并制定有針對性的營(yíng)銷(xiāo)計劃。該公司還與Twitter建立了合作伙伴關(guān)系,使其成為業(yè)內為數不多的可以分析早期推文的初創(chuàng )公司之一。
  Datahero:公司的目標是讓復雜的數據更簡(jiǎn)單、更清晰,讓普通人更容易理解和想象。
  例子很多,這里簡(jiǎn)單總結一下,互聯(lián)網(wǎng)上大數據的典型代表有:
  用戶(hù)行為數據(精準廣告、內容推薦、行為習慣與偏好分析、產(chǎn)品優(yōu)化等)用戶(hù)消費數據(精準營(yíng)銷(xiāo)、信用記錄分析、活動(dòng)推廣、財富管理等)用戶(hù)
  地理位置數據(O2O促銷(xiāo)、商家推薦、交友推薦等)互聯(lián)網(wǎng)金融數據(P2P、小額貸款、支付、信貸、供應鏈金融等)用戶(hù)社交和其他UGC數據(趨勢分析,流行元素分析,流行度分析,輿情監測分析,社會(huì )問(wèn)題分析等)。
  面向政府的大數據
  最近,
  奧巴馬政府宣布投資2億美元,推動(dòng)大數據相關(guān)產(chǎn)業(yè)發(fā)展,將“大數據戰略”提升為國家意志。奧巴馬政府將數據定義為“未來(lái)的新石油”,并表示一個(gè)國家擁有數據的規模、活動(dòng)、解釋和使用的能力將成為綜合國力的重要組成部分,未來(lái),數據的擁有和控制甚至將成為國家除土地之外的另一項核心資產(chǎn), ??樟α?。
  在我國,所有政府部門(mén)都有構成社會(huì )基礎的原創(chuàng )
數據,如氣象數據、財務(wù)數據、信用數據、電力數據、燃氣數據、自來(lái)水數據、道路交通數據、客運數據、安全刑事案件數據、住房數據、海關(guān)數據、出入境數據、旅游數據、醫療數據、教育數據、環(huán)保數據等。這些數據在每個(gè)政府部門(mén)內似乎是單一和靜態(tài)的。但是,如果政府能夠關(guān)聯(lián)這些數據,并對這些數據進(jìn)行有效的相關(guān)性分析和統一管理,這些數據必將重生,其價(jià)值不可估量。
  具體來(lái)說(shuō),城市現在正朝著(zhù)智能化、智慧智慧化、智慧化城市邁進(jìn),比如智能電網(wǎng)、智慧交通、智慧醫療、智慧環(huán)保、智慧城市,這些都依賴(lài)于大數據,可以說(shuō)大數據是智慧的核心能量。從我國整體投資規模來(lái)看,到2012年底,全國城市數量將開(kāi)始建設智慧城市,通信網(wǎng)絡(luò )、數據平臺等基礎設施建設投資規模接近5000億元?!笆濉逼陂g,智慧城市建設帶動(dòng)的設備投資規模將達到1萬(wàn)億元。大數據為智慧城市的所有領(lǐng)域提供決策支持。在城市規劃方面,通過(guò)挖掘城市地理、氣象等自然信息和經(jīng)濟、社會(huì )、文化、人口等人文社會(huì )信息,為城市規劃提供決策,增強城市管理服務(wù)的科學(xué)性和前瞻性。在交通管理方面,通過(guò)對道路交通信息的實(shí)時(shí)挖掘,可以有效緩解交通擁堵,快速應對突發(fā)事件,為城市交通良性運行提供科學(xué)決策依據。在輿情監測方面,通過(guò)網(wǎng)絡(luò )關(guān)鍵詞搜索和語(yǔ)義智能分析,可以提高輿情分析的及時(shí)性和全面性,全面掌握社會(huì )狀況和輿情,提高公共服務(wù)能力,應對互聯(lián)網(wǎng)突發(fā)公共事件,打擊違法犯罪。在安防災害領(lǐng)域,通過(guò)大數據挖掘,及時(shí)發(fā)現人為或自然災害和恐怖事件,提高應急處置能力和安全防范能力。
  此外,作為國家的管理者,政府應該有勇氣逐步將手中的數據開(kāi)放給更有能力的組織或個(gè)人進(jìn)行分析和利用,以加速造福人類(lèi)。比如美國政府建了一個(gè)網(wǎng)站,這是奧巴馬總統任期內的重要一步:要求政府透明,核心是公開(kāi)政府機構的數據。到目前為止,已經(jīng)開(kāi)放了91054個(gè)數據集;349個(gè)公民開(kāi)發(fā)的應用程序;137個(gè)移動(dòng)應用程序;175個(gè)機構和子機構;87個(gè)畫(huà)廊;295個(gè)政府API。
  面向企業(yè)的大數據
  企業(yè)的CXO最關(guān)心的是報告曲線(xiàn)背后能有什么樣的信息,他應該做出什么樣的決策,其實(shí)這一切都需要數據的傳遞和支撐。在理想的世界中,大數據是一個(gè)巨大的杠桿,可以改變公司的影響力,區分競爭對手,省錢(qián),增加利潤,取悅買(mǎi)家,獎勵忠誠用戶(hù),將潛在客戶(hù)轉化為客戶(hù),增加吸引力,擊敗競爭對手,擴大用戶(hù)群,創(chuàng )造市場(chǎng)。
  那么,哪些傳統企業(yè)最需要大數據服務(wù)呢?我們舉幾個(gè)例子:1)向大量消費者提供產(chǎn)品或服務(wù)的企業(yè)(精準營(yíng)銷(xiāo));2)做中長(cháng)尾企業(yè)(服務(wù)轉型)的小而美典范;3)在互聯(lián)網(wǎng)(生死攸關(guān))的壓力下必須轉型的傳統企業(yè)。
  對于企業(yè)的大數據,
  還有一個(gè)預測:隨著(zhù)數據逐漸成為企業(yè)的資產(chǎn),數據產(chǎn)業(yè)將發(fā)展到傳統企業(yè)的供應鏈模式,最終形成“數據供應鏈”。特別是,有兩件事是顯而易見(jiàn)的:1)外部數據比內部數據越來(lái)越重要。在互聯(lián)互通的互聯(lián)網(wǎng)時(shí)代,單個(gè)企業(yè)的內部數據與整個(gè)互聯(lián)網(wǎng)數據相比只是滄海一粟;2)能夠提供數據供應、數據集成處理、數據應用等多鏈路服務(wù)的企業(yè)將具有明顯的綜合競爭優(yōu)勢。
  對于提供大數據服務(wù)的公司來(lái)說(shuō),他們正在等待合作的機會(huì ),正如微軟史密斯所說(shuō):“給我一些數據,我可以做出一些改變。如果你把所有的數據都給我,我就能拯救世界。"
  然而,一直做企業(yè)服務(wù)的巨頭們不會(huì )有優(yōu)勢,他們不得不眼睜睜地看著(zhù)新興互聯(lián)網(wǎng)公司加入戰斗,開(kāi)啟殘酷的競爭模式。為什么會(huì )這樣?從IT行業(yè)發(fā)展來(lái)看,第一代IT巨頭大多是ToB,如IBM、微軟、甲骨文、SAP、惠普等傳統IT企業(yè);第二代IT巨頭大多是ToC,如雅虎、谷歌、亞馬遜、Facebook等互聯(lián)網(wǎng)公司。在大數據到來(lái)之前,這兩類(lèi)公司基本互不逆河;但在當前大數據時(shí)代,這兩類(lèi)公司已經(jīng)開(kāi)始直接競爭。例如,亞馬遜已經(jīng)開(kāi)始提供基于云的數據倉庫服務(wù),直接搶占了IBM和甲骨文的市場(chǎng)。這種現象出現的本質(zhì)原因是:在互聯(lián)網(wǎng)巨頭的推動(dòng)下,傳統IT巨頭的客戶(hù)普遍開(kāi)始從事電子商務(wù)業(yè)務(wù),而正是因為客戶(hù)進(jìn)入了互聯(lián)網(wǎng),所以傳統IT巨頭才被不情愿地拖入互聯(lián)網(wǎng)領(lǐng)域。如果他們不進(jìn)入互聯(lián)網(wǎng),他們的業(yè)務(wù)就會(huì )萎縮。進(jìn)入互聯(lián)網(wǎng)后,必須將云技術(shù)、大數據等互聯(lián)網(wǎng)最具優(yōu)勢的技術(shù)打包到自己的產(chǎn)品中,然后提供給企業(yè)。
  例如,IBM在過(guò)去十年中已經(jīng)放棄了PC,并成功轉向軟件和服務(wù),這一次他們將遠離服務(wù)和咨詢(xún),更多地關(guān)注大數據分析軟件帶來(lái)的新業(yè)務(wù)增長(cháng)。IBM首席執行官Rometty Romet認為,“數據將成為決定所有行業(yè)成敗的根本因素,最終數據將成為人類(lèi)至關(guān)重要的自然資源。IBM積極提出“大數據平臺”架構。該平臺的四個(gè)核心功能包括Hadoop,流計算,數據倉庫以及信息集成和治理。
  IBM 大數據
  另一家需要通過(guò)云和大數據戰略進(jìn)行恢復的巨頭惠普也推出了自己的產(chǎn)品:HAVEn,這是一種可以自由擴展和擴展的大數據解決方案。該解決方案包括四種技術(shù):HP Autonomy、HP Vertica、HP ArcSight 和 HP Operations Management。它還支持Hadoop等通用技術(shù)。HAVEn不是一個(gè)軟件平臺,而是一個(gè)生態(tài)系統。四大組件滿(mǎn)足不同應用場(chǎng)景的需求,Autonomy是解決音視頻識別的重要解決方案;Vertica 的解決方案,用于解決數據處理的速度和效率問(wèn)題;ArcSight解決了機器的記錄信息處理,幫助企業(yè)獲得更高級別的安全管理;運營(yíng)管理不僅涉及外部數據的處理,還涉及IT基礎架構生成的數據。
  個(gè)人大數據
  個(gè)人大數據的概念很少被提及,簡(jiǎn)單來(lái)說(shuō),在有效采集
了與個(gè)人相關(guān)的各種有價(jià)值的數據信息后,可以得到本人的授權,提供給第三方進(jìn)行處理和使用,獲得第三方提供的數據服務(wù)。
  用一個(gè)例子來(lái)說(shuō)明會(huì )更清楚:
  未來(lái),每個(gè)用戶(hù)都可以在互聯(lián)網(wǎng)上注冊一個(gè)個(gè)人數據中心來(lái)存儲個(gè)人大數據信息。用戶(hù)可以確定可以采集
哪些個(gè)人數據,并通過(guò)可穿戴設備或植入芯片等感知技術(shù)采集
和捕獲個(gè)人大數據,如牙科監測數據、心率數據、體溫數據、視覺(jué)數據、記憶能力、地理位置信息、社交關(guān)系數據、運動(dòng)數據、飲食數據、購物數據等。用戶(hù)可以將牙科監測數據授權給XX牙科診所使用,他們可以監控和使用這些數據,為用戶(hù)制定有效的牙齒預防和保養計劃;也可以授權將個(gè)人的運動(dòng)數據提供給體育和健身機構,該機構將監測其身體運動(dòng)功能,并有針對性地制定和調整其個(gè)人運動(dòng)計劃;您還可以將您的個(gè)人消費數據委托給金融機構,他們可以幫助您制定合理的財務(wù)計劃并預測收益。當然,其中一些個(gè)人數據可以提供給國家相關(guān)部門(mén)進(jìn)行實(shí)時(shí)監控,而無(wú)需個(gè)人授權,例如犯罪預防和監測中心,它可以實(shí)時(shí)監控該地區每個(gè)人的情緒和心理狀態(tài),以防止自殺和犯罪。
  以個(gè)人為中心的大數據具有一些特征:數據僅
  保留在個(gè)人中心,其他第三方機構僅授權使用(數據有一定的使用期限),使用后必須接受立即銷(xiāo)毀的監督。個(gè)人數據的采集
應明確分類(lèi),其他類(lèi)型的數據由用戶(hù)自己采集
,但國家立法明確要求監控的數據除外。數據的使用僅由用戶(hù)授權,數據中心可以幫助監控個(gè)人數據的整個(gè)生命周期。
  前景太好了,也許個(gè)人數據中心的實(shí)現會(huì )
  在遙遠的地方,也許這不是解決個(gè)人數據隱私的最好方法,也許行業(yè)對大數據的無(wú)限渴望會(huì )阻止數據個(gè)人中心的實(shí)現,但隨著(zhù)數據越來(lái)越多,在缺乏監管之后,必然會(huì )出現一場(chǎng)激烈的博弈:數據重要還是隱私重要;無(wú)論是以業(yè)務(wù)為中心還是以個(gè)人為中心。
  結束
  版權聲明:轉載文章來(lái)源于公眾網(wǎng)絡(luò ),僅供學(xué)習使用,不會(huì )用于任何商業(yè)目的,如來(lái)源錯誤或侵犯原作者權益,請聯(lián)系我們進(jìn)行刪除或授權,聯(lián)系郵箱:。請注明轉載大數據公眾號文章的原創(chuàng )
鏈接和作者,否則產(chǎn)生的版權糾紛與大數據無(wú)關(guān)。
  解讀:什么是原創(chuàng )文章?原創(chuàng )文章與偽原創(chuàng )文章區別?皆知傳媒為您解答?
  什么是原創(chuàng )文章?原創(chuàng )文章和seo偽原創(chuàng )有什么區別?接下來(lái),知乎傳媒將為您詳細解讀。說(shuō)白了,原創(chuàng )文章就是從頭到尾所有的內容都是用自己的話(huà)來(lái)表達的。偽原創(chuàng )就是文章的開(kāi)頭和結尾都是自己寫(xiě)的。,其余內容是摘錄別人在網(wǎng)上的文章修改的,稍微修改一下別人的內容,冒充自己寫(xiě)的。下面說(shuō)說(shuō)原創(chuàng )文章和偽原創(chuàng )文章的區別。
  
  原創(chuàng )文章:未被搜索引擎收錄的文章。它利用谷歌通過(guò)翻墻軟件查找英文資料,然后翻譯成中文。方法是翻簡(jiǎn)的方法,通過(guò)Kimo搜索引擎找到和你網(wǎng)站相關(guān)的文章,用網(wǎng)頁(yè)編輯器對內容進(jìn)行格式化,然后創(chuàng )建一個(gè)word文檔選擇里面的所有內容,通過(guò)審核給翻簡(jiǎn)。通過(guò)圖像識別創(chuàng )作原創(chuàng )文章,需要高清相機或手機、dopdf-7虛擬打印機、rj_nd1854圖像識別軟件。用word打開(kāi)你準備好的圖片文件,用你安裝的虛擬打印機的pdf格式打印出來(lái),放在合適的位置。使用圖像識別軟件打開(kāi)此pdf文件并選擇一個(gè)區域進(jìn)行識別。
  偽原創(chuàng ):一般來(lái)說(shuō),偽原創(chuàng )占網(wǎng)站的70%左右。就是對原創(chuàng )文章進(jìn)行處理,讓文章以為是自己的。修改一篇文章的標題,先把這個(gè)標題放到百度的搜索框里,看這個(gè)標題出現頻率高不高,再看這個(gè)標題下的搜索結果是不是全部都是紅色的。要修改的標題必須收錄
關(guān)鍵詞。文章的第一段最好自己寫(xiě),第一段在文章的關(guān)鍵詞加上錨文本。文章中間的段落需要自己寫(xiě)或修改,需要文章的關(guān)鍵詞,文章的結尾需要自己寫(xiě),有關(guān)鍵詞。這種偽原創(chuàng )文章至少要經(jīng)過(guò)80%的工具檢測才能發(fā)表。它可以用作更新站點(diǎn)內容的方法,并與原創(chuàng )
文章結合使用。
  
  站外平臺發(fā)布可以使用偽原創(chuàng )文章,但是要注意站內文章不要重復,那么站外怎么發(fā)呢。你可以天天用這個(gè)偽原創(chuàng )seo的工具進(jìn)行批量站外發(fā)布,為自己的網(wǎng)站引入流量。網(wǎng)站的內容怎么寫(xiě),很容易引起網(wǎng)友的興趣。第一種形式是軟文。簡(jiǎn)單來(lái)說(shuō),軟文就是廣告。這種軟件通常隱藏在故事情節中。廣告自然地穿插在劇情中間。第二種是新聞文章。這類(lèi)文章具有權威性,比較真實(shí)可靠。第三種是知識分享文章的內容,很容易引起客戶(hù)的共鳴,啟發(fā)客戶(hù)。第四類(lèi)是有爭議的文章內容。

解決方案:使用Flume+Kafka+SparkStreaming進(jìn)行實(shí)時(shí)日志分析

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 253 次瀏覽 ? 2022-11-17 09:44 ? 來(lái)自相關(guān)話(huà)題

  解決方案:使用Flume+Kafka+SparkStreaming進(jìn)行實(shí)時(shí)日志分析
  每個(gè)公司都想進(jìn)行數據分析或數據挖掘。采集日志和 ETL 是第一步。今天講一下如何實(shí)時(shí)采集日志(準實(shí)時(shí),每分鐘分析一次),處理日志,存儲處理后的記錄。保存在Hive中,附上完整的實(shí)戰代碼
  一、總體結構
  想一想,正常情況下我們是如何采集和分析日志的呢?
  首先,業(yè)務(wù)日志會(huì )通過(guò)Nginx(或者其他方式,我們使用Nginx來(lái)寫(xiě)日志)每分鐘寫(xiě)入一次磁盤(pán)?,F在如果我們要使用Spark來(lái)分析日志,我們需要先將磁盤(pán)中的文件上傳到HDFS。然后Spark對其進(jìn)行處理,最后存儲到Hive表中,如圖:
  我們之前使用這種方法每天分析一次日志,但是這樣有幾個(gè)缺點(diǎn):
  首先,我們的日志通過(guò)Nginx每分鐘保存為一個(gè)文件,所以一天的文件很多,不利于后續的分析任務(wù),所以我們要先合并一天所有的日志文件
  合并后需要將文件從磁盤(pán)傳輸到hdfs,但是我們的日志服務(wù)器不在hadoop集群中,所以沒(méi)有辦法直接傳輸到hdfs,需要先將文件從日志服務(wù)器傳輸到Hadoop集群所在服務(wù)器,然后再上傳到Hdfs
  最后,也是最重要的一點(diǎn),延遲一天的數據分析已經(jīng)不能滿(mǎn)足我們新的業(yè)務(wù)需求。滯后時(shí)間最好控制在一小時(shí)以?xún)?br />   可以看出,我們之前采集分析日志的方法比較原創(chuàng ),比較耗時(shí)。大量時(shí)間浪費在網(wǎng)絡(luò )傳輸上。如果日志量很大,有可能會(huì )丟失數據,所以我們在此基礎上進(jìn)行了改進(jìn)。建筑學(xué):
  整個(gè)過(guò)程就是Flume會(huì )實(shí)時(shí)監控寫(xiě)入日志的磁盤(pán)。只要有新的日志寫(xiě)入,Flume就會(huì )將日志以消息的形式傳遞給Kafka,然后Spark Streaming會(huì )實(shí)時(shí)消費消息傳遞給Hive。
  那么Flume是什么,它為什么能監控一個(gè)磁盤(pán)文件呢?總之,Flume是一個(gè)開(kāi)源的采集、聚合、移動(dòng)大量日志文件的框架,所以非常適合這種實(shí)時(shí)采集和投遞日志的場(chǎng)景
  Kafka 是一個(gè)消息系統。Flume采集的日志可以移動(dòng)到Kafka消息隊列中,然后可以多地消費,保證不丟數據。
  通過(guò)這種架構,采集到的日志可以被Flume發(fā)現并及時(shí)發(fā)送給Kafka。通過(guò)Kafka,我們可以在各個(gè)地方使用日志。同樣的日志可以存儲在Hdfs中,離線(xiàn)分析,實(shí)時(shí)計算。安全性可以得到保證,實(shí)時(shí)性要求基本可以滿(mǎn)足
  整個(gè)流程已經(jīng)清楚了,下面有突破,我們開(kāi)始實(shí)施整個(gè)系統
  2. 實(shí)戰 2.1 安裝Kafka
  下載并安裝 Kafka 并在此處發(fā)送一些基本命令:Kafka Installation and Introduction
  安裝后,創(chuàng )建一個(gè)名為 launcher_click 的新主題:
  bin/kafka-topics.sh --create --zookeeper hxf:2181,cfg:2181,jqs:2181,jxf:2181,sxtb:2181 --replication-factor 2 --partitions 2 --topic launcher_click
  看看這個(gè)話(huà)題:
  bin/kafka-topics.sh --describe --zookeeper hxf:2181,cfg:2181,jqs:2181,jxf:2181,sxtb:2181 --topic launcher_click
  2.2 安裝水槽
  1.下載解壓
  下載鏈接:
  注意進(jìn)入下載地址頁(yè)面,使用清華的地址,否則會(huì )很慢
  wget http://apache.fayea.com/flume/ ... ar.gz
tar -xvf apache-flume-1.7.0-bin.tar.gz
  2.修改配置文件
  進(jìn)入flume目錄,修改conf/flume-env.sh
  export JAVA_HOME=/data/install/jdk
export JAVA_OPTS="-Xms1000m -Xmx2000m -Dcom.sun.management.jmxremote"
  添加配置文件:conf/flume_launcherclick.conf
  # logser可以看做是flume服務(wù)的名稱(chēng),每個(gè)flume都由sources、channels和sinks三部分組成
# sources可以看做是數據源頭、channels是中間轉存的渠道、sinks是數據后面的去向
logser.sources = src_launcherclick
logser.sinks = kfk_launcherclick
logser.channels = ch_launcherclick
<p>
# source
# 源頭類(lèi)型是TAILDIR,就可以實(shí)時(shí)監控以追加形式寫(xiě)入文件的日志
logser.sources.src_launcherclick.type = TAILDIR
# positionFile記錄所有監控的文件信息
logser.sources.src_launcherclick.positionFile = /data/install/flume/position/launcherclick/taildir_position.json
# 監控的文件組
logser.sources.src_launcherclick.filegroups = f1
# 文件組包含的具體文件,也就是我們監控的文件
logser.sources.src_launcherclick.filegroups.f1 = /data/launcher/stat_app/.*
# interceptor
# 寫(xiě)kafka的topic即可
logser.sources.src_launcherclick.interceptors = i1 i2
logser.sources.src_launcherclick.interceptors.i1.type=static
logser.sources.src_launcherclick.interceptors.i1.key = type
logser.sources.src_launcherclick.interceptors.i1.value = launcher_click
logser.sources.src_launcherclick.interceptors.i2.type=static
logser.sources.src_launcherclick.interceptors.i2.key = topic
logser.sources.src_launcherclick.interceptors.i2.value = launcher_click
# channel
logser.channels.ch_launcherclick.type = memory
logser.channels.ch_launcherclick.capacity = 10000
logser.channels.ch_launcherclick.transactionCapacity = 1000
# kfk sink
# 指定sink類(lèi)型是Kafka,說(shuō)明日志最后要發(fā)送到Kafka
logser.sinks.kfk_launcherclick.type = org.apache.flume.sink.kafka.KafkaSink
# Kafka broker
logser.sinks.kfk_launcherclick.brokerList = 10.0.0.80:9092,10.0.0.140:9092
# Bind the source and sink to the channel
logser.sources.src_launcherclick.channels = ch_launcherclick
logser.sinks.kfk_launcherclick.channel = ch_launcherclick</p>
  3.開(kāi)始
  nohup bin/flume-ng agent --conf conf/ --conf-file conf/flume_launcherclick.conf --name logser -Dflume.root.logger=INFO,console >> logs/flume_launcherclick.log &
  這個(gè)時(shí)候Kafka和Flume都已經(jīng)啟動(dòng)了。從配置我們可以看出Flume的監控文件是/data/launcher/stat_app/.*,所以只要這個(gè)目錄下的文件內容增加,就會(huì )發(fā)送給kafka??梢宰约禾砑右恍?把測試日志放到這個(gè)目錄下的文件中,然后打開(kāi)一個(gè)Kafka Consumer,看看Kafka有沒(méi)有收到消息。這里我們將看到完成SparkStreaming后的測試結果
  2.3 Spark流式編程
  SparkStreaming是Spark用來(lái)處理實(shí)時(shí)流的,可以實(shí)時(shí)到秒級。我們這里不需要這樣的實(shí)時(shí)。日志分析程序每分鐘執行一次。主要代碼如下:
   def main(args: Array[String]) {
<p>
Logger.getLogger("org.apache.spark").setLevel(Level.WARN)
System.setProperty("spark.serializer", "org.apache.spark.serializer.KryoSerializer")
val sparkConf = new SparkConf().setAppName("LauncherStreaming")
//每60秒一個(gè)批次
val ssc = new StreamingContext(sparkConf, Seconds(60))
// 從Kafka中讀取數據
val kafkaStream = KafkaUtils.createStream(
ssc,
"hxf:2181,cfg:2181,jqs:2181,jxf:2181,sxtb:2181", // Kafka集群使用的zookeeper
"launcher-streaming", // 該消費者使用的group.id
Map[String, Int]("launcher_click" -> 0, "launcher_click" -> 1), // 日志在Kafka中的topic及其分區
StorageLevel.MEMORY_AND_DISK_SER).map(_._2) // 獲取日志內容
kafkaStream.foreachRDD((rdd: RDD[String], time: Time) => {
val result = rdd.map(log => parseLog(log)) // 分析處理原始日志
.filter(t => StringUtils.isNotBlank(t._1) && StringUtils.isNotBlank(t._2))
// 存入hdfs
result.saveAsHadoopFile(HDFS_DIR, classOf[String], classOf[String], classOf[LauncherMultipleTextOutputFormat[String, String]])
})
ssc.start()
// 等待實(shí)時(shí)流
ssc.awaitTermination()
}</p>
  內容有限,完整代碼訪(fǎng)問(wèn)我的github:
  然后打包上傳到master上運行:
  nohup /data/install/spark-2.0.0-bin-hadoop2.7/bin/spark-submit --master spark://hxf:7077 --executor-memory 1G --total-executor-cores 4 --class com.analysis.main.LauncherStreaming --jars /home/hadoop/jar/kafka-clients-0.10.0.0.jar,/home/hadoop/jar/metrics-core-2.2.0.jar,/home/hadoop/jar/zkclient-0.3.jar,/home/hadoop/jar/spark-streaming-kafka-0-8_2.11-2.0.0.jar,/home/hadoop/jar/kafka_2.11-0.8.2.1.jar /home/hadoop/jar/SparkLearning.jar >> /home/hadoop/logs/LauncherDM.log &
  然后開(kāi)始測試,將日志寫(xiě)入Flume監控目錄/data/launcher/stat_app/.*。原創(chuàng )日志內容類(lèi)似如下:
  118.120.102.3|1495608541.238|UEsDBBQACAgIACB2uEoAAAAAAAAAAAAAAAABAAAAMGWUbW7bMAyGb6NfnUFRFEWhJ+gBdgBZVjpjjp04brMAO*yY2DKa9Y+B1+DnQ1LCztoITgK4wPGHfNUhmKGUPOn3DyP*zdOxSWM3T33XXMqy9OP7xXTZiTC1xlL0HgMEi+BfHoooBEGKr3fPpYy5jMse4Xzupus4TKkrs4kZOhI51CgWWKxsUQBRPMDr1*w5Hcuc0LiUEFBwdXQxAARXHb3+QXlOfzya0uZWOGwlEwBDwLD5oJBVFHsEEPF2U0EUToyr8k4tg9v8AkRrIcKmxGsU2eqQIM45dKuKFICo5oveEqOjh2JAIITImyIJqBk3JS4qh7Wby*TroxnL9ZKHXrsyWeBQoMXaEgXUKh6mOQ1l7NLc*Hwz8aDpAtndLFJEetkVc6S9V*bg+RFiKMvnTv6ahuGUTmWexqEfi3Elezx0botJrCCQn5jfCzWaqaUOqNpFYO23ckYl5GOlx4rLQuUllh27SsjZyLQTUn4K+3uVczlOi+7uuMzTYLoibeIspk71DtKuJC+7T5qXPg9lLddaZs6+Lolnj7ANW0dBGKOn72m3cbQJI2Kq4*C6Xhz9E5Pzeeg*i2l1IAJtpReILNq6DY4peFjHeO5vffPZd2UyejEJ28Puo0sI*2*5ojvhfNcquWomFMVp02Pz++M6Nach3e6XR5wOlrdSg4T7RkgtQAuC6HYl2sc62i6dUq*om+HWjvdHAPSk8hYkegHraxC8PwPons73XZeozDfXmaRzzzaD2XI4fX0QX*8BUEsHCKeftc48AgAAmQQAAA==
  檢查HDFS對應目錄是否有內容:
  分析后存儲在HDFS中的日志內容如下:
  99000945863664;864698037273329|119.176.140.248|1495594615129|2017-05-24 10:56:55|xiaomi|redmi4x|com.jingdong.app.mall&0ae359b6&1495534579412&1;com.autonavi.minimap&279f562f&1495534597934,1495534616627&2;com.android.contacts&91586932&1495538267103,1495540527138,1495576834653,1495583404117,1495591231535&5
  SparkStreaming任務(wù)狀態(tài)如下:
  可以看出確實(shí)是每分鐘執行一次
  參考
  %E9%9B%86%E7%BE%A4%E5%8F%8A%E9%A1%B9%E7%9B%AE%E5%AE%9E%E6%88%98/
  解決方案:優(yōu)化手機端移動(dòng)端百度網(wǎng)站seo排名好的方式是什么?
  企業(yè)快速獲取百度移動(dòng)端SEO優(yōu)化排名主要有四種技巧,有需要的可以參考這些內容。
  1.百度移動(dòng)端優(yōu)化排名域名選擇
  無(wú)論是優(yōu)化移動(dòng)端網(wǎng)站還是PC端,網(wǎng)站的域名都很重要,域名的選擇要簡(jiǎn)潔明了。移動(dòng)端網(wǎng)站優(yōu)化選擇較短的域名,這樣會(huì )讓人更容易記憶,輸入簡(jiǎn)單,讓人的思想更中心化,便于搜索引擎抓取。
  
  2.排行優(yōu)化移動(dòng)端與PC適配轉換
  現在有很多seo移動(dòng)端網(wǎng)站做了響應式,可以實(shí)現seo百度移動(dòng)端和網(wǎng)站端的跳轉,避免二次建站,很方便,但是對于這種網(wǎng)站還需要做相應的導航跳轉鏈接,讓用戶(hù)在seo優(yōu)化后的手機端和電腦端來(lái)回切換,保證安全正常運行。&gt; 也有點(diǎn)幫助。
  3. 網(wǎng)站移動(dòng)優(yōu)化頁(yè)面簡(jiǎn)潔
  因為seo排名移動(dòng)端的網(wǎng)站受限于屏幕大小,所以移動(dòng)端優(yōu)化的網(wǎng)站移動(dòng)端頁(yè)面一定要更加簡(jiǎn)潔,能夠直接展示最重要的內容以吸引用戶(hù)瀏覽。同時(shí),百度移動(dòng)端排名網(wǎng)站簡(jiǎn)潔明了的內容也可以提高移動(dòng)端關(guān)鍵詞優(yōu)化網(wǎng)站的訪(fǎng)問(wèn)速度。
  
  4. 移動(dòng)關(guān)鍵詞 SEO優(yōu)化網(wǎng)站結構
  對于seo mobile網(wǎng)站,網(wǎng)站必須設置成樹(shù)狀結構,樹(shù)狀結構一般分為三層:首頁(yè),頻道,文章頁(yè)面,理想網(wǎng)站 結構要扁平化,從首頁(yè)到內容頁(yè)的層級盡量減少,這樣搜索引擎會(huì )比較容易處理。
  以上就是為大家總結的百度移動(dòng)端優(yōu)化排名技巧。以上移動(dòng)端網(wǎng)站排名優(yōu)化的內容相信大家都知道。優(yōu)化百度移動(dòng)端排名可以幫助企業(yè)獲得更多流量。促進(jìn)利益轉化,提升網(wǎng)站品牌形象。 查看全部

  解決方案:使用Flume+Kafka+SparkStreaming進(jìn)行實(shí)時(shí)日志分析
  每個(gè)公司都想進(jìn)行數據分析或數據挖掘。采集日志和 ETL 是第一步。今天講一下如何實(shí)時(shí)采集日志(準實(shí)時(shí),每分鐘分析一次),處理日志,存儲處理后的記錄。保存在Hive中,附上完整的實(shí)戰代碼
  一、總體結構
  想一想,正常情況下我們是如何采集和分析日志的呢?
  首先,業(yè)務(wù)日志會(huì )通過(guò)Nginx(或者其他方式,我們使用Nginx來(lái)寫(xiě)日志)每分鐘寫(xiě)入一次磁盤(pán)?,F在如果我們要使用Spark來(lái)分析日志,我們需要先將磁盤(pán)中的文件上傳到HDFS。然后Spark對其進(jìn)行處理,最后存儲到Hive表中,如圖:
  我們之前使用這種方法每天分析一次日志,但是這樣有幾個(gè)缺點(diǎn):
  首先,我們的日志通過(guò)Nginx每分鐘保存為一個(gè)文件,所以一天的文件很多,不利于后續的分析任務(wù),所以我們要先合并一天所有的日志文件
  合并后需要將文件從磁盤(pán)傳輸到hdfs,但是我們的日志服務(wù)器不在hadoop集群中,所以沒(méi)有辦法直接傳輸到hdfs,需要先將文件從日志服務(wù)器傳輸到Hadoop集群所在服務(wù)器,然后再上傳到Hdfs
  最后,也是最重要的一點(diǎn),延遲一天的數據分析已經(jīng)不能滿(mǎn)足我們新的業(yè)務(wù)需求。滯后時(shí)間最好控制在一小時(shí)以?xún)?br />   可以看出,我們之前采集分析日志的方法比較原創(chuàng ),比較耗時(shí)。大量時(shí)間浪費在網(wǎng)絡(luò )傳輸上。如果日志量很大,有可能會(huì )丟失數據,所以我們在此基礎上進(jìn)行了改進(jìn)。建筑學(xué):
  整個(gè)過(guò)程就是Flume會(huì )實(shí)時(shí)監控寫(xiě)入日志的磁盤(pán)。只要有新的日志寫(xiě)入,Flume就會(huì )將日志以消息的形式傳遞給Kafka,然后Spark Streaming會(huì )實(shí)時(shí)消費消息傳遞給Hive。
  那么Flume是什么,它為什么能監控一個(gè)磁盤(pán)文件呢?總之,Flume是一個(gè)開(kāi)源的采集、聚合、移動(dòng)大量日志文件的框架,所以非常適合這種實(shí)時(shí)采集和投遞日志的場(chǎng)景
  Kafka 是一個(gè)消息系統。Flume采集的日志可以移動(dòng)到Kafka消息隊列中,然后可以多地消費,保證不丟數據。
  通過(guò)這種架構,采集到的日志可以被Flume發(fā)現并及時(shí)發(fā)送給Kafka。通過(guò)Kafka,我們可以在各個(gè)地方使用日志。同樣的日志可以存儲在Hdfs中,離線(xiàn)分析,實(shí)時(shí)計算。安全性可以得到保證,實(shí)時(shí)性要求基本可以滿(mǎn)足
  整個(gè)流程已經(jīng)清楚了,下面有突破,我們開(kāi)始實(shí)施整個(gè)系統
  2. 實(shí)戰 2.1 安裝Kafka
  下載并安裝 Kafka 并在此處發(fā)送一些基本命令:Kafka Installation and Introduction
  安裝后,創(chuàng )建一個(gè)名為 launcher_click 的新主題:
  bin/kafka-topics.sh --create --zookeeper hxf:2181,cfg:2181,jqs:2181,jxf:2181,sxtb:2181 --replication-factor 2 --partitions 2 --topic launcher_click
  看看這個(gè)話(huà)題:
  bin/kafka-topics.sh --describe --zookeeper hxf:2181,cfg:2181,jqs:2181,jxf:2181,sxtb:2181 --topic launcher_click
  2.2 安裝水槽
  1.下載解壓
  下載鏈接:
  注意進(jìn)入下載地址頁(yè)面,使用清華的地址,否則會(huì )很慢
  wget http://apache.fayea.com/flume/ ... ar.gz
tar -xvf apache-flume-1.7.0-bin.tar.gz
  2.修改配置文件
  進(jìn)入flume目錄,修改conf/flume-env.sh
  export JAVA_HOME=/data/install/jdk
export JAVA_OPTS="-Xms1000m -Xmx2000m -Dcom.sun.management.jmxremote"
  添加配置文件:conf/flume_launcherclick.conf
  # logser可以看做是flume服務(wù)的名稱(chēng),每個(gè)flume都由sources、channels和sinks三部分組成
# sources可以看做是數據源頭、channels是中間轉存的渠道、sinks是數據后面的去向
logser.sources = src_launcherclick
logser.sinks = kfk_launcherclick
logser.channels = ch_launcherclick
<p>
# source
# 源頭類(lèi)型是TAILDIR,就可以實(shí)時(shí)監控以追加形式寫(xiě)入文件的日志
logser.sources.src_launcherclick.type = TAILDIR
# positionFile記錄所有監控的文件信息
logser.sources.src_launcherclick.positionFile = /data/install/flume/position/launcherclick/taildir_position.json
# 監控的文件組
logser.sources.src_launcherclick.filegroups = f1
# 文件組包含的具體文件,也就是我們監控的文件
logser.sources.src_launcherclick.filegroups.f1 = /data/launcher/stat_app/.*
# interceptor
# 寫(xiě)kafka的topic即可
logser.sources.src_launcherclick.interceptors = i1 i2
logser.sources.src_launcherclick.interceptors.i1.type=static
logser.sources.src_launcherclick.interceptors.i1.key = type
logser.sources.src_launcherclick.interceptors.i1.value = launcher_click
logser.sources.src_launcherclick.interceptors.i2.type=static
logser.sources.src_launcherclick.interceptors.i2.key = topic
logser.sources.src_launcherclick.interceptors.i2.value = launcher_click
# channel
logser.channels.ch_launcherclick.type = memory
logser.channels.ch_launcherclick.capacity = 10000
logser.channels.ch_launcherclick.transactionCapacity = 1000
# kfk sink
# 指定sink類(lèi)型是Kafka,說(shuō)明日志最后要發(fā)送到Kafka
logser.sinks.kfk_launcherclick.type = org.apache.flume.sink.kafka.KafkaSink
# Kafka broker
logser.sinks.kfk_launcherclick.brokerList = 10.0.0.80:9092,10.0.0.140:9092
# Bind the source and sink to the channel
logser.sources.src_launcherclick.channels = ch_launcherclick
logser.sinks.kfk_launcherclick.channel = ch_launcherclick</p>
  3.開(kāi)始
  nohup bin/flume-ng agent --conf conf/ --conf-file conf/flume_launcherclick.conf --name logser -Dflume.root.logger=INFO,console >> logs/flume_launcherclick.log &
  這個(gè)時(shí)候Kafka和Flume都已經(jīng)啟動(dòng)了。從配置我們可以看出Flume的監控文件是/data/launcher/stat_app/.*,所以只要這個(gè)目錄下的文件內容增加,就會(huì )發(fā)送給kafka??梢宰约禾砑右恍?把測試日志放到這個(gè)目錄下的文件中,然后打開(kāi)一個(gè)Kafka Consumer,看看Kafka有沒(méi)有收到消息。這里我們將看到完成SparkStreaming后的測試結果
  2.3 Spark流式編程
  SparkStreaming是Spark用來(lái)處理實(shí)時(shí)流的,可以實(shí)時(shí)到秒級。我們這里不需要這樣的實(shí)時(shí)。日志分析程序每分鐘執行一次。主要代碼如下:
   def main(args: Array[String]) {
<p>
Logger.getLogger("org.apache.spark").setLevel(Level.WARN)
System.setProperty("spark.serializer", "org.apache.spark.serializer.KryoSerializer")
val sparkConf = new SparkConf().setAppName("LauncherStreaming")
//每60秒一個(gè)批次
val ssc = new StreamingContext(sparkConf, Seconds(60))
// 從Kafka中讀取數據
val kafkaStream = KafkaUtils.createStream(
ssc,
"hxf:2181,cfg:2181,jqs:2181,jxf:2181,sxtb:2181", // Kafka集群使用的zookeeper
"launcher-streaming", // 該消費者使用的group.id
Map[String, Int]("launcher_click" -> 0, "launcher_click" -> 1), // 日志在Kafka中的topic及其分區
StorageLevel.MEMORY_AND_DISK_SER).map(_._2) // 獲取日志內容
kafkaStream.foreachRDD((rdd: RDD[String], time: Time) => {
val result = rdd.map(log => parseLog(log)) // 分析處理原始日志
.filter(t => StringUtils.isNotBlank(t._1) && StringUtils.isNotBlank(t._2))
// 存入hdfs
result.saveAsHadoopFile(HDFS_DIR, classOf[String], classOf[String], classOf[LauncherMultipleTextOutputFormat[String, String]])
})
ssc.start()
// 等待實(shí)時(shí)流
ssc.awaitTermination()
}</p>
  內容有限,完整代碼訪(fǎng)問(wèn)我的github:
  然后打包上傳到master上運行:
  nohup /data/install/spark-2.0.0-bin-hadoop2.7/bin/spark-submit --master spark://hxf:7077 --executor-memory 1G --total-executor-cores 4 --class com.analysis.main.LauncherStreaming --jars /home/hadoop/jar/kafka-clients-0.10.0.0.jar,/home/hadoop/jar/metrics-core-2.2.0.jar,/home/hadoop/jar/zkclient-0.3.jar,/home/hadoop/jar/spark-streaming-kafka-0-8_2.11-2.0.0.jar,/home/hadoop/jar/kafka_2.11-0.8.2.1.jar /home/hadoop/jar/SparkLearning.jar >> /home/hadoop/logs/LauncherDM.log &
  然后開(kāi)始測試,將日志寫(xiě)入Flume監控目錄/data/launcher/stat_app/.*。原創(chuàng )日志內容類(lèi)似如下:
  118.120.102.3|1495608541.238|UEsDBBQACAgIACB2uEoAAAAAAAAAAAAAAAABAAAAMGWUbW7bMAyGb6NfnUFRFEWhJ+gBdgBZVjpjjp04brMAO*yY2DKa9Y+B1+DnQ1LCztoITgK4wPGHfNUhmKGUPOn3DyP*zdOxSWM3T33XXMqy9OP7xXTZiTC1xlL0HgMEi+BfHoooBEGKr3fPpYy5jMse4Xzupus4TKkrs4kZOhI51CgWWKxsUQBRPMDr1*w5Hcuc0LiUEFBwdXQxAARXHb3+QXlOfzya0uZWOGwlEwBDwLD5oJBVFHsEEPF2U0EUToyr8k4tg9v8AkRrIcKmxGsU2eqQIM45dKuKFICo5oveEqOjh2JAIITImyIJqBk3JS4qh7Wby*TroxnL9ZKHXrsyWeBQoMXaEgXUKh6mOQ1l7NLc*Hwz8aDpAtndLFJEetkVc6S9V*bg+RFiKMvnTv6ahuGUTmWexqEfi3Elezx0botJrCCQn5jfCzWaqaUOqNpFYO23ckYl5GOlx4rLQuUllh27SsjZyLQTUn4K+3uVczlOi+7uuMzTYLoibeIspk71DtKuJC+7T5qXPg9lLddaZs6+Lolnj7ANW0dBGKOn72m3cbQJI2Kq4*C6Xhz9E5Pzeeg*i2l1IAJtpReILNq6DY4peFjHeO5vffPZd2UyejEJ28Puo0sI*2*5ojvhfNcquWomFMVp02Pz++M6Nach3e6XR5wOlrdSg4T7RkgtQAuC6HYl2sc62i6dUq*om+HWjvdHAPSk8hYkegHraxC8PwPons73XZeozDfXmaRzzzaD2XI4fX0QX*8BUEsHCKeftc48AgAAmQQAAA==
  檢查HDFS對應目錄是否有內容:
  分析后存儲在HDFS中的日志內容如下:
  99000945863664;864698037273329|119.176.140.248|1495594615129|2017-05-24 10:56:55|xiaomi|redmi4x|com.jingdong.app.mall&0ae359b6&1495534579412&1;com.autonavi.minimap&279f562f&1495534597934,1495534616627&2;com.android.contacts&91586932&1495538267103,1495540527138,1495576834653,1495583404117,1495591231535&5
  SparkStreaming任務(wù)狀態(tài)如下:
  可以看出確實(shí)是每分鐘執行一次
  參考
  %E9%9B%86%E7%BE%A4%E5%8F%8A%E9%A1%B9%E7%9B%AE%E5%AE%9E%E6%88%98/
  解決方案:優(yōu)化手機端移動(dòng)端百度網(wǎng)站seo排名好的方式是什么?
  企業(yè)快速獲取百度移動(dòng)端SEO優(yōu)化排名主要有四種技巧,有需要的可以參考這些內容。
  1.百度移動(dòng)端優(yōu)化排名域名選擇
  無(wú)論是優(yōu)化移動(dòng)端網(wǎng)站還是PC端,網(wǎng)站的域名都很重要,域名的選擇要簡(jiǎn)潔明了。移動(dòng)端網(wǎng)站優(yōu)化選擇較短的域名,這樣會(huì )讓人更容易記憶,輸入簡(jiǎn)單,讓人的思想更中心化,便于搜索引擎抓取。
  
  2.排行優(yōu)化移動(dòng)端與PC適配轉換
  現在有很多seo移動(dòng)端網(wǎng)站做了響應式,可以實(shí)現seo百度移動(dòng)端和網(wǎng)站端的跳轉,避免二次建站,很方便,但是對于這種網(wǎng)站還需要做相應的導航跳轉鏈接,讓用戶(hù)在seo優(yōu)化后的手機端和電腦端來(lái)回切換,保證安全正常運行。&gt; 也有點(diǎn)幫助。
  3. 網(wǎng)站移動(dòng)優(yōu)化頁(yè)面簡(jiǎn)潔
  因為seo排名移動(dòng)端的網(wǎng)站受限于屏幕大小,所以移動(dòng)端優(yōu)化的網(wǎng)站移動(dòng)端頁(yè)面一定要更加簡(jiǎn)潔,能夠直接展示最重要的內容以吸引用戶(hù)瀏覽。同時(shí),百度移動(dòng)端排名網(wǎng)站簡(jiǎn)潔明了的內容也可以提高移動(dòng)端關(guān)鍵詞優(yōu)化網(wǎng)站的訪(fǎng)問(wèn)速度。
  
  4. 移動(dòng)關(guān)鍵詞 SEO優(yōu)化網(wǎng)站結構
  對于seo mobile網(wǎng)站,網(wǎng)站必須設置成樹(shù)狀結構,樹(shù)狀結構一般分為三層:首頁(yè),頻道,文章頁(yè)面,理想網(wǎng)站 結構要扁平化,從首頁(yè)到內容頁(yè)的層級盡量減少,這樣搜索引擎會(huì )比較容易處理。
  以上就是為大家總結的百度移動(dòng)端優(yōu)化排名技巧。以上移動(dòng)端網(wǎng)站排名優(yōu)化的內容相信大家都知道。優(yōu)化百度移動(dòng)端排名可以幫助企業(yè)獲得更多流量。促進(jìn)利益轉化,提升網(wǎng)站品牌形象。

直觀(guān):如何從一個(gè)像素點(diǎn)采集數據中獲取像素值?

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 129 次瀏覽 ? 2022-11-14 11:18 ? 來(lái)自相關(guān)話(huà)題

  直觀(guān):如何從一個(gè)像素點(diǎn)采集數據中獲取像素值?
  文章實(shí)時(shí)采集到的數據與圖片采集原理相似,但注意一個(gè)關(guān)鍵點(diǎn),現在pc上不是不可以也不是沒(méi)有,而是你只能采集一個(gè)像素的圖片。今天大雪就教教大家,如何從一個(gè)像素點(diǎn)采集數據。什么意思呢?就是說(shuō)你無(wú)法獲取一個(gè)一維像素點(diǎn),但是可以獲取一個(gè)一維數組(普通的任何語(yǔ)言,c++,java,javascript)。首先來(lái)看下數組的結構,表示一個(gè)數組,表示你提供的像素點(diǎn)數據,一共有五組數據,縱坐標表示點(diǎn)的數量,橫坐標表示數據的數量,每一組值對應一個(gè)值,為什么是有點(diǎn),而不是一個(gè)坐標呢?因為一個(gè)坐標才能取整數,一個(gè)像素點(diǎn)連續取反取整數,那是不是就沒(méi)有任何意義了呢?如果能取出一組固定的值,那就完全沒(méi)有區別了。
  
  這里需要記住一個(gè)點(diǎn),數組里每一個(gè)值代表著(zhù)坐標。所以怎么能獲取一個(gè)固定的坐標,那就只能讓數組包含個(gè)整數,也就是采樣??偨Y起來(lái)就是從像素值的五個(gè)位置取取整數,然后這5個(gè)值組成一個(gè)數組,從這個(gè)數組再取值,然后用這個(gè)值去取整數,組成一個(gè)新的像素。我們用圖來(lái)理解一下,這就像一張大的地圖,你在一個(gè)位置走一次,那就把整張地圖看成一個(gè)點(diǎn),但是我們總是走動(dòng),我們就把一張地圖分成了許多條線(xiàn),就像是遍歷遍歷,分別沿著(zhù)一條路走一次,一條線(xiàn)能走動(dòng)多少個(gè)點(diǎn)就把這些點(diǎn)表示出來(lái)。
  那么總共走了多少步,我們就知道地圖的大致情況了。那么我們再想一下,如果我們在一個(gè)點(diǎn)附近也定一條線(xiàn),在這條線(xiàn)上取一個(gè)值,然后總共取多少條線(xiàn),然后他們就組成了一條線(xiàn)。這樣既然是遍歷遍歷,那就可以不停循環(huán),但是現在我們考慮中間位置。我們在二維空間或者三維空間內,我們可以不斷的遍歷,直到遍歷所有位置,那么這個(gè)數組的每一個(gè)元素對應一個(gè)位置,這條線(xiàn),那么代表了多少條對應位置的路徑就成了一個(gè)點(diǎn)的路徑代表的數據。
  
  那么位置是一個(gè)二維數組,有的像素點(diǎn)包含了多條線(xiàn),那么這個(gè)點(diǎn)的方向就是經(jīng)過(guò)多少條線(xiàn)。至于為什么前面也講過(guò),一個(gè)像素點(diǎn)連續取反取整數,那么這么多個(gè)取整數組成了一個(gè)點(diǎn)的數組,然后用這個(gè)點(diǎn)去取值。其實(shí)數組存取原理就是一個(gè)鍵值對,這個(gè)是用鍵盤(pán)輸入數字組成的數組,比如說(shuō)我們輸入十億個(gè)字符,我們能構建出兩個(gè)數組。不過(guò)如果我們的數量增加,那么這兩個(gè)數組的鍵值對也要擴展到十億,也就是多個(gè)操作。
  所以一個(gè)像素點(diǎn)不用多選,一組像素點(diǎn)最好是存一個(gè),當然這只是理論上的可能,因為操作越多,判斷時(shí)間越長(cháng)。整體思路就是,你在采集數據的時(shí)候,先把每一組用一個(gè)鍵值對記錄下來(lái),然后不斷遍歷直到每個(gè)元素都獲取到,得到最后一組元素,最后把這個(gè)數組里的數據輸出。 查看全部

  直觀(guān):如何從一個(gè)像素點(diǎn)采集數據中獲取像素值?
  文章實(shí)時(shí)采集到的數據與圖片采集原理相似,但注意一個(gè)關(guān)鍵點(diǎn),現在pc上不是不可以也不是沒(méi)有,而是你只能采集一個(gè)像素的圖片。今天大雪就教教大家,如何從一個(gè)像素點(diǎn)采集數據。什么意思呢?就是說(shuō)你無(wú)法獲取一個(gè)一維像素點(diǎn),但是可以獲取一個(gè)一維數組(普通的任何語(yǔ)言,c++,java,javascript)。首先來(lái)看下數組的結構,表示一個(gè)數組,表示你提供的像素點(diǎn)數據,一共有五組數據,縱坐標表示點(diǎn)的數量,橫坐標表示數據的數量,每一組值對應一個(gè)值,為什么是有點(diǎn),而不是一個(gè)坐標呢?因為一個(gè)坐標才能取整數,一個(gè)像素點(diǎn)連續取反取整數,那是不是就沒(méi)有任何意義了呢?如果能取出一組固定的值,那就完全沒(méi)有區別了。
  
  這里需要記住一個(gè)點(diǎn),數組里每一個(gè)值代表著(zhù)坐標。所以怎么能獲取一個(gè)固定的坐標,那就只能讓數組包含個(gè)整數,也就是采樣??偨Y起來(lái)就是從像素值的五個(gè)位置取取整數,然后這5個(gè)值組成一個(gè)數組,從這個(gè)數組再取值,然后用這個(gè)值去取整數,組成一個(gè)新的像素。我們用圖來(lái)理解一下,這就像一張大的地圖,你在一個(gè)位置走一次,那就把整張地圖看成一個(gè)點(diǎn),但是我們總是走動(dòng),我們就把一張地圖分成了許多條線(xiàn),就像是遍歷遍歷,分別沿著(zhù)一條路走一次,一條線(xiàn)能走動(dòng)多少個(gè)點(diǎn)就把這些點(diǎn)表示出來(lái)。
  那么總共走了多少步,我們就知道地圖的大致情況了。那么我們再想一下,如果我們在一個(gè)點(diǎn)附近也定一條線(xiàn),在這條線(xiàn)上取一個(gè)值,然后總共取多少條線(xiàn),然后他們就組成了一條線(xiàn)。這樣既然是遍歷遍歷,那就可以不停循環(huán),但是現在我們考慮中間位置。我們在二維空間或者三維空間內,我們可以不斷的遍歷,直到遍歷所有位置,那么這個(gè)數組的每一個(gè)元素對應一個(gè)位置,這條線(xiàn),那么代表了多少條對應位置的路徑就成了一個(gè)點(diǎn)的路徑代表的數據。
  
  那么位置是一個(gè)二維數組,有的像素點(diǎn)包含了多條線(xiàn),那么這個(gè)點(diǎn)的方向就是經(jīng)過(guò)多少條線(xiàn)。至于為什么前面也講過(guò),一個(gè)像素點(diǎn)連續取反取整數,那么這么多個(gè)取整數組成了一個(gè)點(diǎn)的數組,然后用這個(gè)點(diǎn)去取值。其實(shí)數組存取原理就是一個(gè)鍵值對,這個(gè)是用鍵盤(pán)輸入數字組成的數組,比如說(shuō)我們輸入十億個(gè)字符,我們能構建出兩個(gè)數組。不過(guò)如果我們的數量增加,那么這兩個(gè)數組的鍵值對也要擴展到十億,也就是多個(gè)操作。
  所以一個(gè)像素點(diǎn)不用多選,一組像素點(diǎn)最好是存一個(gè),當然這只是理論上的可能,因為操作越多,判斷時(shí)間越長(cháng)。整體思路就是,你在采集數據的時(shí)候,先把每一組用一個(gè)鍵值對記錄下來(lái),然后不斷遍歷直到每個(gè)元素都獲取到,得到最后一組元素,最后把這個(gè)數組里的數據輸出。

解決方案:博學(xué)谷-基于大數據的智慧學(xué)成項目課程

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 142 次瀏覽 ? 2022-11-10 12:26 ? 來(lái)自相關(guān)話(huà)題

  解決方案:博學(xué)谷-基于大數據的智慧學(xué)成項目課程
  博雪谷——基于大數據的智慧學(xué)習項目課程1
  課程介紹(A000474):
  智慧學(xué)習項目是在線(xiàn)教育業(yè)務(wù)大數據統計分析系統。采用企業(yè)級ETL標準化流程和數據倉庫建模思想,根據課程、用戶(hù)等不同維度進(jìn)行數據分析。采用Hadoop和Spark技術(shù)棧開(kāi)發(fā),為數據倉庫、ETL、離線(xiàn)和實(shí)時(shí)分析提供解決方案。
  課程目錄:
  博雪谷——基于大數據的智能學(xué)習項目課程二
  文件目錄:
  博雪谷——基于大數據的智慧學(xué)習項目課程,
  │ └─08. 第 8 階段智慧學(xué)習計劃,
  │ ├─01. 第一章智慧學(xué)習——項目介紹環(huán)境搭建,
  │ │ 01-項目介紹-學(xué)習目標&amp;項目背景及概述_mp4,
  │ │ 02-項目介紹-業(yè)務(wù)流程_mp4,
  │ │ 03-項目介紹-功能模塊_mp4,
  │ │ 04-項目介紹-技術(shù)架構_mp4,
  │ │ 05-環(huán)境建設-學(xué)習目標&amp;CDH組件介紹_mp4,
  │ │ 06-環(huán)境建設-鼎暉環(huán)境建設_mp4,
  │ │ 07-環(huán)境搭建-配置hosts_mp4,
  │ │ 08-環(huán)境建設-配置Maven_mp4,
  │ │ 09-環(huán)境搭建-IDEA環(huán)境配置_mp4,
  │ │ 10-環(huán)境建設-導入Scala基礎工程&amp;基礎工程介紹_mp4,
  │ │ 11-環(huán)境建設-wordcount代碼編寫(xiě)和idea代碼測試_mp4,
  │ │ 12-環(huán)境搭建-wordcount任務(wù)提交集群執行_mp4,
  │ │ 13-Zeppelin簡(jiǎn)介,Zeppelin調制的Spark程序_mp4,
  │ │ 14-Hue介紹,Hue操作hive和hdfs_mp4,
  │ │ 15-數據倉庫-學(xué)習目標,數據倉庫簡(jiǎn)介_(kāi)mp4,
  │ │ 16-數據倉庫-數據倉庫的特點(diǎn)_mp4,
  │ │ 17-數據倉庫-維度分析_mp4,
  │ │ 18-Data Warehouse-Data Warehouse Modeling_mp4,
  │ │ 19-數據倉庫-Hive創(chuàng )建數據倉庫_mp4,
  │ │
  │ ├─02. 第 2 章智慧學(xué)習 - 數據倉庫和 ETL,
  │ │ 01-ETL-學(xué)習目標_mp4,
  │ │ 02-ETL-ETL介紹_mp4,
  │ │ 03-ETL-課程訪(fǎng)問(wèn)需求分析-_mp4,
  │ │ 04-ETL-采集系統介紹_mp4,
  │ │ 05-ETL-采集系統構建_mp4,
  │ │ 06-ETL-采集系統測試采集課程訪(fǎng)問(wèn)_mp4,
  │ │ 07-ETL-NiFi介紹_mp4,
  │ │ 08-ETL-快速入門(mén)_mp4,
  │ │ 09-ETL-維度數據采集-維度介紹-_mp4,
  │ │ 10-ETL-維度數據采集-導入學(xué)城在線(xiàn)業(yè)務(wù)數據_mp4,
  │ │ 11-ETL-維數據采集-導入NiFi源碼并執行采集_mp4,
  │ │ 12-ETL-Dimensional Data采集-Notes-NiFi采集亂碼處理_mp4,
  │ │ 13-ETL-維度數據采集-區域維度原創(chuàng )文件上傳HDFS&amp;spark讀取file_mp4,
  │ │ 14-ETL-維度數據采集-區域維度原創(chuàng )文件數據和實(shí)體映射_mp4,
  │ │ 15-ETL-維度數據采集-區域維度字段關(guān)聯(lián)與區域維度數據storage_mp4,
  │ │ 16-ETL-維度數據采集-區域維度-注釋?zhuān)簑inutils configuration_mp4,
  │ │
  │ ├─03.Chapter 3 智慧學(xué)習-課程分析,
  │ │ ├─1. 數據清洗,
  │ │ │ 01-ETL-數據清洗-課程訪(fǎng)問(wèn)Fact Table Field Introduction&amp;清洗邏輯Introduction_mp4,
  │ │ │ 02-ETL-數據清洗-課程訪(fǎng)問(wèn)清洗-獲取維度數據&amp;原創(chuàng )數據_mp4,
  │ │ │ 03-ETL-數據清洗-課程參觀(guān)清洗-過(guò)濾機器人及相關(guān)維度_mp4,
  │ │ │ 04-ETL-數據清洗-課程走訪(fǎng)清洗-去重&amp;保存到數據倉庫_mp4,
  │ │ │ 05-ETL-數據清洗-課程訪(fǎng)問(wèn)清洗-Test_mp4,
  │ │ │ 06-ETL-數據清洗-課程流量清洗-使用NiFi生產(chǎn)數據和Test_mp4,
  │ │ │ 07-課程分析-學(xué)習目標_mp4,
  │ │ │ 08-課程分析-課程流量分析-功能概述&amp;統計分析Steps_mp4,
  │ │ │ 09-課程分析-課程訪(fǎng)問(wèn)分析-步驟1:閱讀課程訪(fǎng)問(wèn)事實(shí)表Data_mp4,
  │ │ │ 10-課程分析-課程訪(fǎng)問(wèn)分析-步驟2:課程訪(fǎng)問(wèn)統計總和_mp4,
  │ │ │ 11-Course Analysis-Course Visits Analysis-Step 3: Course Visits Statistics Save Data Warehouse_mp4,
  │ │ │ 12-課程分析-課程流量分析-使用NiFi將課程流量分析結果同步到MySQl_mp4,
  │ │ │ 13-Course Analysis-Course Traffic Analysis-Integration Test Overview_mp4,
  │ │ │ 14-課程分析-課程流量分析-集成測試-數據清洗統計分析NiFi Scheduling_mp4,
  │ │ │ 15門(mén)課程分析-課程流量分析-集成測試-聯(lián)動(dòng)(清理、統計分析、同步到業(yè)務(wù)庫)配置和test_mp4,
  
  │ │ │ 16-業(yè)務(wù)報表系統搭建-Web前端說(shuō)明&amp;雅皮說(shuō)明_mp4,
  │ │ │ 17-搭建業(yè)務(wù)報表系統-使用業(yè)務(wù)后臺界面展示業(yè)務(wù)報表_mp4,
  │ │ │
  │ │ ├─2. 課程分析,
  │ │ │ 01-課程分析-課程采購-需求分析_mp4,
  │ │ │ 02-課程分析-課程采購-采集現場(chǎng)與存儲分析_mp4,
  │ │ │ 03-課程分析-課程購買(mǎi)-MySQL采集Notes_mp4,
  │ │ │ 04-課程分析-課程購買(mǎi)-NiFi采集MySQL Configuration_mp4,
  │ │ │ 05-課程分析-課程購買(mǎi)-測試NiFi采集MySQL_mp4,
  │ │ │ 06-課程分析-課程采購-NiFi生產(chǎn)訂單數據保存到MySQL&amp;實(shí)時(shí)處理采集_mp4,
  │ │ │ 07-課程分析-課程采購-數據清洗-DWD(事實(shí)表)結構分析_mp4,
  │ │ │ 08-課程分析-課程購買(mǎi)-數據清洗-用戶(hù)維度采集_mp4,
  │ │ │ 09-課程分析-課程采購-DWD代碼-維度數據采集_mp4,
  │ │ │ 10-課程分析-課程采購-DWD代碼-事實(shí)表數據封裝_mp4,
  │ │ │ 11-課程分析-課程購買(mǎi)-DWD代碼-保存到數據倉庫_mp4,
  │ │ │ 12-課程分析-課程采購-DWD代碼-測試清理存儲_mp4,
  │ │ │ 13-課程分析-課程采購-DWM層結構分析_mp4,
  │ │ │ 14-課程分析-課程采購-DWM代碼-輕聚合包數據_mp4,
  │ │ │ 15-課程分析-課程采購-DWM代碼-保存到數據倉庫&amp;測試存儲_mp4,
  │ │ │ 16-課程分析-課程采購-統計分析_mp4,
  │ │ │ 17-課程分析-課程采購-使用NiFi將業(yè)務(wù)數據從數據倉庫同步到MySQL_mp4,
  │ │ │ 18-Course Analysis-Course Purchases-Integration Testing-Overview &amp; NiFi Scheduling Data Cleaning Analysis Task_mp4,
  │ │ │ 19-課程分析-課程采購-集成測試-聯(lián)動(dòng)配置&amp;全過(guò)程測試_mp4,
  │ │ │
  │ │ └─3.熱門(mén)學(xué)科排名,
  │ │ 01-熱門(mén)學(xué)科排名-需求分析_mp4,
  │ │ 02-熱門(mén)學(xué)科排名-業(yè)務(wù)報表系統領(lǐng)域分析_mp4,
  │ │ 03-熱門(mén)學(xué)科排名-采集領(lǐng)域與存儲分析_mp4,
  │ │ 04-熱門(mén)學(xué)科排名-NiFi采集用戶(hù)選課數據&amp;Test_mp4,
  │ │ 05-熱門(mén)學(xué)科排行榜-NiFi制作用戶(hù)選課數據保存到MySQL&amp;實(shí)時(shí)采集_mp4,
  │ │ 06-熱門(mén)學(xué)科排名-用戶(hù)選課DWD層字段描述&amp;清洗分析_mp4,
  │ │ 07-熱門(mén)學(xué)科排名-用戶(hù)選課-DWD代碼-獲取維度數據&amp;用戶(hù)選課原創(chuàng )數據_mp4,
  │ │ 08-熱門(mén)學(xué)科排名-用戶(hù)選課-DWD代碼-事實(shí)表數據封裝&amp;保存到數據倉庫_mp4,
  │ │ 09-熱門(mén)學(xué)科排名-用戶(hù)選課-DWD代碼-測試清理存儲_mp4,
  │ │ 10-Top Subject Ranking-統計分析概述&amp;課程分類(lèi)維度采集_mp4,
  │ │ 11-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售-周數-統計分析Steps_mp4,
  │ │ 12-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售-周-代碼-獲取每周日期_mp4,
  │ │ 13-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售-周數-編碼-按日期獲取數據并計算增加_mp4,
  │ │ 14-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售-周-代碼-維度關(guān)聯(lián)&amp;保存到數據倉庫_mp4,
  │ │ 15-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售周-代碼-提取工具&amp;測試存儲_mp4,
  │ │ 16-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)量-月份-統計分析步驟和代碼編寫(xiě)_mp4,
  │ │ 17-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售-月-測試存儲_mp4,
  │ │ 18-熱門(mén)學(xué)科排名-統計分析-學(xué)生人數-周數-統計分析步驟_mp4,
  │ │ 19-熱門(mén)學(xué)科排名-統計分析-學(xué)生人數-周數-代碼-獲取周區間&amp;獲取數據&amp;計算增加_mp4,
  │ │ 20-熱門(mén)學(xué)科排名-統計分析-學(xué)生人數-周-代碼-維度關(guān)聯(lián)&amp;保存到數據倉庫_mp4,
  │ │ 21-熱門(mén)學(xué)科排名-統計分析-學(xué)生人數-周數-代碼-提取工具&amp;試題存儲_mp4,
  │ │ 22-熱門(mén)學(xué)科排名-統計分析-學(xué)生人數-月-統計分析步驟&amp;代碼編寫(xiě)_mp4,
  │ │ 23-熱門(mén)學(xué)科排名-統計分析-學(xué)生人數-月-考試存儲_mp4,
  │ │ 24-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售-周-統計分析步驟&amp;代碼編寫(xiě)_mp4,
  │ │ 25-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售-周-測試存儲_mp4,
  │ │ 26-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)量-月份-統計分析步驟&amp;代碼編寫(xiě)_mp4,
  │ │ 27-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售-月-測試存儲_mp4,
  │ │ 28-Top Subject Ranking-統計分析-使用NiFi將業(yè)務(wù)數據從Data Warehouse同步到MySQL_mp4,
  │ │ 29-熱門(mén)學(xué)科排名-集成測試-配置NiFi調度數據清洗和分析任務(wù)_mp4,
  │ │ 30-熱門(mén)學(xué)科排名-綜合測試-測試NiFi調度數據清洗分析_mp4,
  │ │ 31-熱門(mén)學(xué)科排名-綜合測試-聯(lián)動(dòng)配置&amp;測試_mp4,
  │ │ 32-熱門(mén)學(xué)科排名-綜合測試-報告系統網(wǎng)頁(yè)展示_mp4,
  │ │
  │ ├─04. 第 4 章智慧學(xué)習 - 平板電腦支架,
  │ │ 01-實(shí)時(shí)分析-學(xué)習目標_mp4,
  │ │ 02-實(shí)時(shí)分析-平臺看板需求分析&amp;實(shí)時(shí)分析應用場(chǎng)景_mp4,
  │ │ 03-實(shí)時(shí)分析-實(shí)時(shí)分析技術(shù)方案_mp4,
  │ │ 04-實(shí)時(shí)分析-索引和維度分析&amp;數據存儲分析_mp4,
  │ │ 05-實(shí)時(shí)分析-今日訪(fǎng)問(wèn)量-概覽&amp;數據采集_mp4,
  │ │ 06-實(shí)時(shí)分析-今日訪(fǎng)問(wèn)量-統計分析邏輯_mp4,
  │ │ 07-實(shí)時(shí)分析-今天的流量-代碼-redis獲取kafka的offset_mp4,
  
  │ │ 08-實(shí)時(shí)分析-今日流量-代碼-SparkStreaming獲取kafka_mp4中的數據,
  │ │ 09-實(shí)時(shí)分析-今日流量-代碼-重新計算實(shí)時(shí)流量&amp;保存redis_mp4,
  │ │ 10-實(shí)時(shí)分析-今天的流量-代碼-將當前偏移進(jìn)度保存在redis_mp4中,
  │ │ 11-實(shí)時(shí)分析-今日流量-代碼-test_mp4,
  │ │ 12-實(shí)時(shí)分析-今日走訪(fǎng)-NiFi生產(chǎn)數據&amp;Test_mp4,
  │ │ 13-實(shí)時(shí)分析-新用戶(hù)-概覽&amp;數據采集_mp4,
  │ │ 14-實(shí)時(shí)分析-新用戶(hù)-統計分析邏輯_mp4,
  │ │ 15-實(shí)時(shí)分析-新用戶(hù)-代碼-新用戶(hù)實(shí)時(shí)計算_mp4,
  │ │ 16-實(shí)時(shí)分析-新用戶(hù)-code-test_mp4,
  │ │ 17-實(shí)時(shí)分析-新用戶(hù)-NiFi Production Data&amp;Test_mp4,
  │ │ 18-實(shí)時(shí)分析-今日采購-概覽&amp;數據采集_mp4,
  │ │ 19-實(shí)時(shí)分析-今日采購-統計分析邏輯&amp;代碼_mp4,
  │ │ 20-實(shí)時(shí)分析-今日采購-代碼-Test_mp4,
  │ │ 21-實(shí)時(shí)分析-今日采購-NiFi生產(chǎn)數據&amp;Test_mp4,
  │ │ 22-實(shí)時(shí)分析-集成測試-NiFi調度配置_mp4,
  │ │ 23-實(shí)時(shí)分析-集成測試-test&amp;web display_mp4,
  │ │
  │ ├─05.Chapter 5 Wisdom Learning-Instant Query,
  │ │ 01 Instant Query-Learning Objective_mp4,
  │ │ 02 即時(shí)查詢(xún)-需求分析與技術(shù)解決方案_mp4,
  │ │ 03 即時(shí)查詢(xún)-技術(shù)方案-代碼演示-保存-Code_mp4,
  │ │ 04 即時(shí)查詢(xún)-技術(shù)方案-代碼演示-保存-Test_mp4,
  │ │ 05 即時(shí)查詢(xún)-技術(shù)方案-代碼演示-查詢(xún)-代碼&amp;Test_mp4,
  │ │ 06 即時(shí)查詢(xún)-采集分析與存儲分析_mp4,
  │ │ 07 即時(shí)查詢(xún)-數據采集-用戶(hù)學(xué)習采集_mp4,
  │ │ 08 即時(shí)查詢(xún)-資料采集-課程視頻維度采集_mp4,
  │ │ 09 Instant Query - 統計分析 - Overview &amp; Step 1 Statistical Logic &amp; Intermediate Table Introduction_mp4,
  │ │ 10 Instant Query - Statistical Analysis - Step 1: Code - Get Raw Data _mp4,
  │ │ 11 即時(shí)查詢(xún)-統計分析-第1步:代碼-注冊udf函數_mp4,
  │ │ 12 Instant Query-Statistical Analysis-Step 1:代碼關(guān)聯(lián)相關(guān)維度&amp;統計學(xué)習時(shí)長(cháng)_mp4,
  │ │ 13 即時(shí)查詢(xún)-統計分析-第1步:代碼-測試_mp4,
  │ │ 14 Instant Query - 統計分析 - Step 2: Overview_mp4,
  │ │ 15 即時(shí)查詢(xún)-統計分析-第2步:代碼_mp4,
  │ │ 16 即時(shí)查詢(xún) - 統計分析 - 第 2 步:Test_mp4,
  │ │ 17 Instant Query - 統計分析 - hbase_mp4使用注意事項,
  │ │ 18即時(shí)查詢(xún)-統計分析-NiFi生產(chǎn)數據-Configuration_mp4,
  │ │ 19 即時(shí)查詢(xún)-統計分析-NiFi生產(chǎn)數據-測試&amp;代碼Test_mp4,
  │ │ 20 Instant Query-Integration Test-Configuration_mp4,
  │ │ 21 Instant Query - Integration Test - Test &amp; Web Display_mp4,
  │ │
  │ ├─06. 第6章智慧學(xué)習-系統集成測試,
  │ │ 01 系統集成測試 - 學(xué)習目標和概述_mp4,
  │ │ 02 系統集成測試-代碼重新打包-代碼修改_mp4,
  │ │ 03 系統集成測試-代碼重新打包-上傳NiFi container_mp4,
  │ │ 04系統集成測試-NiFi采集-清洗-統計分析-概述&amp;清洗業(yè)務(wù)數據_mp4,
  │ │ 05系統集成測試-NiFi采集-清洗-統計分析-即時(shí)查詢(xún)_mp4,
  │ │ 06系統集成測試-NiFi采集-清洗-統計分析-離線(xiàn)分析-課程訪(fǎng)問(wèn)_mp4,
  │ │ 07系統集成測試-NiFi采集-清洗-統計分析-離線(xiàn)分析-課程采購_mp4,
  │ │ 08系統集成測試-NiFi采集-清理-統計分析-離線(xiàn)分析-熱門(mén)學(xué)科排名_mp4,
  │ │ 09系統集成測試-NiFi采集-清洗-統計分析-實(shí)時(shí)分析_mp4,
  │ │ 10 系統集成測試-NiFi采集-清洗-統計分析-Web Display_mp4,
  │ │
  │ └─07. 第七章智慧學(xué)習——項目就業(yè)指導,
  │ 01項目就業(yè)指導-就業(yè)指導概述&amp;項目功能模塊_mp4,
  │ 02 項目就業(yè)指導-技術(shù)架構&amp;技術(shù)棧-1_mp4,
  │ 03 項目就業(yè)指導-技術(shù)架構&amp;技術(shù)棧-2_mp4,
  │ 04 項目就業(yè)指導——數據倉庫是如何設計的?_mp4,
  │ 05 項目就業(yè)指導——數據采集是如何實(shí)現的?_mp4,
  │ 06 項目職業(yè)指導 - ETL如何運作?_mp4,
  │ 07 項目就業(yè)指導——線(xiàn)下分析如何實(shí)施?_mp4,
  │ 08 項目用工指導——同比分析在項目中的應用?_mp4,
  │ 09 項目就業(yè)指導——實(shí)時(shí)分析是如何做的?_mp4,
  │ 10 項目就業(yè)指導——如何從海量數據中查詢(xún)到想要的數據?_mp4,
  │ 11 項目就業(yè)指導——項目中的任務(wù)調度是如何進(jìn)行的?_mp4,
  解決方案:多用戶(hù)自助建站-巔云V8門(mén)戶(hù)自助建站系統可以說(shuō)是目前優(yōu)秀的建站平臺軟件了
  我們強調:點(diǎn)云是工廠(chǎng)式自助建站平臺軟件(功能大集合——自配置功能,預制工廠(chǎng)),不是網(wǎng)站模板,也不是模板(模板也是一種保存的排版結果),可以說(shuō)模板在點(diǎn)云系統中一文不值。
  目的:幫助正在開(kāi)發(fā)網(wǎng)站的網(wǎng)絡(luò )公司或個(gè)人創(chuàng )業(yè)者搭建自助網(wǎng)站服務(wù)平臺。解決技術(shù)壁壘,提高業(yè)務(wù)效率,降低業(yè)務(wù)成本。
  用戶(hù)訪(fǎng)問(wèn)您的平臺-注冊成為會(huì )員-自助開(kāi)通網(wǎng)站-綁定域名-會(huì )員自助視覺(jué)拼圖設計您自己的網(wǎng)站-續費-升級您是頂級網(wǎng)站建設者
  點(diǎn)云門(mén)戶(hù)站搭建系統V8.0 功能介紹:采用TP6+VUE+js+layui+css+html5+nginx+php8等開(kāi)源框架開(kāi)發(fā),不僅支持可視化拖拽生產(chǎn)企業(yè)網(wǎng)站,同時(shí)還集成了多用戶(hù)商城、論壇、視頻、分類(lèi)信息等網(wǎng)站等常用模塊,還集成了網(wǎng)站業(yè)務(wù)發(fā)展所需的域名注冊功能和網(wǎng)站開(kāi)通功能。
  技術(shù)實(shí)現
  1、自助建站平臺的功能包括建站包產(chǎn)品的建立、建站模板的管理、西數域名系統等,可以輕松開(kāi)展建站業(yè)務(wù)。
  2. 文章管理信息分類(lèi)、權限配置、單頁(yè)、新聞列表、友情鏈接、文章采集
  3.商品管理系統商品參數、商品品牌、權限配置、商品列表、商品類(lèi)型、商品分類(lèi)、商品回收站、CVS導入
  
  4.前端可視化欄目管理、文件管理庫、可視化系統、區域設置、語(yǔ)言設置、HTML自定義自定義表單、tinymce編輯器、HTML模板、表單生成器
  5.微站小程序模板消息、關(guān)鍵詞回復、粉絲列表、自定義菜單、圖文消息、群消息、公眾號、小程序、小程序下載、訂閱消息、小程序代碼
  6.賬號站點(diǎn)賬號權限、平臺管理、財務(wù)管理、會(huì )員管理、登錄日志、用戶(hù)組權限管理、財務(wù)記錄、支付記錄、權限規則、會(huì )員列表、會(huì )員留言、評論管理、通知留言、會(huì )員組
  7.產(chǎn)品促銷(xiāo)功能 拍賣(mài)活動(dòng)、議價(jià)活動(dòng)、秒殺活動(dòng)、團體活動(dòng)、積分系統、傭金管理、優(yōu)惠券、抽獎活動(dòng)
  8、訂單管理訂單數據、訂單清單、發(fā)票管理、退貨處理
  9.系統配置標簽設置、系統設置、安全密碼修改、密碼修改、上傳設置、數據維護、清除緩存、前臺搜索
  10.擴展功能投票系統、任務(wù)規劃、地圖導航、物流配送、票據打印機、短信通知、郵件系統、支付設置、快速登錄、客服系統、廣告系統。
  11.門(mén)戶(hù)功能組件:文集小說(shuō)、問(wèn)答系統、視頻系統、論壇系統、圖庫系統、音頻系統、分類(lèi)信息(信息列表、組件配置、信息分類(lèi)、信息報告、信息獎勵、評論列表、信息采集) 、下載系統等
  
  12.系統升級機制
  軟件安裝
  1.服務(wù)器:云服務(wù)器,linux最好或windows
  2、安裝環(huán)境:php8+mysql5.7+Nginx
  3.上傳源代碼并運行你的域名.com/install進(jìn)行安裝。
  4. 建立數據庫,管理賬戶(hù)信息,按照提示進(jìn)行安裝。
  2.專(zhuān)業(yè)大師級秒殺廠(chǎng)商的排版功能。 查看全部

  解決方案:博學(xué)谷-基于大數據的智慧學(xué)成項目課程
  博雪谷——基于大數據的智慧學(xué)習項目課程1
  課程介紹(A000474):
  智慧學(xué)習項目是在線(xiàn)教育業(yè)務(wù)大數據統計分析系統。采用企業(yè)級ETL標準化流程和數據倉庫建模思想,根據課程、用戶(hù)等不同維度進(jìn)行數據分析。采用Hadoop和Spark技術(shù)棧開(kāi)發(fā),為數據倉庫、ETL、離線(xiàn)和實(shí)時(shí)分析提供解決方案。
  課程目錄:
  博雪谷——基于大數據的智能學(xué)習項目課程二
  文件目錄:
  博雪谷——基于大數據的智慧學(xué)習項目課程,
  │ └─08. 第 8 階段智慧學(xué)習計劃,
  │ ├─01. 第一章智慧學(xué)習——項目介紹環(huán)境搭建,
  │ │ 01-項目介紹-學(xué)習目標&amp;項目背景及概述_mp4,
  │ │ 02-項目介紹-業(yè)務(wù)流程_mp4,
  │ │ 03-項目介紹-功能模塊_mp4,
  │ │ 04-項目介紹-技術(shù)架構_mp4,
  │ │ 05-環(huán)境建設-學(xué)習目標&amp;CDH組件介紹_mp4,
  │ │ 06-環(huán)境建設-鼎暉環(huán)境建設_mp4,
  │ │ 07-環(huán)境搭建-配置hosts_mp4,
  │ │ 08-環(huán)境建設-配置Maven_mp4,
  │ │ 09-環(huán)境搭建-IDEA環(huán)境配置_mp4,
  │ │ 10-環(huán)境建設-導入Scala基礎工程&amp;基礎工程介紹_mp4,
  │ │ 11-環(huán)境建設-wordcount代碼編寫(xiě)和idea代碼測試_mp4,
  │ │ 12-環(huán)境搭建-wordcount任務(wù)提交集群執行_mp4,
  │ │ 13-Zeppelin簡(jiǎn)介,Zeppelin調制的Spark程序_mp4,
  │ │ 14-Hue介紹,Hue操作hive和hdfs_mp4,
  │ │ 15-數據倉庫-學(xué)習目標,數據倉庫簡(jiǎn)介_(kāi)mp4,
  │ │ 16-數據倉庫-數據倉庫的特點(diǎn)_mp4,
  │ │ 17-數據倉庫-維度分析_mp4,
  │ │ 18-Data Warehouse-Data Warehouse Modeling_mp4,
  │ │ 19-數據倉庫-Hive創(chuàng )建數據倉庫_mp4,
  │ │
  │ ├─02. 第 2 章智慧學(xué)習 - 數據倉庫和 ETL,
  │ │ 01-ETL-學(xué)習目標_mp4,
  │ │ 02-ETL-ETL介紹_mp4,
  │ │ 03-ETL-課程訪(fǎng)問(wèn)需求分析-_mp4,
  │ │ 04-ETL-采集系統介紹_mp4,
  │ │ 05-ETL-采集系統構建_mp4,
  │ │ 06-ETL-采集系統測試采集課程訪(fǎng)問(wèn)_mp4,
  │ │ 07-ETL-NiFi介紹_mp4,
  │ │ 08-ETL-快速入門(mén)_mp4,
  │ │ 09-ETL-維度數據采集-維度介紹-_mp4,
  │ │ 10-ETL-維度數據采集-導入學(xué)城在線(xiàn)業(yè)務(wù)數據_mp4,
  │ │ 11-ETL-維數據采集-導入NiFi源碼并執行采集_mp4,
  │ │ 12-ETL-Dimensional Data采集-Notes-NiFi采集亂碼處理_mp4,
  │ │ 13-ETL-維度數據采集-區域維度原創(chuàng )文件上傳HDFS&amp;spark讀取file_mp4,
  │ │ 14-ETL-維度數據采集-區域維度原創(chuàng )文件數據和實(shí)體映射_mp4,
  │ │ 15-ETL-維度數據采集-區域維度字段關(guān)聯(lián)與區域維度數據storage_mp4,
  │ │ 16-ETL-維度數據采集-區域維度-注釋?zhuān)簑inutils configuration_mp4,
  │ │
  │ ├─03.Chapter 3 智慧學(xué)習-課程分析,
  │ │ ├─1. 數據清洗,
  │ │ │ 01-ETL-數據清洗-課程訪(fǎng)問(wèn)Fact Table Field Introduction&amp;清洗邏輯Introduction_mp4,
  │ │ │ 02-ETL-數據清洗-課程訪(fǎng)問(wèn)清洗-獲取維度數據&amp;原創(chuàng )數據_mp4,
  │ │ │ 03-ETL-數據清洗-課程參觀(guān)清洗-過(guò)濾機器人及相關(guān)維度_mp4,
  │ │ │ 04-ETL-數據清洗-課程走訪(fǎng)清洗-去重&amp;保存到數據倉庫_mp4,
  │ │ │ 05-ETL-數據清洗-課程訪(fǎng)問(wèn)清洗-Test_mp4,
  │ │ │ 06-ETL-數據清洗-課程流量清洗-使用NiFi生產(chǎn)數據和Test_mp4,
  │ │ │ 07-課程分析-學(xué)習目標_mp4,
  │ │ │ 08-課程分析-課程流量分析-功能概述&amp;統計分析Steps_mp4,
  │ │ │ 09-課程分析-課程訪(fǎng)問(wèn)分析-步驟1:閱讀課程訪(fǎng)問(wèn)事實(shí)表Data_mp4,
  │ │ │ 10-課程分析-課程訪(fǎng)問(wèn)分析-步驟2:課程訪(fǎng)問(wèn)統計總和_mp4,
  │ │ │ 11-Course Analysis-Course Visits Analysis-Step 3: Course Visits Statistics Save Data Warehouse_mp4,
  │ │ │ 12-課程分析-課程流量分析-使用NiFi將課程流量分析結果同步到MySQl_mp4,
  │ │ │ 13-Course Analysis-Course Traffic Analysis-Integration Test Overview_mp4,
  │ │ │ 14-課程分析-課程流量分析-集成測試-數據清洗統計分析NiFi Scheduling_mp4,
  │ │ │ 15門(mén)課程分析-課程流量分析-集成測試-聯(lián)動(dòng)(清理、統計分析、同步到業(yè)務(wù)庫)配置和test_mp4,
  
  │ │ │ 16-業(yè)務(wù)報表系統搭建-Web前端說(shuō)明&amp;雅皮說(shuō)明_mp4,
  │ │ │ 17-搭建業(yè)務(wù)報表系統-使用業(yè)務(wù)后臺界面展示業(yè)務(wù)報表_mp4,
  │ │ │
  │ │ ├─2. 課程分析,
  │ │ │ 01-課程分析-課程采購-需求分析_mp4,
  │ │ │ 02-課程分析-課程采購-采集現場(chǎng)與存儲分析_mp4,
  │ │ │ 03-課程分析-課程購買(mǎi)-MySQL采集Notes_mp4,
  │ │ │ 04-課程分析-課程購買(mǎi)-NiFi采集MySQL Configuration_mp4,
  │ │ │ 05-課程分析-課程購買(mǎi)-測試NiFi采集MySQL_mp4,
  │ │ │ 06-課程分析-課程采購-NiFi生產(chǎn)訂單數據保存到MySQL&amp;實(shí)時(shí)處理采集_mp4,
  │ │ │ 07-課程分析-課程采購-數據清洗-DWD(事實(shí)表)結構分析_mp4,
  │ │ │ 08-課程分析-課程購買(mǎi)-數據清洗-用戶(hù)維度采集_mp4,
  │ │ │ 09-課程分析-課程采購-DWD代碼-維度數據采集_mp4,
  │ │ │ 10-課程分析-課程采購-DWD代碼-事實(shí)表數據封裝_mp4,
  │ │ │ 11-課程分析-課程購買(mǎi)-DWD代碼-保存到數據倉庫_mp4,
  │ │ │ 12-課程分析-課程采購-DWD代碼-測試清理存儲_mp4,
  │ │ │ 13-課程分析-課程采購-DWM層結構分析_mp4,
  │ │ │ 14-課程分析-課程采購-DWM代碼-輕聚合包數據_mp4,
  │ │ │ 15-課程分析-課程采購-DWM代碼-保存到數據倉庫&amp;測試存儲_mp4,
  │ │ │ 16-課程分析-課程采購-統計分析_mp4,
  │ │ │ 17-課程分析-課程采購-使用NiFi將業(yè)務(wù)數據從數據倉庫同步到MySQL_mp4,
  │ │ │ 18-Course Analysis-Course Purchases-Integration Testing-Overview &amp; NiFi Scheduling Data Cleaning Analysis Task_mp4,
  │ │ │ 19-課程分析-課程采購-集成測試-聯(lián)動(dòng)配置&amp;全過(guò)程測試_mp4,
  │ │ │
  │ │ └─3.熱門(mén)學(xué)科排名,
  │ │ 01-熱門(mén)學(xué)科排名-需求分析_mp4,
  │ │ 02-熱門(mén)學(xué)科排名-業(yè)務(wù)報表系統領(lǐng)域分析_mp4,
  │ │ 03-熱門(mén)學(xué)科排名-采集領(lǐng)域與存儲分析_mp4,
  │ │ 04-熱門(mén)學(xué)科排名-NiFi采集用戶(hù)選課數據&amp;Test_mp4,
  │ │ 05-熱門(mén)學(xué)科排行榜-NiFi制作用戶(hù)選課數據保存到MySQL&amp;實(shí)時(shí)采集_mp4,
  │ │ 06-熱門(mén)學(xué)科排名-用戶(hù)選課DWD層字段描述&amp;清洗分析_mp4,
  │ │ 07-熱門(mén)學(xué)科排名-用戶(hù)選課-DWD代碼-獲取維度數據&amp;用戶(hù)選課原創(chuàng )數據_mp4,
  │ │ 08-熱門(mén)學(xué)科排名-用戶(hù)選課-DWD代碼-事實(shí)表數據封裝&amp;保存到數據倉庫_mp4,
  │ │ 09-熱門(mén)學(xué)科排名-用戶(hù)選課-DWD代碼-測試清理存儲_mp4,
  │ │ 10-Top Subject Ranking-統計分析概述&amp;課程分類(lèi)維度采集_mp4,
  │ │ 11-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售-周數-統計分析Steps_mp4,
  │ │ 12-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售-周-代碼-獲取每周日期_mp4,
  │ │ 13-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售-周數-編碼-按日期獲取數據并計算增加_mp4,
  │ │ 14-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售-周-代碼-維度關(guān)聯(lián)&amp;保存到數據倉庫_mp4,
  │ │ 15-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售周-代碼-提取工具&amp;測試存儲_mp4,
  │ │ 16-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)量-月份-統計分析步驟和代碼編寫(xiě)_mp4,
  │ │ 17-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售-月-測試存儲_mp4,
  │ │ 18-熱門(mén)學(xué)科排名-統計分析-學(xué)生人數-周數-統計分析步驟_mp4,
  │ │ 19-熱門(mén)學(xué)科排名-統計分析-學(xué)生人數-周數-代碼-獲取周區間&amp;獲取數據&amp;計算增加_mp4,
  │ │ 20-熱門(mén)學(xué)科排名-統計分析-學(xué)生人數-周-代碼-維度關(guān)聯(lián)&amp;保存到數據倉庫_mp4,
  │ │ 21-熱門(mén)學(xué)科排名-統計分析-學(xué)生人數-周數-代碼-提取工具&amp;試題存儲_mp4,
  │ │ 22-熱門(mén)學(xué)科排名-統計分析-學(xué)生人數-月-統計分析步驟&amp;代碼編寫(xiě)_mp4,
  │ │ 23-熱門(mén)學(xué)科排名-統計分析-學(xué)生人數-月-考試存儲_mp4,
  │ │ 24-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售-周-統計分析步驟&amp;代碼編寫(xiě)_mp4,
  │ │ 25-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售-周-測試存儲_mp4,
  │ │ 26-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)量-月份-統計分析步驟&amp;代碼編寫(xiě)_mp4,
  │ │ 27-熱門(mén)學(xué)科排名-統計分析-銷(xiāo)售-月-測試存儲_mp4,
  │ │ 28-Top Subject Ranking-統計分析-使用NiFi將業(yè)務(wù)數據從Data Warehouse同步到MySQL_mp4,
  │ │ 29-熱門(mén)學(xué)科排名-集成測試-配置NiFi調度數據清洗和分析任務(wù)_mp4,
  │ │ 30-熱門(mén)學(xué)科排名-綜合測試-測試NiFi調度數據清洗分析_mp4,
  │ │ 31-熱門(mén)學(xué)科排名-綜合測試-聯(lián)動(dòng)配置&amp;測試_mp4,
  │ │ 32-熱門(mén)學(xué)科排名-綜合測試-報告系統網(wǎng)頁(yè)展示_mp4,
  │ │
  │ ├─04. 第 4 章智慧學(xué)習 - 平板電腦支架,
  │ │ 01-實(shí)時(shí)分析-學(xué)習目標_mp4,
  │ │ 02-實(shí)時(shí)分析-平臺看板需求分析&amp;實(shí)時(shí)分析應用場(chǎng)景_mp4,
  │ │ 03-實(shí)時(shí)分析-實(shí)時(shí)分析技術(shù)方案_mp4,
  │ │ 04-實(shí)時(shí)分析-索引和維度分析&amp;數據存儲分析_mp4,
  │ │ 05-實(shí)時(shí)分析-今日訪(fǎng)問(wèn)量-概覽&amp;數據采集_mp4,
  │ │ 06-實(shí)時(shí)分析-今日訪(fǎng)問(wèn)量-統計分析邏輯_mp4,
  │ │ 07-實(shí)時(shí)分析-今天的流量-代碼-redis獲取kafka的offset_mp4,
  
  │ │ 08-實(shí)時(shí)分析-今日流量-代碼-SparkStreaming獲取kafka_mp4中的數據,
  │ │ 09-實(shí)時(shí)分析-今日流量-代碼-重新計算實(shí)時(shí)流量&amp;保存redis_mp4,
  │ │ 10-實(shí)時(shí)分析-今天的流量-代碼-將當前偏移進(jìn)度保存在redis_mp4中,
  │ │ 11-實(shí)時(shí)分析-今日流量-代碼-test_mp4,
  │ │ 12-實(shí)時(shí)分析-今日走訪(fǎng)-NiFi生產(chǎn)數據&amp;Test_mp4,
  │ │ 13-實(shí)時(shí)分析-新用戶(hù)-概覽&amp;數據采集_mp4,
  │ │ 14-實(shí)時(shí)分析-新用戶(hù)-統計分析邏輯_mp4,
  │ │ 15-實(shí)時(shí)分析-新用戶(hù)-代碼-新用戶(hù)實(shí)時(shí)計算_mp4,
  │ │ 16-實(shí)時(shí)分析-新用戶(hù)-code-test_mp4,
  │ │ 17-實(shí)時(shí)分析-新用戶(hù)-NiFi Production Data&amp;Test_mp4,
  │ │ 18-實(shí)時(shí)分析-今日采購-概覽&amp;數據采集_mp4,
  │ │ 19-實(shí)時(shí)分析-今日采購-統計分析邏輯&amp;代碼_mp4,
  │ │ 20-實(shí)時(shí)分析-今日采購-代碼-Test_mp4,
  │ │ 21-實(shí)時(shí)分析-今日采購-NiFi生產(chǎn)數據&amp;Test_mp4,
  │ │ 22-實(shí)時(shí)分析-集成測試-NiFi調度配置_mp4,
  │ │ 23-實(shí)時(shí)分析-集成測試-test&amp;web display_mp4,
  │ │
  │ ├─05.Chapter 5 Wisdom Learning-Instant Query,
  │ │ 01 Instant Query-Learning Objective_mp4,
  │ │ 02 即時(shí)查詢(xún)-需求分析與技術(shù)解決方案_mp4,
  │ │ 03 即時(shí)查詢(xún)-技術(shù)方案-代碼演示-保存-Code_mp4,
  │ │ 04 即時(shí)查詢(xún)-技術(shù)方案-代碼演示-保存-Test_mp4,
  │ │ 05 即時(shí)查詢(xún)-技術(shù)方案-代碼演示-查詢(xún)-代碼&amp;Test_mp4,
  │ │ 06 即時(shí)查詢(xún)-采集分析與存儲分析_mp4,
  │ │ 07 即時(shí)查詢(xún)-數據采集-用戶(hù)學(xué)習采集_mp4,
  │ │ 08 即時(shí)查詢(xún)-資料采集-課程視頻維度采集_mp4,
  │ │ 09 Instant Query - 統計分析 - Overview &amp; Step 1 Statistical Logic &amp; Intermediate Table Introduction_mp4,
  │ │ 10 Instant Query - Statistical Analysis - Step 1: Code - Get Raw Data _mp4,
  │ │ 11 即時(shí)查詢(xún)-統計分析-第1步:代碼-注冊udf函數_mp4,
  │ │ 12 Instant Query-Statistical Analysis-Step 1:代碼關(guān)聯(lián)相關(guān)維度&amp;統計學(xué)習時(shí)長(cháng)_mp4,
  │ │ 13 即時(shí)查詢(xún)-統計分析-第1步:代碼-測試_mp4,
  │ │ 14 Instant Query - 統計分析 - Step 2: Overview_mp4,
  │ │ 15 即時(shí)查詢(xún)-統計分析-第2步:代碼_mp4,
  │ │ 16 即時(shí)查詢(xún) - 統計分析 - 第 2 步:Test_mp4,
  │ │ 17 Instant Query - 統計分析 - hbase_mp4使用注意事項,
  │ │ 18即時(shí)查詢(xún)-統計分析-NiFi生產(chǎn)數據-Configuration_mp4,
  │ │ 19 即時(shí)查詢(xún)-統計分析-NiFi生產(chǎn)數據-測試&amp;代碼Test_mp4,
  │ │ 20 Instant Query-Integration Test-Configuration_mp4,
  │ │ 21 Instant Query - Integration Test - Test &amp; Web Display_mp4,
  │ │
  │ ├─06. 第6章智慧學(xué)習-系統集成測試,
  │ │ 01 系統集成測試 - 學(xué)習目標和概述_mp4,
  │ │ 02 系統集成測試-代碼重新打包-代碼修改_mp4,
  │ │ 03 系統集成測試-代碼重新打包-上傳NiFi container_mp4,
  │ │ 04系統集成測試-NiFi采集-清洗-統計分析-概述&amp;清洗業(yè)務(wù)數據_mp4,
  │ │ 05系統集成測試-NiFi采集-清洗-統計分析-即時(shí)查詢(xún)_mp4,
  │ │ 06系統集成測試-NiFi采集-清洗-統計分析-離線(xiàn)分析-課程訪(fǎng)問(wèn)_mp4,
  │ │ 07系統集成測試-NiFi采集-清洗-統計分析-離線(xiàn)分析-課程采購_mp4,
  │ │ 08系統集成測試-NiFi采集-清理-統計分析-離線(xiàn)分析-熱門(mén)學(xué)科排名_mp4,
  │ │ 09系統集成測試-NiFi采集-清洗-統計分析-實(shí)時(shí)分析_mp4,
  │ │ 10 系統集成測試-NiFi采集-清洗-統計分析-Web Display_mp4,
  │ │
  │ └─07. 第七章智慧學(xué)習——項目就業(yè)指導,
  │ 01項目就業(yè)指導-就業(yè)指導概述&amp;項目功能模塊_mp4,
  │ 02 項目就業(yè)指導-技術(shù)架構&amp;技術(shù)棧-1_mp4,
  │ 03 項目就業(yè)指導-技術(shù)架構&amp;技術(shù)棧-2_mp4,
  │ 04 項目就業(yè)指導——數據倉庫是如何設計的?_mp4,
  │ 05 項目就業(yè)指導——數據采集是如何實(shí)現的?_mp4,
  │ 06 項目職業(yè)指導 - ETL如何運作?_mp4,
  │ 07 項目就業(yè)指導——線(xiàn)下分析如何實(shí)施?_mp4,
  │ 08 項目用工指導——同比分析在項目中的應用?_mp4,
  │ 09 項目就業(yè)指導——實(shí)時(shí)分析是如何做的?_mp4,
  │ 10 項目就業(yè)指導——如何從海量數據中查詢(xún)到想要的數據?_mp4,
  │ 11 項目就業(yè)指導——項目中的任務(wù)調度是如何進(jìn)行的?_mp4,
  解決方案:多用戶(hù)自助建站-巔云V8門(mén)戶(hù)自助建站系統可以說(shuō)是目前優(yōu)秀的建站平臺軟件了
  我們強調:點(diǎn)云是工廠(chǎng)式自助建站平臺軟件(功能大集合——自配置功能,預制工廠(chǎng)),不是網(wǎng)站模板,也不是模板(模板也是一種保存的排版結果),可以說(shuō)模板在點(diǎn)云系統中一文不值。
  目的:幫助正在開(kāi)發(fā)網(wǎng)站的網(wǎng)絡(luò )公司或個(gè)人創(chuàng )業(yè)者搭建自助網(wǎng)站服務(wù)平臺。解決技術(shù)壁壘,提高業(yè)務(wù)效率,降低業(yè)務(wù)成本。
  用戶(hù)訪(fǎng)問(wèn)您的平臺-注冊成為會(huì )員-自助開(kāi)通網(wǎng)站-綁定域名-會(huì )員自助視覺(jué)拼圖設計您自己的網(wǎng)站-續費-升級您是頂級網(wǎng)站建設者
  點(diǎn)云門(mén)戶(hù)站搭建系統V8.0 功能介紹:采用TP6+VUE+js+layui+css+html5+nginx+php8等開(kāi)源框架開(kāi)發(fā),不僅支持可視化拖拽生產(chǎn)企業(yè)網(wǎng)站,同時(shí)還集成了多用戶(hù)商城、論壇、視頻、分類(lèi)信息等網(wǎng)站等常用模塊,還集成了網(wǎng)站業(yè)務(wù)發(fā)展所需的域名注冊功能和網(wǎng)站開(kāi)通功能。
  技術(shù)實(shí)現
  1、自助建站平臺的功能包括建站包產(chǎn)品的建立、建站模板的管理、西數域名系統等,可以輕松開(kāi)展建站業(yè)務(wù)。
  2. 文章管理信息分類(lèi)、權限配置、單頁(yè)、新聞列表、友情鏈接、文章采集
  3.商品管理系統商品參數、商品品牌、權限配置、商品列表、商品類(lèi)型、商品分類(lèi)、商品回收站、CVS導入
  
  4.前端可視化欄目管理、文件管理庫、可視化系統、區域設置、語(yǔ)言設置、HTML自定義自定義表單、tinymce編輯器、HTML模板、表單生成器
  5.微站小程序模板消息、關(guān)鍵詞回復、粉絲列表、自定義菜單、圖文消息、群消息、公眾號、小程序、小程序下載、訂閱消息、小程序代碼
  6.賬號站點(diǎn)賬號權限、平臺管理、財務(wù)管理、會(huì )員管理、登錄日志、用戶(hù)組權限管理、財務(wù)記錄、支付記錄、權限規則、會(huì )員列表、會(huì )員留言、評論管理、通知留言、會(huì )員組
  7.產(chǎn)品促銷(xiāo)功能 拍賣(mài)活動(dòng)、議價(jià)活動(dòng)、秒殺活動(dòng)、團體活動(dòng)、積分系統、傭金管理、優(yōu)惠券、抽獎活動(dòng)
  8、訂單管理訂單數據、訂單清單、發(fā)票管理、退貨處理
  9.系統配置標簽設置、系統設置、安全密碼修改、密碼修改、上傳設置、數據維護、清除緩存、前臺搜索
  10.擴展功能投票系統、任務(wù)規劃、地圖導航、物流配送、票據打印機、短信通知、郵件系統、支付設置、快速登錄、客服系統、廣告系統。
  11.門(mén)戶(hù)功能組件:文集小說(shuō)、問(wèn)答系統、視頻系統、論壇系統、圖庫系統、音頻系統、分類(lèi)信息(信息列表、組件配置、信息分類(lèi)、信息報告、信息獎勵、評論列表、信息采集) 、下載系統等
  
  12.系統升級機制
  軟件安裝
  1.服務(wù)器:云服務(wù)器,linux最好或windows
  2、安裝環(huán)境:php8+mysql5.7+Nginx
  3.上傳源代碼并運行你的域名.com/install進(jìn)行安裝。
  4. 建立數據庫,管理賬戶(hù)信息,按照提示進(jìn)行安裝。
  2.專(zhuān)業(yè)大師級秒殺廠(chǎng)商的排版功能。

最新版本:Typecho高性能優(yōu)化之緩存插件

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 114 次瀏覽 ? 2022-11-10 12:19 ? 來(lái)自相關(guān)話(huà)題

  最新版本:Typecho高性能優(yōu)化之緩存插件
  使用場(chǎng)景
  盡管 HP typecho 非常高效,但為了提高網(wǎng)站的并發(fā)性,頁(yè)面的靜態(tài)緩存是必要的。這個(gè)緩存插件的目的只是為了緩存主頁(yè)以減少對數據庫的壓力。
  提醒:更有效和更靈活的緩存方法應該使用 nginx 而不是插件。如果你有nginx基礎,可以參考這里的配置
  插件配置
  
  第一:?jiǎn)⒂眠@個(gè)插件。然后,配置插件
  第一:配置文件緩存路徑,可以指定相對或絕對位置。
  第二:配置緩存時(shí)間,單位為秒,請根據自己的需要配置。
  
  應當指出的是
  因為插件使用了簡(jiǎn)單的文件緩存機制,所以請確保緩存路徑所在的分區有足夠的空間和足夠的inode節點(diǎn)。
  后臺文章更新后,緩存不會(huì )自動(dòng)更新(實(shí)現起來(lái)很麻煩,所以這個(gè)版本暫時(shí)沒(méi)有實(shí)現這個(gè)功能)。這一點(diǎn)尤為重要,所以請適當配置緩存過(guò)期時(shí)間。
  下載鏈接
  最新版本:Windows IIS日志文件分析神器
  Windows Server 具有事件日志功能,其 IIS 日志文件記錄以下信息:誰(shuí)訪(fǎng)問(wèn)了您的站點(diǎn),訪(fǎng)問(wèn)者查看了哪些內容等。通過(guò)定期檢查這些日志文件,網(wǎng)站管理員可以檢測服務(wù)器或站點(diǎn)的哪些方面易受攻擊或有其他安全隱患。
  但是目前的日志分析工具還不是很完善,有些功能還沒(méi)有,特別是針對特定需求的分析很難實(shí)現。這里有一個(gè)日志分析神器,可以像使用SQL軟件一樣,以個(gè)性化的方式分析日志。
  LogParser 是一個(gè)命令行工具,可以通過(guò) SQL 語(yǔ)句對日志進(jìn)行分析和統計。您可以定期分析生產(chǎn)服務(wù)器的IIS日志,了解生產(chǎn)系統的使用情況和流量,及時(shí)發(fā)現系統問(wèn)題。不過(guò)LogParser是命令行格式,所以有一個(gè)圖形界面的Log Parser Studio日志分析軟件。
  首先下載Log Parser Studio軟件,下載地址,下載完成后直接解壓,運行文件夾中的文件LPS.exe程序。
  
  運行后會(huì )給出LogParser的下載地址,然后下載LogParser并安裝到系統中,然后再次運行LPS.exe。
  運行后,需要先指定IIS日志文件的路徑。您可以選擇整個(gè)目錄或單獨的文件。
  選擇完成后,單擊“創(chuàng )建新查詢(xún)”按鈕單獨執行查詢(xún)。查詢(xún)語(yǔ)句與SQL語(yǔ)法相同,非常方便。
  
  設置日志類(lèi)型,對于 網(wǎng)站,使用 IISW3CLOG。
  然后單擊“執行活動(dòng)查詢(xún)”按鈕執行查詢(xún)。如果日志文件比較大,查詢(xún)速度會(huì )比較慢,需要優(yōu)化SQL語(yǔ)句。
  總的來(lái)說(shuō),Log Parser Studio 是一款功能強大的 IIS 圖形分析工具,值得網(wǎng)站管理員使用。 查看全部

  最新版本:Typecho高性能優(yōu)化之緩存插件
  使用場(chǎng)景
  盡管 HP typecho 非常高效,但為了提高網(wǎng)站的并發(fā)性,頁(yè)面的靜態(tài)緩存是必要的。這個(gè)緩存插件的目的只是為了緩存主頁(yè)以減少對數據庫的壓力。
  提醒:更有效和更靈活的緩存方法應該使用 nginx 而不是插件。如果你有nginx基礎,可以參考這里的配置
  插件配置
  
  第一:?jiǎn)⒂眠@個(gè)插件。然后,配置插件
  第一:配置文件緩存路徑,可以指定相對或絕對位置。
  第二:配置緩存時(shí)間,單位為秒,請根據自己的需要配置。
  
  應當指出的是
  因為插件使用了簡(jiǎn)單的文件緩存機制,所以請確保緩存路徑所在的分區有足夠的空間和足夠的inode節點(diǎn)。
  后臺文章更新后,緩存不會(huì )自動(dòng)更新(實(shí)現起來(lái)很麻煩,所以這個(gè)版本暫時(shí)沒(méi)有實(shí)現這個(gè)功能)。這一點(diǎn)尤為重要,所以請適當配置緩存過(guò)期時(shí)間。
  下載鏈接
  最新版本:Windows IIS日志文件分析神器
  Windows Server 具有事件日志功能,其 IIS 日志文件記錄以下信息:誰(shuí)訪(fǎng)問(wèn)了您的站點(diǎn),訪(fǎng)問(wèn)者查看了哪些內容等。通過(guò)定期檢查這些日志文件,網(wǎng)站管理員可以檢測服務(wù)器或站點(diǎn)的哪些方面易受攻擊或有其他安全隱患。
  但是目前的日志分析工具還不是很完善,有些功能還沒(méi)有,特別是針對特定需求的分析很難實(shí)現。這里有一個(gè)日志分析神器,可以像使用SQL軟件一樣,以個(gè)性化的方式分析日志。
  LogParser 是一個(gè)命令行工具,可以通過(guò) SQL 語(yǔ)句對日志進(jìn)行分析和統計。您可以定期分析生產(chǎn)服務(wù)器的IIS日志,了解生產(chǎn)系統的使用情況和流量,及時(shí)發(fā)現系統問(wèn)題。不過(guò)LogParser是命令行格式,所以有一個(gè)圖形界面的Log Parser Studio日志分析軟件。
  首先下載Log Parser Studio軟件,下載地址,下載完成后直接解壓,運行文件夾中的文件LPS.exe程序。
  
  運行后會(huì )給出LogParser的下載地址,然后下載LogParser并安裝到系統中,然后再次運行LPS.exe。
  運行后,需要先指定IIS日志文件的路徑。您可以選擇整個(gè)目錄或單獨的文件。
  選擇完成后,單擊“創(chuàng )建新查詢(xún)”按鈕單獨執行查詢(xún)。查詢(xún)語(yǔ)句與SQL語(yǔ)法相同,非常方便。
  
  設置日志類(lèi)型,對于 網(wǎng)站,使用 IISW3CLOG。
  然后單擊“執行活動(dòng)查詢(xún)”按鈕執行查詢(xún)。如果日志文件比較大,查詢(xún)速度會(huì )比較慢,需要優(yōu)化SQL語(yǔ)句。
  總的來(lái)說(shuō),Log Parser Studio 是一款功能強大的 IIS 圖形分析工具,值得網(wǎng)站管理員使用。

優(yōu)化的解決方案:Kafka+flume實(shí)時(shí)采集數據

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 119 次瀏覽 ? 2022-11-09 08:27 ? 來(lái)自相關(guān)話(huà)題

  優(yōu)化的解決方案:Kafka+flume實(shí)時(shí)采集數據
  一、模擬日志的生成在
  IDEA 的資源文件夾下創(chuàng )建一個(gè)新的 log4j.properties 來(lái)定義日志格式,其中可以查看 flume 和 log4j 的集成配置
  #設置日志格式
log4j.rootCategory=ERROR,console,flume
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.target=System.err
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d{yy/MM/dd HH:mm:ss} %p %c{1}: %m%n
#flume和log4j整合
log4j.appender.flume = org.apache.flume.clients.log4jappender.Log4jAppender
log4j.appender.flume.Hostname = 192.168.116.10
log4j.appender.flume.Port = 41414
log4j.appender.flume.UnsafeMode = true
  使用 Java 的 log4j 模擬生成日志
  import org.apache.log4j.Logger;
public class LoggerGenerator {
private static Logger logger=Logger.getLogger(LoggerGenerator.class.getName());
public static void main(String[] args)throws Exception{
int i=0;
while (1==1){
Thread.sleep(1000);
logger.info("now is "+i);
i++;
}
}
}
  
  具體的依賴(lài)和配置過(guò)程可以查看Flume遠程實(shí)時(shí)采集windows生成的log4j生成的數據
  二、配置水槽
  1. 配置
  1.1 配置弗魯梅卡夫卡
  我在這里使用Flume版本為1.6,所以寫(xiě)作與官方網(wǎng)站不同。如果啟動(dòng) flume 時(shí)出現錯誤 .producer.requiredAcks=1, channel=c2, ic=streaming, type=org.apache.flume.sink.kafka.KafkaSink} }
  2018-12-29 06:17:26,698 (conf-file-poller-0) [錯誤 - org.apache.flume.node.AbstractConfigurationProvider.loadSinks(AbstractConfigurationProvider.java:427)] 由于配置過(guò)程中出現錯誤,接收器 k2 已被刪除
  org.apache.flume.conf.ConfigurationException: brokerList 必須至少收錄一個(gè) Kafka 代理
  它應該是由水槽版本的不同配置引起的。
  #命名代理
b1.sources = r2
b1.sinks = k2
b1.channels = c2
# 配置監控文件
b1.sources.r2.type =avro
b1.sources.r2.bind=0.0.0.0
b1.sources.r2.port = 41414
#b1.sources.r2.interceptors = i1
#b1.sources.r2.interceptors.i1.type = timestamp
# 配置sink
b1.sinks.k2.type =org.apache.flume.sink.kafka.KafkaSink
b1.sinks.k2.topic = streaming
b1.sinks.k2.brokerList= 192.168.116.10:9092
#b1.sinks.k2.kafka.bootstrap.servers = 192.168.116.10:9092
b1.sinks.k2.producer.requiredAcks = 1
b1.sinks.k2.batchSize = 20
# 配置channel
b1.channels.c2.type = memory
# 將三者串聯(lián)
b1.sources.r2.channels = c2
b1.sinks.k2.channel = c2
  
  這里的本地配置有點(diǎn)復雜,具體配置可以在官網(wǎng)看到
  1.3 啟動(dòng)水槽
  你可以在命令行中輸入 flume-ng 查看 help 命令,我的啟動(dòng)腳本是
  水槽-卡夫卡:flume-ng agent -n b1 -c /usr/local/src/apache-flume-1.6.0-bin/conf -
  f /usr/local/src/apache-flume-1.6.0-bin/conf/flumekafka.conf -Dflume.root.logger=INFO,console
  flume-ng agent -n a1-c $FLUME_HOME/conf -f $FLUME_HOME/conf/streaming.conf-Dflume.root.logger=INFO,console >> /usr/tmp/flume/1.log & (background startup).
  配置 Kafka
  1. 啟動(dòng)動(dòng)物園管理員
  在每臺機器的 zookeeper 的 bin 目錄中輸入 ./zkServer.sh start
  2. 以后臺形式啟動(dòng)卡夫卡
  在每臺機器上 kafka 安裝目錄的 bin 目錄中,鍵入:kafka-server-start.sh -daemon $KAFKA_HOME/config/server.properties &
  確保Zookeeper和Kafka都已經(jīng)啟動(dòng)
  3. 創(chuàng )建新主題3.1 創(chuàng )建新主題: kafka-topics.sh --創(chuàng )建 --動(dòng)物園管理員主:2181,從1:2181
  ,從2:2181 --復制因子 1 --分區 1 --主題流
  如果出現錯誤
  被報告為領(lǐng)導者報告錯誤:NOT_LEADER_FOR_PARTITION您可以轉到 Kafka 安裝目錄中 logs 文件夾下的服務(wù)器.log查看詳細錯誤。
  3.2 查看新創(chuàng )建的主題 kafka-topics.sh --描述 --動(dòng)物園管理員主:2181,從1:2181,從2:2181 --主題流
  您還可以按 kafka-topics.sh 查看所有主題 --list --zookeeper master:2181,slave1:2181,slave2:2181
  如果要刪除主題,則需要將其輸入到動(dòng)物園管理員的bin文件夾中
  ./zkCli.sh 啟動(dòng)動(dòng)物園管理員客戶(hù)端
  ls /brokers/topics 查看有多少個(gè)主題
  rmr /brokers/topics/test 刪除測試主題
  3.3 打開(kāi)一個(gè)新窗口來(lái)啟動(dòng)消費者
  kafka-console-consumer.sh --動(dòng)物園管理員主:2181,從1:2181,從2:2181 --主題流
  此時(shí),先啟動(dòng)水槽,然后啟動(dòng)IEDA的日志模擬器
  等待生成 20(在水槽中設置 batch20)以查看日志是否已消耗。
  查看博客水槽的實(shí)際應用
  解決方案:IP地址定位技術(shù)之基礎數據采集
  IP地理定位定位技術(shù)包括四大關(guān)鍵技術(shù):基礎數據采集、硬件系統建設、應用場(chǎng)景劃分和定位系統研發(fā)。
  
  基礎數據采集為IP地理位置定位技術(shù)的研究提供基礎數據支撐,是IP地址定位的基礎工作和關(guān)鍵技術(shù)。首先,根據不同的數據采集規律,針對不同數據源的不同數據格式,研究并實(shí)現一套自動(dòng)化智能數據采集技術(shù);其次,對采集數據進(jìn)行篩選、清洗和挖掘,形成基礎數據庫,為系統提供基礎數據支撐。
  基礎數據采集的研究?jì)热莅ù_定數據來(lái)源(如Whois開(kāi)放數據等)、分析數據采集的方法(如
  網(wǎng)絡(luò )爬蟲(chóng)、數據交換、地面采集等)、各種數據采集方法的可行性分析和實(shí)現,確定采集數據的屬性值(如地理位置、經(jīng)緯度、載體等)、數據清洗方法、數據正確性驗證步驟、底層數據的迭代更新過(guò)程等。
  
  為了保證數據質(zhì)量和數據豐富性,系統針對不同的數據源,通過(guò)三種方式獲取基礎數據,即數據挖掘、數據獲取和地面采集。數據挖掘是指通過(guò)網(wǎng)絡(luò )爬蟲(chóng)從APNIC網(wǎng)站、BGP網(wǎng)站、地圖網(wǎng)站等特定網(wǎng)頁(yè)獲取IP和地理位置信息。數據采購是指從能夠提供基礎數據的公司獲取數據,如本地服務(wù)網(wǎng)站、在線(xiàn)出租車(chē)網(wǎng)站等;地面采集是指利用自主研發(fā)的數據采集軟件進(jìn)行人工現場(chǎng)數據采集。
  數據采集技術(shù)已經(jīng)存在于許多開(kāi)源第三方框架中,例如Scrapy,Nutch,Crawler4j,WebMagic等。數據挖掘算法,如支持向量機SVM、K-Means等,得到了廣泛的應用。 查看全部

  優(yōu)化的解決方案:Kafka+flume實(shí)時(shí)采集數據
  一、模擬日志的生成在
  IDEA 的資源文件夾下創(chuàng )建一個(gè)新的 log4j.properties 來(lái)定義日志格式,其中可以查看 flume 和 log4j 的集成配置
  #設置日志格式
log4j.rootCategory=ERROR,console,flume
log4j.appender.console=org.apache.log4j.ConsoleAppender
log4j.appender.console.target=System.err
log4j.appender.console.layout=org.apache.log4j.PatternLayout
log4j.appender.console.layout.ConversionPattern=%d{yy/MM/dd HH:mm:ss} %p %c{1}: %m%n
#flume和log4j整合
log4j.appender.flume = org.apache.flume.clients.log4jappender.Log4jAppender
log4j.appender.flume.Hostname = 192.168.116.10
log4j.appender.flume.Port = 41414
log4j.appender.flume.UnsafeMode = true
  使用 Java 的 log4j 模擬生成日志
  import org.apache.log4j.Logger;
public class LoggerGenerator {
private static Logger logger=Logger.getLogger(LoggerGenerator.class.getName());
public static void main(String[] args)throws Exception{
int i=0;
while (1==1){
Thread.sleep(1000);
logger.info("now is "+i);
i++;
}
}
}
  
  具體的依賴(lài)和配置過(guò)程可以查看Flume遠程實(shí)時(shí)采集windows生成的log4j生成的數據
  二、配置水槽
  1. 配置
  1.1 配置弗魯梅卡夫卡
  我在這里使用Flume版本為1.6,所以寫(xiě)作與官方網(wǎng)站不同。如果啟動(dòng) flume 時(shí)出現錯誤 .producer.requiredAcks=1, channel=c2, ic=streaming, type=org.apache.flume.sink.kafka.KafkaSink} }
  2018-12-29 06:17:26,698 (conf-file-poller-0) [錯誤 - org.apache.flume.node.AbstractConfigurationProvider.loadSinks(AbstractConfigurationProvider.java:427)] 由于配置過(guò)程中出現錯誤,接收器 k2 已被刪除
  org.apache.flume.conf.ConfigurationException: brokerList 必須至少收錄一個(gè) Kafka 代理
  它應該是由水槽版本的不同配置引起的。
  #命名代理
b1.sources = r2
b1.sinks = k2
b1.channels = c2
# 配置監控文件
b1.sources.r2.type =avro
b1.sources.r2.bind=0.0.0.0
b1.sources.r2.port = 41414
#b1.sources.r2.interceptors = i1
#b1.sources.r2.interceptors.i1.type = timestamp
# 配置sink
b1.sinks.k2.type =org.apache.flume.sink.kafka.KafkaSink
b1.sinks.k2.topic = streaming
b1.sinks.k2.brokerList= 192.168.116.10:9092
#b1.sinks.k2.kafka.bootstrap.servers = 192.168.116.10:9092
b1.sinks.k2.producer.requiredAcks = 1
b1.sinks.k2.batchSize = 20
# 配置channel
b1.channels.c2.type = memory
# 將三者串聯(lián)
b1.sources.r2.channels = c2
b1.sinks.k2.channel = c2
  
  這里的本地配置有點(diǎn)復雜,具體配置可以在官網(wǎng)看到
  1.3 啟動(dòng)水槽
  你可以在命令行中輸入 flume-ng 查看 help 命令,我的啟動(dòng)腳本是
  水槽-卡夫卡:flume-ng agent -n b1 -c /usr/local/src/apache-flume-1.6.0-bin/conf -
  f /usr/local/src/apache-flume-1.6.0-bin/conf/flumekafka.conf -Dflume.root.logger=INFO,console
  flume-ng agent -n a1-c $FLUME_HOME/conf -f $FLUME_HOME/conf/streaming.conf-Dflume.root.logger=INFO,console >> /usr/tmp/flume/1.log & (background startup).
  配置 Kafka
  1. 啟動(dòng)動(dòng)物園管理員
  在每臺機器的 zookeeper 的 bin 目錄中輸入 ./zkServer.sh start
  2. 以后臺形式啟動(dòng)卡夫卡
  在每臺機器上 kafka 安裝目錄的 bin 目錄中,鍵入:kafka-server-start.sh -daemon $KAFKA_HOME/config/server.properties &
  確保Zookeeper和Kafka都已經(jīng)啟動(dòng)
  3. 創(chuàng )建新主題3.1 創(chuàng )建新主題: kafka-topics.sh --創(chuàng )建 --動(dòng)物園管理員主:2181,從1:2181
  ,從2:2181 --復制因子 1 --分區 1 --主題流
  如果出現錯誤
  被報告為領(lǐng)導者報告錯誤:NOT_LEADER_FOR_PARTITION您可以轉到 Kafka 安裝目錄中 logs 文件夾下的服務(wù)器.log查看詳細錯誤。
  3.2 查看新創(chuàng )建的主題 kafka-topics.sh --描述 --動(dòng)物園管理員主:2181,從1:2181,從2:2181 --主題流
  您還可以按 kafka-topics.sh 查看所有主題 --list --zookeeper master:2181,slave1:2181,slave2:2181
  如果要刪除主題,則需要將其輸入到動(dòng)物園管理員的bin文件夾中
  ./zkCli.sh 啟動(dòng)動(dòng)物園管理員客戶(hù)端
  ls /brokers/topics 查看有多少個(gè)主題
  rmr /brokers/topics/test 刪除測試主題
  3.3 打開(kāi)一個(gè)新窗口來(lái)啟動(dòng)消費者
  kafka-console-consumer.sh --動(dòng)物園管理員主:2181,從1:2181,從2:2181 --主題流
  此時(shí),先啟動(dòng)水槽,然后啟動(dòng)IEDA的日志模擬器
  等待生成 20(在水槽中設置 batch20)以查看日志是否已消耗。
  查看博客水槽的實(shí)際應用
  解決方案:IP地址定位技術(shù)之基礎數據采集
  IP地理定位定位技術(shù)包括四大關(guān)鍵技術(shù):基礎數據采集、硬件系統建設、應用場(chǎng)景劃分和定位系統研發(fā)。
  
  基礎數據采集為IP地理位置定位技術(shù)的研究提供基礎數據支撐,是IP地址定位的基礎工作和關(guān)鍵技術(shù)。首先,根據不同的數據采集規律,針對不同數據源的不同數據格式,研究并實(shí)現一套自動(dòng)化智能數據采集技術(shù);其次,對采集數據進(jìn)行篩選、清洗和挖掘,形成基礎數據庫,為系統提供基礎數據支撐。
  基礎數據采集的研究?jì)热莅ù_定數據來(lái)源(如Whois開(kāi)放數據等)、分析數據采集的方法(如
  網(wǎng)絡(luò )爬蟲(chóng)、數據交換、地面采集等)、各種數據采集方法的可行性分析和實(shí)現,確定采集數據的屬性值(如地理位置、經(jīng)緯度、載體等)、數據清洗方法、數據正確性驗證步驟、底層數據的迭代更新過(guò)程等。
  
  為了保證數據質(zhì)量和數據豐富性,系統針對不同的數據源,通過(guò)三種方式獲取基礎數據,即數據挖掘、數據獲取和地面采集。數據挖掘是指通過(guò)網(wǎng)絡(luò )爬蟲(chóng)從APNIC網(wǎng)站、BGP網(wǎng)站、地圖網(wǎng)站等特定網(wǎng)頁(yè)獲取IP和地理位置信息。數據采購是指從能夠提供基礎數據的公司獲取數據,如本地服務(wù)網(wǎng)站、在線(xiàn)出租車(chē)網(wǎng)站等;地面采集是指利用自主研發(fā)的數據采集軟件進(jìn)行人工現場(chǎng)數據采集。
  數據采集技術(shù)已經(jīng)存在于許多開(kāi)源第三方框架中,例如Scrapy,Nutch,Crawler4j,WebMagic等。數據挖掘算法,如支持向量機SVM、K-Means等,得到了廣泛的應用。

匯總:實(shí)時(shí)抓取網(wǎng)頁(yè)數據(網(wǎng)頁(yè)抓取視頻)

采集交流 ? 優(yōu)采云 發(fā)表了文章 ? 0 個(gè)評論 ? 142 次瀏覽 ? 2022-11-08 17:30 ? 來(lái)自相關(guān)話(huà)題

  匯總:實(shí)時(shí)抓取網(wǎng)頁(yè)數據(網(wǎng)頁(yè)抓取視頻)
  目錄:
  1.如何實(shí)時(shí)抓取網(wǎng)頁(yè)數據
  網(wǎng)絡(luò )數據采集軟件,今天給大家分享這款免費的網(wǎng)絡(luò )數據采集軟件。只要點(diǎn)擊鼠標,即可輕松獲取任意網(wǎng)頁(yè)數據,所見(jiàn)即所得的運行模式!監控采集:設置監控目標網(wǎng)站。目標網(wǎng)站只要有新內容,立馬入庫采集!
  2.網(wǎng)絡(luò )視頻采集網(wǎng)站
  相信很多人都使用過(guò)網(wǎng)頁(yè)數據采集軟件來(lái)實(shí)現自動(dòng)SEO優(yōu)化排名,因為每個(gè)站長(cháng)必須花費最多的時(shí)間在文章內容上,有了這個(gè)網(wǎng)頁(yè)數據采集軟件沒(méi)有不用擔心網(wǎng)站沒(méi)有內容填寫(xiě)自媒體人事網(wǎng)頁(yè)資料采集軟件再也不用擔心沒(méi)有文章資料(軟件還貼心配備關(guān)鍵詞文章采集,只需輸入關(guān)鍵詞即可實(shí)現全網(wǎng)文章采集)。
  
  3.免費抓取網(wǎng)頁(yè)數據
  搜索引擎優(yōu)化 (SEO),對于 網(wǎng)站 運營(yíng)商來(lái)說(shuō)一定不陌生。SEO不僅僅是在百度和谷歌等搜索引擎中獲得更好的排名以贏(yíng)得更多訪(fǎng)問(wèn)者。也適用于其他平臺,只要有搜索就可以進(jìn)行SEO優(yōu)化。
  4.網(wǎng)絡(luò )視頻采集
  通常,我們需要分析和了解搜索引擎的排名規則,各種搜索引擎如何進(jìn)行搜索,如何抓取互聯(lián)網(wǎng)頁(yè)面,如何確定具體關(guān)鍵詞搜索結果的排名,然后進(jìn)行針對性的優(yōu)化。
  5.網(wǎng)頁(yè)獲取視頻
  關(guān)鍵詞研究與搜索引擎優(yōu)化息息相關(guān),即關(guān)鍵詞優(yōu)化如果網(wǎng)站想在搜索引擎中獲得好的排名,那么你必須知道如何分析有效客戶(hù),這樣才能計劃和產(chǎn)品的選擇關(guān)鍵詞關(guān)鍵詞往往會(huì )影響企業(yè)在網(wǎng)絡(luò )市場(chǎng)的競爭力,所以關(guān)鍵詞的選擇必須突出,并遵循一定的原則,例如: .
  
  6. 獲取 網(wǎng)站 數據
  關(guān)鍵詞有大量的搜索量(有價(jià)值的搜索量詞會(huì )根據業(yè)務(wù)和術(shù)語(yǔ)的意圖而有所不同)關(guān)鍵詞涉及到網(wǎng)站主題和產(chǎn)品,而不僅僅是追求熱詞
  7. 從網(wǎng)頁(yè)抓取視頻
  關(guān)鍵詞并不是憑空出現的,它們往往存在于網(wǎng)站內容中,所以我們需要從以下幾個(gè)方面對網(wǎng)站上發(fā)布的內容進(jìn)行優(yōu)化,包括:頁(yè)面標題、描述具體內容關(guān)鍵詞內容形式的多樣化和比例以及在關(guān)鍵詞中可以涉及到各種內容,標題是最重要的,為什么?因為用戶(hù)會(huì )根據標題來(lái)判斷內容是否是他正在尋找的答案,或者是否引起了他的興趣。
  8.如何抓取網(wǎng)頁(yè)數據
  因此,將您選擇的最佳關(guān)鍵字巧妙地埋在標題中是非常重要的。當然,你不能僅僅為了欺騙點(diǎn)擊而賣(mài)狗肉。長(cháng)此以往,不僅用戶(hù)會(huì )失去對你的網(wǎng)站的信任,搜索引擎也會(huì )對網(wǎng)站的整體情況留下不良記錄,結果適得其反。的后果。
  主題測試文章,僅供測試使用。發(fā)布者:小編,轉載請注明出處:
  官方數據:如何采集網(wǎng)站數據wps怎么自動(dòng)采集網(wǎng)站上的數據
  網(wǎng)站如何登錄數據采集登錄網(wǎng)站訪(fǎng)問(wèn)網(wǎng)頁(yè)時(shí)網(wǎng)站會(huì )驗證cookie信息判斷當前用戶(hù)是否登錄,所以在采集當這種類(lèi)型的網(wǎng)站數據時(shí),需要同步發(fā)送cookie數據,保證網(wǎng)站驗證cookie能夠成功。
  
  餅干是怎么來(lái)的?可以使用抓包工具,然后打開(kāi)瀏覽器實(shí)現目標采集網(wǎng)站的登錄操作,然后將抓包工具中記錄的cookie復制粘貼到采集你正在使用的軟件中,或者使用采集軟件直接實(shí)現登錄操作。
  如果登錄遇到驗證碼,自動(dòng)化登錄操作會(huì )比較困難。除非你去自動(dòng)編碼,否則你會(huì )花錢(qián)??傊褪遣杉卿浘W(wǎng)站,如何使用cookies采集網(wǎng)頁(yè)上的指定數據是根據你說(shuō)的,推薦使用網(wǎng)頁(yè)采集器 完成。
  
  讓我告訴你優(yōu)采云采集器如何實(shí)現你的需求 1.輸入條件,通常是過(guò)濾條件,在優(yōu)采云,你可以點(diǎn)擊自動(dòng)形成,然后添加命令 2.生成Excel,優(yōu)采云可以導出到Excel 3。輸入是有規律的,可能需要你手動(dòng)構造一批url 4.應該和1一樣。
  如果想采用wps如何自動(dòng)采集網(wǎng)站,建議使用微軟office的Excel表格獲取網(wǎng)站上面的數據: 1.用微軟打開(kāi)Excel表格office,點(diǎn)擊【數據】,【獲取外部數據】,【來(lái)自網(wǎng)站】;2、輸入網(wǎng)址后,點(diǎn)擊【Go】,數據出來(lái)后點(diǎn)擊【Import】。 查看全部

  匯總:實(shí)時(shí)抓取網(wǎng)頁(yè)數據(網(wǎng)頁(yè)抓取視頻)
  目錄:
  1.如何實(shí)時(shí)抓取網(wǎng)頁(yè)數據
  網(wǎng)絡(luò )數據采集軟件,今天給大家分享這款免費的網(wǎng)絡(luò )數據采集軟件。只要點(diǎn)擊鼠標,即可輕松獲取任意網(wǎng)頁(yè)數據,所見(jiàn)即所得的運行模式!監控采集:設置監控目標網(wǎng)站。目標網(wǎng)站只要有新內容,立馬入庫采集!
  2.網(wǎng)絡(luò )視頻采集網(wǎng)站
  相信很多人都使用過(guò)網(wǎng)頁(yè)數據采集軟件來(lái)實(shí)現自動(dòng)SEO優(yōu)化排名,因為每個(gè)站長(cháng)必須花費最多的時(shí)間在文章內容上,有了這個(gè)網(wǎng)頁(yè)數據采集軟件沒(méi)有不用擔心網(wǎng)站沒(méi)有內容填寫(xiě)自媒體人事網(wǎng)頁(yè)資料采集軟件再也不用擔心沒(méi)有文章資料(軟件還貼心配備關(guān)鍵詞文章采集,只需輸入關(guān)鍵詞即可實(shí)現全網(wǎng)文章采集)。
  
  3.免費抓取網(wǎng)頁(yè)數據
  搜索引擎優(yōu)化 (SEO),對于 網(wǎng)站 運營(yíng)商來(lái)說(shuō)一定不陌生。SEO不僅僅是在百度和谷歌等搜索引擎中獲得更好的排名以贏(yíng)得更多訪(fǎng)問(wèn)者。也適用于其他平臺,只要有搜索就可以進(jìn)行SEO優(yōu)化。
  4.網(wǎng)絡(luò )視頻采集
  通常,我們需要分析和了解搜索引擎的排名規則,各種搜索引擎如何進(jìn)行搜索,如何抓取互聯(lián)網(wǎng)頁(yè)面,如何確定具體關(guān)鍵詞搜索結果的排名,然后進(jìn)行針對性的優(yōu)化。
  5.網(wǎng)頁(yè)獲取視頻
  關(guān)鍵詞研究與搜索引擎優(yōu)化息息相關(guān),即關(guān)鍵詞優(yōu)化如果網(wǎng)站想在搜索引擎中獲得好的排名,那么你必須知道如何分析有效客戶(hù),這樣才能計劃和產(chǎn)品的選擇關(guān)鍵詞關(guān)鍵詞往往會(huì )影響企業(yè)在網(wǎng)絡(luò )市場(chǎng)的競爭力,所以關(guān)鍵詞的選擇必須突出,并遵循一定的原則,例如: .
  
  6. 獲取 網(wǎng)站 數據
  關(guān)鍵詞有大量的搜索量(有價(jià)值的搜索量詞會(huì )根據業(yè)務(wù)和術(shù)語(yǔ)的意圖而有所不同)關(guān)鍵詞涉及到網(wǎng)站主題和產(chǎn)品,而不僅僅是追求熱詞
  7. 從網(wǎng)頁(yè)抓取視頻
  關(guān)鍵詞并不是憑空出現的,它們往往存在于網(wǎng)站內容中,所以我們需要從以下幾個(gè)方面對網(wǎng)站上發(fā)布的內容進(jìn)行優(yōu)化,包括:頁(yè)面標題、描述具體內容關(guān)鍵詞內容形式的多樣化和比例以及在關(guān)鍵詞中可以涉及到各種內容,標題是最重要的,為什么?因為用戶(hù)會(huì )根據標題來(lái)判斷內容是否是他正在尋找的答案,或者是否引起了他的興趣。
  8.如何抓取網(wǎng)頁(yè)數據
  因此,將您選擇的最佳關(guān)鍵字巧妙地埋在標題中是非常重要的。當然,你不能僅僅為了欺騙點(diǎn)擊而賣(mài)狗肉。長(cháng)此以往,不僅用戶(hù)會(huì )失去對你的網(wǎng)站的信任,搜索引擎也會(huì )對網(wǎng)站的整體情況留下不良記錄,結果適得其反。的后果。
  主題測試文章,僅供測試使用。發(fā)布者:小編,轉載請注明出處:
  官方數據:如何采集網(wǎng)站數據wps怎么自動(dòng)采集網(wǎng)站上的數據
  網(wǎng)站如何登錄數據采集登錄網(wǎng)站訪(fǎng)問(wèn)網(wǎng)頁(yè)時(shí)網(wǎng)站會(huì )驗證cookie信息判斷當前用戶(hù)是否登錄,所以在采集當這種類(lèi)型的網(wǎng)站數據時(shí),需要同步發(fā)送cookie數據,保證網(wǎng)站驗證cookie能夠成功。
  
  餅干是怎么來(lái)的?可以使用抓包工具,然后打開(kāi)瀏覽器實(shí)現目標采集網(wǎng)站的登錄操作,然后將抓包工具中記錄的cookie復制粘貼到采集你正在使用的軟件中,或者使用采集軟件直接實(shí)現登錄操作。
  如果登錄遇到驗證碼,自動(dòng)化登錄操作會(huì )比較困難。除非你去自動(dòng)編碼,否則你會(huì )花錢(qián)??傊褪遣杉卿浘W(wǎng)站,如何使用cookies采集網(wǎng)頁(yè)上的指定數據是根據你說(shuō)的,推薦使用網(wǎng)頁(yè)采集器 完成。
  
  讓我告訴你優(yōu)采云采集器如何實(shí)現你的需求 1.輸入條件,通常是過(guò)濾條件,在優(yōu)采云,你可以點(diǎn)擊自動(dòng)形成,然后添加命令 2.生成Excel,優(yōu)采云可以導出到Excel 3。輸入是有規律的,可能需要你手動(dòng)構造一批url 4.應該和1一樣。
  如果想采用wps如何自動(dòng)采集網(wǎng)站,建議使用微軟office的Excel表格獲取網(wǎng)站上面的數據: 1.用微軟打開(kāi)Excel表格office,點(diǎn)擊【數據】,【獲取外部數據】,【來(lái)自網(wǎng)站】;2、輸入網(wǎng)址后,點(diǎn)擊【Go】,數據出來(lái)后點(diǎn)擊【Import】。

官方客服QQ群

微信人工客服

QQ人工客服


線(xiàn)

最近中文字幕2019高清,亚洲人成高清在线播放,男生淦哭男生图片动漫有字,国产亚洲精品九九久在线观看,无码av专区丝袜专区