簡體   English   中英

將spark RDD用作REST API中的數據源

[英]Use spark RDD as a source of data in a REST API

有一個在Spark上計算並存儲到Cassandra的圖形。
還有一個REST API,該API的端點具有獲取帶有邊緣和邊緣的圖節點的端點。
該第二度圖可以包括多達70000個節點。
當前使用Cassandra作為數據庫,但是通過鍵從Cassandra提取大量數據需要大量時間和資源。
我們嘗試了TitanDB,Neo4j和OriendDB來提高性能,但Cassandra表現出最好的結果。

現在有另一個想法。 在API服務中以及在API調用中,持久化RDD(或可能是GrapgX對象)來自持久化RDD的必要數據。
我猜想它會在RDD裝入內存的情況下快速運行,但是如果它緩存到磁盤,它將像完整掃描(例如完整掃描拼花文件)一樣工作。 我也希望我們將面對這些問題:

  • 火花中的內存泄漏;
  • 更新此RDD(不保留先前的內容,閱讀新內容並保留新內容)將需要停止API;
  • 使用此RDD並發將需要手動管理CPU資源。

有人有這樣的經驗嗎?

Spark不是存儲引擎。 除非您每次都會處理大量數據,否則應考慮:

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM