選擇提取方法
Druid支持流式(實(shí)時(shí))和基于文件(批量)的數(shù)據(jù)提取方式。最常用的配置是:
- Files - 通過HDFS官还、S3痊剖、本地文件或者任何支持hadoop文件系統(tǒng)批量加載數(shù)據(jù)菠齿。如果你的數(shù)據(jù)集已經(jīng)在這類文件系統(tǒng)中推薦使用這個(gè)方法。
- Stream push - 使用Tranquility(向Druid發(fā)送流的客戶端)將實(shí)時(shí)數(shù)據(jù)流推送到Druid人灼。如果你的數(shù)據(jù)集來自于流式系統(tǒng),如Kafka, Storm, Spark Streaming或者自建的流系統(tǒng)顾翼,推薦使用此方法投放。
- Stream pull - 使用實(shí)時(shí)節(jié)點(diǎn)直接從外部數(shù)據(jù)源將數(shù)據(jù)流拉入Druid。
入門
最簡單的方式是通過學(xué)習(xí)下面三個(gè)教程來開始加載自己的數(shù)據(jù):
- 基于文件的教程适贸,介紹如何通過本地磁盤加載數(shù)據(jù)灸芳。
- 基于streams的教程,介紹如何通過HTTP推送數(shù)據(jù)拜姿。
- 基于kafka的教程烙样,介紹如何從kafka加載數(shù)據(jù)。
批處理蕊肥、流式混合模式
在batch/streaming架構(gòu)中谒获,你可以混合使用批處理、流式的方法壁却。在混合(Hybrid )模式中批狱,您可以使用流式方法來執(zhí)行初次提取,然后以批處理方式定期提取舊數(shù)據(jù)(通常是每幾小時(shí)或者夜維)展东。當(dāng)Druid重新獲取時(shí)間范圍內(nèi)的數(shù)據(jù)時(shí)赔硫,新數(shù)據(jù)會自動(dòng)替換早期提取的數(shù)據(jù)。
在某些故障情況下盐肃,當(dāng)下所有的Druid流式數(shù)據(jù)傳輸方法都會導(dǎo)致數(shù)據(jù)的丟失或重復(fù)爪膊。通過批量重新攝取數(shù)據(jù)可以消除歷史數(shù)據(jù)中的這種潛在的威脅。
如果您因任何原因需要修改數(shù)據(jù)砸王,則批量重新提取還可讓您重新提取數(shù)據(jù)推盛。