@techreport{oai:ipsj.ixsq.nii.ac.jp:00198017,
 author = {早瀬, 大智 and 稲垣, 英夫 and 川島, 龍太 and 松尾, 啓志},
 issue = {6},
 month = {Jul},
 note = {機械学習やビッグデータの解析を複数の計算機で分散させる手法が一般的となり,そのフレームワークとして Apache Spark が広く利用されている.Spark は頻繁に利用するデータをメモリにキャッシュすることで高速な処理を実現するインメモリ処理を採用しているが,データサイズがクラスタのメモリ総量を超える場合,スラッシングが発生してスループットが低下する.Spark はキャッシュ管理手法に LRU (Least Recently Used) を採用しているが,LRU は短期的なアクセスパターンからキャッシュするデータを決めるため,アクセスパターンが変化した時にメモリ-ディスク間でデータの移動が多発する.より長期的なアクセスパターンを考慮したキャッシュ管理手法として,参照カウントによって頻繁に利用される RDD (Resilient Distributed Dataset) を検出可能な LRC (Least Reference Count) が提案されているが,RDD 内部のパーティション単位でアクセスに偏りがある場合には対応できない.本研究では,パーティション単位のブルームフィルタを導入し,不要なパーティションへのアクセスを禁止することで,頻繁に利用されるパーティションの検出を可能にする.具体的には,パーティション内に含まれるレコードをブルームフィルタに登録し,Master に送信する.Master はそのブルームフィルタを基に,処理対象のデータが含まれている可能性があるパーティションの処理のみを Slave に依頼する.提案手法を性能テストベンチマークである TPC-H で評価した結果,9.8% の性能向上を確認した.},
 title = {Apache Sparkにおけるブルームフィルタを用いたSQL処理の高速化},
 year = {2019}
}