良くある質問

GearpumpとYARNの間の関係は何ですか?

Gearpump はYARN上でYARNアプリケーションとして動作することができます。Gearpumpのアプリケーションマスターは、アプリケーション管理、配備およびYARNからの調停およびコンテナリソースの受信後のDAGのスケジューリングを提供します。

StormおよびSparkストリーミングとの関係

Storm と Spark Streaming は実証されているプラットフォームであり、プロダクションの配備も多くあります。それらに比べて、Gearpumpはそれほど実証されておらず、プロダクションの配備もまだありません。しかし、すべてのユースケースをカバーしている単一のプラットフォームはありません; Gearpumpはいくつかの特別な領域で +1点を持ちます。例として、IoTのユースケースに関して、Gearpumpは場所の透過性の機能を使ってトポロジーをエッジデバイスに配備することができるため、簡単だと考えられています。他の例としては、ユーザがアプリケーションをサービスの停止無しにオンラインでアップグレードしたい場合、Gearpumpは動的にその場でDAGの計算を修正できるので、適しているかも知れません。

Gearpumpは何を意味するのか?

Gearpumpという名前は技術用語"Gear Pump"が出典です。これはただ二つの歯車からなるとても単純なポンプですが、とても強力に水を左から右へ流します。

なぜチェックポイントファイルを格納するためにakka persistenceを使わないのか?
  1. 必要な場合には、ディスクにチェックポイントファイルを作成します。(レコードレベルでは無い)
  2. 独自のチェックポイントファイル形式を持ちます。
高レベルDSLのためにakkaストリームAPIを考慮したのか?

良いDSLがどのようなものであるかについて多くの候補を調べています。Akka ストリームAPIは候補の一つです。

Actorインタフェースを直接使う代わりに、なぜタスクをラップしたのか?
  1. Unitテストを実施するのが楽です。
  2. 流れの制御やメッセージの紛失の検知のように、データの一貫性を確実にするために独自のロジックとメッセージを持ちます。
  3. 今のところGearpumpのインタフェースは急速に発展しているため、私たちの手を将来のリファクタで縛られないようにもっと強力な機能の公開に保守的でいたいと思っています。それは安全だと思わせます。
なぜ私のタスクはとてもメッセージが遅延するのか (例えば 10秒)?

タスク内で、ブロックするジョブを実行していないかどうかを調べてください(例えば、sleep、IO)。デフォルトでは、executor内のすべてのタスクはスレッドプールを共有します。他のタスクが実行する機会を得ないまま、ブロックしているタスクが全てのスレッドを使い果たすかもしれません。そのような場合、ユニークなスレッドが各タスクに専念するようにgear.conf内のgearpump.task-dispatcher"gearpump.single-thread-dispatcher"に設定することができます。

一般的に、パフォーマンスがより良く、しなければならない時にはsingle-thread-dispatcherに切り替わるデフォルトのshare-thread-pool-dispatcher を使うことをお勧めします。

サービスプロセスが首尾よく起動したとしても、なぜダッシュボードが開けないのか?

デフォルトで、サービスのプロセスはローカルのIPv6 portに紐づけられます。システムの他のプロセスがすでに同じIPv4 portを取っているかも知れません。システムがUnix/Linuxであれば、lsof -i -P | grep -i "Listen" によって調べることができます。

TOP
inserted by FC2 system