主頁 > 資料庫 > 基于深度學習的三維語意理解(分割)綜述串列

基于深度學習的三維語意理解(分割)綜述串列

2020-10-03 17:06:38 資料庫

基于深度學習的三維語意理解(分割)綜述串列

文章目錄

  • 基于深度學習的三維語意理解(分割)綜述串列
  • 前言
  • 基于深度學習的三維語意理解(分割)綜述串列
    • 一、 從三維模型中進行深度學習
      • 1.1基于點云的方法
      • 1.2基于體素的方法
      • 1.3基于mesh的方法
    • 二、多模態融合的方法
          • Frustum-based Mthods
      • 2.1緊耦合
      • 2.2松耦合
  • 總結


前言

隨著2016年pointnet的發表,三維空間中的語音理解逐漸進入了爆發式的增長,本文對至今一些優秀的文章進行部分整理,

基于深度學習的三維語意理解(分割)綜述串列

一、 從三維模型中進行深度學習

1.1基于點云的方法

  1. 基于多視圖
    (1)MVCNN(Su et al )(2015)
    (2)MHBN(Yu et al)(2018)
    (3)View-GCN(Wei et al)(2020)
    (4)SnapNet(Boulch et al)(2017)(可分割)
    (5)DeepPr3SS(Lawin et al)(2017)(可分割)
    (6)TangentConv(Tatarchenko ta al)(2018)(可分割)
    (7)MV3D(Chen et al.)(2017)
    (8)RT3D(Zeng et al )(2018)
    (9)ContFuse(Liang et al)(2018)
    (10)AVOD(Ku et al)(2018)
    (11)SCANet(Lu et al )(2019)
    (12)MMF(Liang et al)(2019)

注:
基于BEV的方法: (且是single shot methods)
(1)PIXOR(Yang et al)(2018)
(2)HDNET(Yang et al)(2018)
(3)BirdNet(Beltran et al.)(2018)
(4)PointPillars(Lang et al.)(2019) (被引250+)

工業界的文章,速度極快的提升了 ,
作者寫作的出發點: 對三維點云進行實時檢測的一種方法,
本文貢獻:
提出了一種端到端的網路,利用原始的三維點云資料,,在不丟失三維資訊的同時,將點云資料轉換為pillars,然后通過一種新穎的編碼器,將這種資料轉換為一種偽二維影像(一種三維張量)然后再這種偽二維資料中,進行大量的CNN,來完成高速,實時的檢測任務,
關鍵點:在三維點云上的BEV轉換成的pillars;將pillars轉換為偽二維影像;利用CNN進行深度學習;速度極快,可以達到105Hz,
網路架構:
在這里插入圖片描述
三大步驟:
(1) Pillar Feature Net(生成偽影像)
首先在俯視圖的平面上打網格(H x W)的維度;然后對于每個網格所對應的柱子中的每一個點都取(x,y,z,r,x_c,y_c,z_c,x_p,y_p)9個維度,其中前三個為每個點的真實位置坐標,r為反射率,帶c下標的是點相對于柱子中心的偏差,帶p下標的是對點相對于網格中心的偏差,每個柱子中點多于N的進行采樣,少于N的進行填充0,于是就形成了一種三維張量pillars(D,N,P),其中D=9, N為點數(設定值),P為HW,
然后通過本文的編碼器,將pillars中的資料,進行資料轉換,用一個簡化的PointNet將D維轉換為C維(學習特征的一個小程序),變成(C,N,P)讓對N維方向上進行最大池化操作,使得其變為(C,P),此時P是H
W(BEV的網格解析度),此時我們又成了一個三維張量(H,W,C)一種偽二維影像,
(2)在偽影像上進行成熟的2維CNN操作,速度比三維卷積快了相當多,
(3)基于SSD的目標檢測頭進行bbox回歸,

(5)Point-GNN(Shi et al )(2020)

  1. 基于球形投影(Spherical)
    在這里插入圖片描述

圖片上方為球形投影的結果,下方是點云,
上方影像的每一行對應于從激光雷達的每個激光獲得的點,在此,影像中的最低行對應于激光雷達中的最低激光,是激光雷達附近最接近的環,如上所示,
投影不是及那個曲面進行簡單地展開,而是一個基于坐標系變換的程序,(將三維的點用圖片的形式來表示)
具體如何進行球面投影,可以參考https://blog.csdn.net/weixin_43199584/article/details/105260463

(1)SqueezeSeg(wu et al 2017)(可分割)

本文的核心貢獻,是對三維的點云進行預處理,將點云資料變換成圖片的形式來表示,然后利用成熟的二維卷積的方法來完成分割任務,

(2)SqueezeSeg22(Wu et al 2018)(可分割)
(3)RangeNet++(Milioto et al 2019)(可分割)

RangeNet++是以SqueezeSeg和SqueezeSegV2為基礎,都使用了點云的球面投影的方法,可以將點云資料轉換為可以支持很多成熟的二維影像處理方法的資料,(用圖片的方式來表示點云)(有效的將點云資料進行降維的方法),同時該方案計算量相對較小,適合于自動駕駛等領域進行實時處理,
處理流程:

  1. 將三維點云資料通過球投影的方式轉換為二維的表示方法,
  2. 在該二維的iamge上進行2D全卷積語意分割,
  3. 將分割成功的2D資訊轉換到3D點云上
  4. 對分割結果進行優化,
  1. MLP
    (1)PointNet(Qi et al)(2016)(可分割)

見https://blog.csdn.net/qq_41918369/article/details/108075239

(2)PointNet++(Qi et al)(2017)(可分割)

見https://blog.csdn.net/qq_41918369/article/details/108075239

(3)3DContextNet(Zeng et al.)(2017)(可分割)
(4)A-SCN(xie et al.)(2018)(可分割)
(5)PointSIFT(Jiang et al )(2018)(可分割)
(6)Engelman(Engleman et al)(2018)(可分割)
(7)PAT(Yang et al.)(2019)(可分割)
(8)LSANet(chen et al)(2019)(可分割)
(9)PointWeb(Zhao et al)(2019)(可分割)
(10)ShellNet(Zhang et al )(2019)(可分割)
(11)RandLA-Net(Hu et al)(2019)(可分割)
(12)Mo-Net(Joseph-Rivlin et al)(2018)
(13)SRN(Duan et al)(2019)
(14)JustLookUp(Lin et al)(2019)
(15)PointASNL(Yan et al)(2020)
(16)PointRCNN(Shi et al)(2019)

作者提出了一種三維物體檢測器pointRCNN,可以直接從原始的點云中檢測三維物體,(該網路為two-stage網路),stage-1直接從點云中生成多個粗略的3Dbox,stage-2,優化一階段的3Dbox并對每個box中的物體進行class分類,
stage-1:
先通過pointnet++對每個點的特征進行提取,然后通過點的特征,將所有的點分為前景點和背景點,并將背景點洗掉,同時在前景點上,對每個點都生成一個box,然后通過部分優化,留下,部分得分最高的box,
stage-2:
將stage-1中生成的部分精準的box進行標準化坐標變換,然后再通過區域的pointnet,進行區域特征的學習,得到區域的特征向量,再和全域的特征向量進行拼接,然后優化每個點的特征,然后重新生成一個最優的3D-box,同時完成class任務,

  1. 基于圖卷積網路的方法
    (1)SPG(Landrieu and Simonovski)(2017)(可分割)
    (2)SSP(Landrieu and Bussaha)(2019)(可分割)
    (3)DGCNN(Wang et al)(2018)(可分割)

本文貢獻:(1)EdgeConv在保證置換不變性的同事捕獲區域幾何資訊,
(2)DGCNN可以在動態更新圖的同事,在語意上將點聚合起來,
(3)EdgeConv可以遷入多個已有的多個點云處理框架中,
本文提出了一個新的神經網路模塊——EdgeConv.
EdgeConv的優點:(1)包含了區域鄰域的資訊,
(2)可以通過EdgeConv模塊的回圈使用,提取全域的形狀特征,
(3)在多層系統中,特征空間中的相對關系包含了語意特征,
EdgeConv的不足:EdgeConv考慮了點的坐標與領域點的距離,但是忽略了相鄰點之間的向量方向,最侄訓是損失了一部分的區域幾何資訊,
EdgeConv
首先提取中心點與臨近店之間的邊特征,再進行卷積操作,
具體步驟:
(1)先利用MLP對每個點提取一遍特征
(2)再利用多種方式將點和周圍點的特征進行融合,本文提出了四種融合方式,此處介紹一種,我個人認為最合理的一種方式:將中心點的特征,與中心點與K個臨近點之間的特征差進行串聯,然后輸入MLP中,這樣便融合了點之間的區域關系和點的全域特征,
作者認為PointNet++不足的原因: pointnet++在處理區域區域的點的時候未來保證置換不變性而導致過于獨立,這樣會忽視了點之間的集合相關資訊,導致一部分的資訊丟失,

(4)PyramNet(Kang and Liu.)(2019)(可分割)
(5)GACNet(Wang et al)(2019)(可分割)
(6)SPH3D-GCN(Lei et al)(2019)(可分割)
(7)HEPIN(Jiang et al )(2019)(可分割)
(8)DPAM(Liu et al.)(2019)(可分割)
(9)ECC(Simonovsky et al)(2017)
(10)KCNet(Shen et al.)(2017)
(11)FoldingNet(Yang et al.)(2017)
(12)AGCN(Li et al.)(2018)
(13)LocalSpecGCN(Wang et al )(2018)
(14)RGCNN(Te et al .)(2018)
(15)3DTI-Net(Pan et al )(2018)
(16)ClusterNet(Chen et al.)(2019)
(17)DPAM(Liu et al.)(2019)
(18)Grid-GCN(Xu et al.)(2020)
(19)DeepGCNs(2019)(可分割)

本文作者認為CNN(完美的應用歐氏距離的資料中)成功的原因在于:CNN可以設計并使用深層的網路結構,,但現在GCN(用來處理拓撲結構的資料)現階段只能處理2-3層的資料,(由于深層的GCN的Aggregate容易造成over
smooth問題,即節點間的feature難以區分),本文來探究能否也生成一個深層的GCN網路模型,

本文解決深度GCN出現的問題的方法,使用residual/dense connections 和DGCNN中的 edge conv
三種方法方法一同來克服了深度GCN中出現的問題,

  1. 基于點的卷積的方法
    (1)PointCNN(Li et al)(2018)(可分割)(被引400+)

本文的主要貢獻是:引入了一個新的運算方法X-Conv
本作者想要解決對無序的點云的卷積問題,作者的解決核心思路是:將無序的點云進行有序化變換,然后使用卷積的方法,進行特征提取,
作者的解決方案:使用空間變換網路(STN)從前一層的資料中提取K個點,預測一個K*K大小的轉置矩陣(X-transformation),用轉置矩陣對前一層的特征做變換,然后對變換后的特征用卷積,此外,同樣也在提取出k個近鄰后,將各個點轉換到區域坐標系,
PointCNN的優點:引數少,訓練時間短,比較優美

但pointconv作者認為該篇文章沒有實作置換不變性

X-Conv的具體程序看見周報筆記,

(2)MCCN(Hermosilla et al)(2018)(可分割)
(3)PointConv(Wu et al)(2018)(可分割)(被引150+)

