メモリの使用が主な関心事である場合、多くの小さな(頂点数が少ない)機能は、いくつかの非常に大きな(頂点数が多い)機能よりも好みに合うでしょう。ただし、「機能が多すぎる」と「頂点が多すぎる」と処理速度が追いつかなくなる可能性があります。
2つのフィーチャクラス間のすべてのフィーチャに対してすべてのフィーチャを処理するためにアルゴリズムをどのように構造化する必要があるかを考える場合、多重にネストされたループ(FC1とFC2のフィーチャ、およびFeature1とFeature2の頂点)で作業しています。描画などの操作では、多くの場合、描画リクエストの数は各リクエストの頂点よりも重要ですが、テーマオンテーマの操作では、主要なアルゴリズムは各F1 / F2ペアの頂点の数に基づいている可能性があります、 " ビッグO表記 "の "O(N * M)"(操作を完了する時間は、関係する頂点の数の係数に関連しています)で、両方のデータセットの大きなフィーチャの場合、 O(N ^ 2)は、これまでに完了したジョブについて心配させます。
大規模な機能(ロシア、カナダ、米国、オーストラリア、ブラジル、ノルウェーなど)を5度グリッド(フィッシュネット)でオーバーレイして、中間処理の機能の複雑さを軽減することに成功しました。頂点が制限された1:15m COUNTRIESレイヤーでのポイントインポリゴン操作は、元のテーブルよりも100〜1000倍高速に実行されます(機能カウントが20倍増加するだけです)。ただし、特に誤った境界が存在する場合は、1対多および多対多の関係を正しく処理するために、処理ロジックで注意する必要があります。
また、小さい機能を使用する場合の節約には「利益の減少」という側面もあります。90、45、30、20、15、10、5、3、2と交差するパフォーマンスをテストすることで、5度グリッドに落ち着きました。 1度グリッド。フィーチャの総数が膨らむにつれて、処理時間が驚くほど増加しました。
そこです、価値がおそらくと他の(均衡RAMの利用上の一つのアプローチにコミットする前に、実際のデータ(テストサブセットを単純化していない)での動作のためにいくつかのテストを行うための努力であるので、より多くの頂点を持つ少数の特徴は、より効率的な時間は、実行時)。
注:最新のハードウェアでグリッド作成演習を再実行し、30度のオーバーレイで最適なパフォーマンスを得たため、小さすぎる機能のリスクが高まり、生産データでの評価の重要性が高まりました。