パーティションおよび Spark の追加

com.here.platform.data.processing.spark および com.here.platform.data.processing.spark.rdd パッケージには、 Spark の標準 SparkContext およびの上に追加機能を提供 RDDする暗黙的なクラスが含まれています。 これらの機能は、ライブラリの処理で頻繁に使用され、 RDD ベースのコンパイラーパターンの実装に役立ちます。

com.here.platform.data.processing.spark.partitioner このパッケージには、処理ライブラリで使用するパーティャーが含まれています。 パーティション分割では、データを Spark パーティションに分割する方法を定義します。 Spark Partitioner インターフェイスはタイプセーフではないため、処理ライブラリ Partitioner[K] には特殊なタイプがあります。

著名なパーティングプログラムには、次のものがあり

  • HashPartitioner: カタログ ID 、レイヤー ID 、およびパーティション名を使用して計算されたハッシュコードによって、キーを均等に分割します。 デフォルトのパーティション作成者として使用できます。
  • NameHashPartitioner: パーティション名のハッシュコードに基づいてのみパーティションを計算します。 同じ名前のパーティションは、カタログ ID とレイヤー ID に関係なく、同じ Spark ワーカーノードによって処理されます。
  • LocalityAwarePartitioner: HERE Tile ID で識別された RDD エントリを Spark パーティションに割り当てて、データのローカル性を高めます。 地理的に互いに近接しているタイルが同じ Spark ワーカーノードによって処理された場合、データのローカル性が実現されます。 たとえば、ワーカーノードが、各入力タイルの処理に必要な追加の地理空間コンテンツのキャッシュを保持しているとします。 このようなコンテンツが処理済みのタイル全体で再利用されることを前提に、キャッシュが存在します。 この仮定では、入力タイルが互いに近接して同じ Spark ワーカーによって処理される場合、キャッシュのヒット率またはミス率が高くなる傾向があります。 近い入力タイルでは、同じ追加コンテンツが必要になる傾向があるためです。 これとは対照 LocalityAwarePartitioner 的に、この仮定が保持されない場合、を使用することには利点がありません。また、逆に生産性を低下させる可能性もあります。
  • AdapterPartitioner: Partitioner ライブラリのタイプセーフ Partitioner[K] インターフェイスをサポートするために Spark によって提供されたものをラップします。

」に一致する結果は 件です

    」に一致する結果はありません