作者的寫作出發點:作者通過對一維卷積和二維卷積的理解中,認為卷積主要由兩部分組成,(1)將目標點和周圍點都考慮進來,(K近鄰)(2)不同位置的點的輸入權重是不一樣的,所以本文是要解決如何得到一個關于不同K近鄰點的權重系數問題,(求解權重函式)
本文貢獻:
(1) 提出了一種新的三維卷積運算,pointconv,一種考慮密度的不斷跟新權重的網路,該網路最重要的創新是:可以有效地計算權重函式,
(2) 該網路能夠完全近似任何一組3D點上的3D連續卷積,
(3) 本文還提出了相應的反卷積操作PointDeconv,將特征傳播回原始解析度,像二維空間中一樣,使用全卷積網路能夠更精確的完成分割任務,
網路架構:
在這里插入圖片描述
(a) 是將全域坐標系下的全部點的坐標,轉換為以P為中心點后,轉化為區域坐標的程序,
(b) 中的上部分,是將(a)中轉化后的K近鄰點的區域坐標當做輸入,然后通過區域的多層感知器進行權重的訓練;下部分是將點的密度考慮進來,主要是處理點云采樣不均的問題.
注:(1)Pointconv中的MLP的權重在所有點之間是共享的,來保證排列不變性,
(2)作者為了證明pointconv是真正的卷積運算,作者還將2D影像中的所有像素轉換為具有2D坐標以及RGB值的點云格式,其分類結構可以和正常的影像的CNN媲美,
所以作者認為本篇文章既可以是三維場景中的CNN方法,

(4)ConvPoint(Boulch et al.)(2019)(可分割)
(5)A-CNN(Komarichev et al)(2019)(可分割)
(6)KPConv(Thomas et al)(2019)(可分割)
(7)InterpCNN(Mao et al)(2019)(可分割)
(8)DPC(Engelmann et al.)(2019)(可分割)
(9)SphericalCNN(Spherical)(2017)
(10)Point wise CNN(Hua et al)(2017)
(11)Tensor field Network(Thomas et al)(2018)
(12)Flex-Convolution(Groh et al.)(2018)
(13)PCNN(Matan et al.)(2018)
(14)SpiderCNN(Xu et al)(2018)
(15)MCCNN(Hermosilla et al)(2018)
(16)Geo-CNN(Lan et al)(2018)
(17)Ψ-CNN(Lei et al)(2019)
(18)LP-3DCNN(Kumawat et al.)(2019)
(19)RS-CNN(Liu et al.)(2019)
(20)KPConv(Thomas . Charles R. QI et al )(facebook ai )(2019)(被引150+)

(21)SFCNN(Rao et al.)(2019)
(22)DensePoint(Liu et al)(2019)
(23)ConvPoint(Boulch et al.)(2020)

  • (24) Associatively Segmenting Instances and Semantics in Point
    Clouds.(Wang et al.)(2019)(可分割)(被引50+)
    (26)4D Spatio-Temporal ConvNets: Minkowski Convolutional Neural Networks(choy et al )(2019)(被引50+)
    (27)Deep Hough Voting for 3D Object Detection in Point Clouds(Qi,et al. )(2019)(被參考100+)
    (28) Complexer-YOLO: Real-Time 3D Object Detection and Tracking on Semantic Point Clouds(semon et al)(2019)(被引32)
  1. 基于RNN的方法

回圈神經網路的本質是:像人一樣擁有記憶的能力,使得機器能夠聯系背景關系的陳述句,理解當 前單詞或者預陳述句的意思 現階段的RNN的各種變形還可以學習二維視頻資訊和三維視頻的資訊,
RNN與CNN的本質區別:CNN沒有記憶功能,它的輸出僅依賴于輸入和網路的權重值,但 RNN有記憶功能,他的輸出不僅依賴于當前的輸入,還依賴當前的記憶,
CNN的輸入是單一的圖片等單一性質的資料,而RNN的輸入是一個序列,一個隨時間變化的序列

(1)G+RCU(Engelam et al)(2018)(可分割)
(2)RSNet(Huang et al)(2018)(可分割)
(3)3P-RNN(Ye et al )(2018)(可分割)

本文的3P(Pointwise Pyramid Pooling)
也是先通過MLP來提取點云的特征,然后設定一個金字塔模型,對不同大小的區域的點云分別提取區域資訊(大區域,小區域,等)和全域資訊,然后獲得每個點的全部資訊,(此時每個點的特征為特征向量,)
再將特征向量放入雙向的RNN中,進行學習,然后通過全連接層來完成分割任務

(4)DARNet(Zhao et al )(2019)(可分割)
(5)PointRNN(Fan et al)(2018)

一個用來處理動態點云的深度學習網路,主要貢獻:本提出了PointRNN和其兩個變體,PointGRU、PointLSTM 都可以應用于移動點云的預測(結合給定點的歷史運動軌跡來預測點云的未來軌跡)動態點云學習
注:傳統的RNN是以一維向量作為輸入的,RNN的一些變體如Cubic
ConvLSTM可以用來對二維視頻進行深度學習,本文PointRNN是進一步的變體,可以對三維點云視頻(動態三維點云)進行深度學習

  1. 基于晶格的方法(Lattice)
    (1)LatticeNet(Rosu et al.)(2019)(可分割)

該網路可以在 (2)中晶格的基礎上可以實作大點云的有效處理

(2)SPLATNet(Su et al.)(2018)

本篇文章方法小眾,且文章難度
且同時pointNet、pointcnn處理起來復雜了一些,但相比于基于樹的點云處理網路相比,(樹的網路如OCNN都是講點云進行高效的組織化,然后再套用成熟的神經網路進行處理,一般不是end-to-end網路)但是本篇文章的方法把對點云的組織者一步驟放到了每一次卷積操作中,實作了end-to-end,
注;本文應用的bilateral convolution lays(BCLs)和permutohedra lattice 并非作者首創,
文章中BCL平滑地將輸入點映射到稀疏的格子上,在稀疏的點陣上執行卷積,然后將過濾后的信號平滑地插入到原始的輸入點上,主要分為: Splat、Convolve、Slice:
1.Splat: BCL首先將輸入特征結合到晶格
2.Convolve: BCL在這些點陣上進行卷積操作,(就像標準CNN一樣)
3.Slice:經過卷積后的信號插值(barycentric interpolation)投影回輸入信號,
注:該網路可以靈活地聯合處理處理多視圖影像和點云,
在這里插入圖片描述

  1. 有待閱讀后進行進一步分類
    (1)ShapeContexNet(Xie et al.)(2018)
    (2)PVNet(You et al.)(2018)
    (3)Point2Sequence(Liu et al )(2018)
    (4)PVRNet(You et al )(2018)
    (5)3DPointCapsNet(Zhao et al)(2018)
    (6)RCNet(Wu et al.)
    (7)PointDAN(Qin et al)(2019)

(8)3D FCN(Li et al.)(2017)
(9)Vote3Deep(Li et al.)(2017)
(10)VoxelNet(Zhou et al.)(2018)
(11)SECOND(Yan et al.)(2018)
(12)3DBN(Li et al)(2019)
(13)3DSSD(Yang et al.)(2020)

single shot methods

(14)LaserNet(Meyer et al)(2019)

(15)3D iou loss(Zhou et al)(2019)
(16)Part-A^2(Shi et al.)(2019)
(17)Fast Point RCNN(Chen et al.)(2019)
(18)VoteNet(QI et al.)(2019)

(19)LaserNet++(Mayer et al .)(2019)

(20)PV-RCNN(Shi et al )(2019)

(21)OHS(Chen et al.)(2019)

(22)ImVoteNet(Qi et al.)(2020)

(23)SA-SSD(He et al.)(2020)

1.2基于體素的方法

SECOND,PointPillar,Part-A^2

1.3基于mesh的方法

二、多模態融合的方法

(1)3DMV(Dai and NieBner)(2018)
(2)UPB(Chiang et al.)(2018)
(3)MVPNet(Jaritz et al.)(2019)

Frustum-based Mthods

