ネットワーク帯域幅が制限されている場合(例えばストレージシステムのスロットリングがトリガーされた場合)に、Sparkエンジンのクエリ分析が安定して実行されるようにするために、DLC Sparkエンジンはローカルキャッシュ(Local Cache)機能を提供しています。テーブルデータをキャッシュする必要がある場合、エンジン設定を追加することで簡単にキャッシュ機能を有効にできます。
操作手順
Spark SQL エンジン設定:
説明:
設定を追加した後、エンジンクラスタが再起動します。実行中のタスクに影響を与えないように、タスクが実行されていない状況でキャッシュを有効にすることをお勧めします。
3. エンジンキャッシュを使用し、データ探索に進み、SQLインターフェースでクエリSQLを作成し、キャッシュを有効にしたエンジンを選択し、SQLを実行します。実行が完了すると、エンジンはSQLに関連するDLC外部テーブルをローカルにキャッシュします。再度SQLを実行すると、データはローカルキャッシュから取得され、クエリ効率が向上します。
Spark SQL エンジンクエリ:
Spark Batch エンジンクエリ:
キャッシュの説明
キャッシュ設定項目の説明
|
spark.hadoop.fs.cosn.impl | alluxio.hadoop.ShimFileSystem | 固定値;構成値はキャッシュ機能の実装クラスです。この値を設定するとキャッシュ機能が有効になります;キャッシュ機能を有効にする場合、この値以外の値を設定すると、エンジンがCOSデータにアクセスできなくなる可能性がありますので、ガイドラインに従って設定してください。 キャッシュを有効にした後にキャッシュを無効にする場合は、この構成項目を削除してください。 |
キャッシュの使用説明
1. エンジンタイプの説明
SparkSQL エンジン:エンジンが再起動すると、キャッシュはローカルキャッシュであるため、元のキャッシュデータは無効になります。
SparkBatchエンジン:SparkBatchエンジンで実行されるタスクはセッションレベルであり、タスクが完了するとキャッシュデータは無効になります。
2. テーブルタイプの説明
現在はDLC外部テーブルのみをキャッシュしています。