最近在做數據交互,涉及外網和內網的數據交互問題。因為數據的保密性,安全性,無法建立直達通道。提供了互聯網前置機,內網前置機,開放指定端口用於數據互通,但數據庫等默認,相似端口不允許開放。
數據的來源比較豐富,也有實時,離線數據等待互通。於是我們需要在前置機搭建數據抽取服務。考慮點如下:
1.數據源可能是myql,avro,接口,文本等等,分布在不同的服務器上,前置機只開放指定的端口用於數據抽取。
那么我們需要一台互聯網服務器用於匯聚數據,與互聯網前置機進行數據傳輸。考慮數據有實時和離線兩種,我們可以部署flume+kafka用於實時數據抽取,部署datax用於離線數據抽取。
2.建立數據通道。
linux可以使用rinetd完成端口轉發,window可以使用passport。實現端口的串聯。
3.在編寫flume的conf,datax的json,來完成數據抽取。
注:這種方法有較大的延時性,數據通道也不穩定。當然這種場景也很少出現。