(1)F-PointNets(QI et al )(2018)
(2)PointFusion(XU et al.)(2018)
(3)RoarNet(Shin et al.)(2018)
(4)SIFRNet(Zhao et al.)(2019)
(5)F-ConvNet(Wang et al.)(2019)
(6)Patch Refinement(Zhao et al )(2019)

2.1緊耦合

  1. voxel-based
    (1)CD-CVF( Yoo et al 韓國)(2020)

將雷達的點云體素化后 ,通卷積層進行預處理,生成在BEV下的特征地圖,然后對多視角(構成閉合環形)的image進行FPN(CNN的一種網路)進行預處理,生成特征地圖,然后用auto-calibrated
feature projection將多幅圖進行融合,生成BEV下的feature,再利用adaptive gated fusion
network來融合雷達和image預處理后的BEV圖,再進行正常的RPN,

  1. point-based
    (1) PI-RCNN(Xie et al)(2019)

point分支和image分支分別做3D目標檢測任務和語意分割任務,然后對每個點搜尋K臨近點,對這些點結合相機的內外參反向投入二維的語意地圖中,得出這幾個點對應二維中的像素的語意特征,然后將這幾個點的幾何特征和語意特征進行聯合積分,得到聯合特征;最后將幾何特征,語意特征,聯合特征進行拼接,更新該點的特征,從而完成二次優化的任務,實作點云資料和RGB資料的融合,

(2)PointPainting(cvpr2020)

該作業的fusion方式是采用二維語意分割資訊通過lidar資訊和image資訊的變換矩陣融合到點上,再采用baseline物體檢測;可以理解為對于語意分割出的物體多了一些資訊作為引導,得到更好的檢測精度,和上面的pi-rcnn的不同之處是該融合是一個串聯的網路結構,將語意分割后的特征和原始點云一起送入深度學習網路中.

2.2松耦合

(1)CLOCs

該網路經歷了三個主要的階段(1)2D和3D的目標檢測器分別提出proposals(2)將兩種模態的proposals編碼成稀疏張量(3)對于非空的元素采用二維卷積做對應的特征融合,

總結

轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/152011.html

標籤:其他

上一篇:機器學習筆記(3)

下一篇:字串知識

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • GPU虛擬機創建時間深度優化

    **?桔妹導讀:**GPU虛擬機實體創建速度慢是公有云面臨的普遍問題,由于通常情況下創建虛擬機屬于低頻操作而未引起業界的重視,實際生產中還是存在對GPU實體創建時間有苛刻要求的業務場景。本文將介紹滴滴云在解決該問題時的思路、方法、并展示最終的優化成果。 從公有云服務商那里購買過虛擬主機的資深用戶,一 ......

    uj5u.com 2020-09-10 06:09:13 more
  • 可編程網卡芯片在滴滴云網路的應用實踐

    **?桔妹導讀:**隨著云規模不斷擴大以及業務層面對延遲、帶寬的要求越來越高,采用DPDK 加速網路報文處理的方式在橫向縱向擴展都出現了局限性。可編程芯片成為業界熱點。本文主要講述了可編程網卡芯片在滴滴云網路中的應用實踐,遇到的問題、帶來的收益以及開源社區貢獻。 #1. 資料中心面臨的問題 隨著滴滴 ......

    uj5u.com 2020-09-10 06:10:21 more
  • 滴滴資料通道服務演進之路

    **?桔妹導讀:**滴滴資料通道引擎承載著全公司的資料同步,為下游實時和離線場景提供了必不可少的源資料。隨著任務量的不斷增加,資料通道的整體架構也隨之發生改變。本文介紹了滴滴資料通道的發展歷程,遇到的問題以及今后的規劃。 #1. 背景 資料,對于任何一家互聯網公司來說都是非常重要的資產,公司的大資料 ......

    uj5u.com 2020-09-10 06:11:05 more
  • 滴滴AI Labs斬獲國際機器翻譯大賽中譯英方向世界第三

    **桔妹導讀:**深耕人工智能領域,致力于探索AI讓出行更美好的滴滴AI Labs再次斬獲國際大獎,這次獲獎的專案是什么呢?一起來看看詳細報道吧! 近日,由國際計算語言學協會ACL(The Association for Computational Linguistics)舉辦的世界最具影響力的機器 ......

    uj5u.com 2020-09-10 06:11:29 more
  • MPP (Massively Parallel Processing)大規模并行處理

    1、什么是mpp? MPP (Massively Parallel Processing),即大規模并行處理,在資料庫非共享集群中,每個節點都有獨立的磁盤存盤系統和記憶體系統,業務資料根據資料庫模型和應用特點劃分到各個節點上,每臺資料節點通過專用網路或者商業通用網路互相連接,彼此協同計算,作為整體提供 ......

    uj5u.com 2020-09-10 06:11:41 more
  • 滴滴資料倉庫指標體系建設實踐

    **桔妹導讀:**指標體系是什么?如何使用OSM模型和AARRR模型搭建指標體系?如何統一流程、規范化、工具化管理指標體系?本文會對建設的方法論結合滴滴資料指標體系建設實踐進行解答分析。 #1. 什么是指標體系 ##1.1 指標體系定義 指標體系是將零散單點的具有相互聯系的指標,系統化的組織起來,通 ......

    uj5u.com 2020-09-10 06:12:52 more
  • 單表千萬行資料庫 LIKE 搜索優化手記

    我們經常在資料庫中使用 LIKE 運算子來完成對資料的模糊搜索,LIKE 運算子用于在 WHERE 子句中搜索列中的指定模式。 如果需要查找客戶表中所有姓氏是“張”的資料,可以使用下面的 SQL 陳述句: SELECT * FROM Customer WHERE Name LIKE '張%' 如果需要 ......

    uj5u.com 2020-09-10 06:13:25 more
  • 滴滴Ceph分布式存盤系統優化之鎖優化

    **桔妹導讀:**Ceph是國際知名的開源分布式存盤系統,在工業界和學術界都有著重要的影響。Ceph的架構和演算法設計發表在國際系統領域頂級會議OSDI、SOSP、SC等上。Ceph社區得到Red Hat、SUSE、Intel等大公司的大力支持。Ceph是國際云計算領域應用最廣泛的開源分布式存盤系統, ......

    uj5u.com 2020-09-10 06:14:51 more
  • es~通過ElasticsearchTemplate進行聚合~嵌套聚合

    之前寫過《es~通過ElasticsearchTemplate進行聚合操作》的文章,這一次主要寫一個嵌套的聚合,例如先對sex集合,再對desc聚合,最后再對age求和,共三層嵌套。 Aggregations的部分特性類似于SQL語言中的group by,avg,sum等函式,Aggregation ......

    uj5u.com 2020-09-10 06:14:59 more
  • 爬蟲日志監控 -- Elastc Stack(ELK)部署

    傻瓜式部署,只需替換IP與用戶 導讀: 現ELK四大組件分別為:Elasticsearch(核心)、logstash(處理)、filebeat(采集)、kibana(可視化) 下載均在https://www.elastic.co/cn/downloads/下tar包,各組件版本最好一致,配合fdm會 ......

    uj5u.com 2020-09-10 06:15:05 more
最新发布
  • day02-2-商鋪查詢快取

    功能02-商鋪查詢快取 3.商鋪詳情快取查詢 3.1什么是快取? 快取就是資料交換的緩沖區(稱作Cache),是存盤資料的臨時地方,一般讀寫性能較高。 快取的作用: 降低后端負載 提高讀寫效率,降低回應時間 快取的成本: 資料一致性成本 代碼維護成本 運維成本 3.2需求說明 如下,當我們點擊商店詳 ......

    uj5u.com 2023-04-20 08:33:24 more
  • MySQL中binlog備份腳本分享

    關于MySQL的二進制日志(binlog),我們都知道二進制日志(binlog)非常重要,尤其當你需要point to point災難恢復的時侯,所以我們要對其進行備份。關于二進制日志(binlog)的備份,可以基于flush logs方式先切換binlog,然后拷貝&壓縮到到遠程服務器或本地服務器 ......

    uj5u.com 2023-04-20 08:28:06 more
  • day02-短信登錄

    功能實作02 2.功能01-短信登錄 2.1基于Session實作登錄 2.1.1思路分析 2.1.2代碼實作 2.1.2.1發送短信驗證碼 發送短信驗證碼: 發送驗證碼的介面為:http://127.0.0.1:8080/api/user/code?phone=xxxxx<手機號> 請求方式:PO ......

    uj5u.com 2023-04-20 08:27:27 more
  • 快取與資料庫雙寫一致性幾種策略分析

    本文將對幾種快取與資料庫保證資料一致性的使用方式進行分析。為保證高并發性能,以下分析場景不考慮執行的原子性及加鎖等強一致性要求的場景,僅追求最終一致性。 ......

    uj5u.com 2023-04-20 08:26:48 more
  • sql陳述句優化

    問題查找及措施 問題查找 需要找到具體的代碼,對其進行一對一優化,而非一直把關注點放在服務器和sql平臺 降低簡化每個事務中處理的問題,盡量不要讓一個事務拖太長的時間 例如檔案上傳時,應將檔案上傳這一步放在事務外面 微軟建議 4.啟動sql定時執行計劃 怎么啟動sqlserver代理服務-百度經驗 ......

    uj5u.com 2023-04-20 08:26:35 more
  • 云時代,MySQL到ClickHouse資料同步產品對比推薦

    ClickHouse 在執行分析查詢時的速度優勢很好的彌補了MySQL的不足,但是對于很多開發者和DBA來說,如何將MySQL穩定、高效、簡單的同步到 ClickHouse 卻很困難。本文對比了 NineData、MaterializeMySQL(ClickHouse自帶)、Bifrost 三款產品... ......

    uj5u.com 2023-04-20 08:26:29 more
  • sql陳述句優化

    問題查找及措施 問題查找 需要找到具體的代碼,對其進行一對一優化,而非一直把關注點放在服務器和sql平臺 降低簡化每個事務中處理的問題,盡量不要讓一個事務拖太長的時間 例如檔案上傳時,應將檔案上傳這一步放在事務外面 微軟建議 4.啟動sql定時執行計劃 怎么啟動sqlserver代理服務-百度經驗 ......

    uj5u.com 2023-04-20 08:25:13 more
  • Redis 報”OutOfDirectMemoryError“(堆外記憶體溢位)

    Redis 報錯“OutOfDirectMemoryError(堆外記憶體溢位) ”問題如下: 一、報錯資訊: 使用 Redis 的業務介面 ,產生 OutOfDirectMemoryError(堆外記憶體溢位),如圖: 格式化后的報錯資訊: { "timestamp": "2023-04-17 22: ......

    uj5u.com 2023-04-20 08:24:54 more
  • day02-2-商鋪查詢快取

    功能02-商鋪查詢快取 3.商鋪詳情快取查詢 3.1什么是快取? 快取就是資料交換的緩沖區(稱作Cache),是存盤資料的臨時地方,一般讀寫性能較高。 快取的作用: 降低后端負載 提高讀寫效率,降低回應時間 快取的成本: 資料一致性成本 代碼維護成本 運維成本 3.2需求說明 如下,當我們點擊商店詳 ......

    uj5u.com 2023-04-20 08:24:03 more
  • day02-短信登錄

    功能實作02 2.功能01-短信登錄 2.1基于Session實作登錄 2.1.1思路分析 2.1.2代碼實作 2.1.2.1發送短信驗證碼 發送短信驗證碼: 發送驗證碼的介面為:http://127.0.0.1:8080/api/user/code?phone=xxxxx<手機號> 請求方式:PO ......

    uj5u.com 2023-04-20 08:23:11 more