All Products
Search
Document Center

MaxCompute:Akses Alibaba Cloud OSS

Last Updated:Mar 17, 2026

MaxCompute Spark mengakses Alibaba Cloud Object Storage Service (OSS) melalui Jindo SDK (software development kit). Jindo SDK merupakan klien OSS berkinerja tinggi yang dirancang untuk ekosistem Hadoop dan Spark, serta menyediakan implementasi Hadoop FileSystem yang sangat dioptimalkan untuk Alibaba Cloud OSS.

Langkah 1: Konfigurasikan kelas implementasi dan endpoint OSS

Gunakan endpoint publik untuk wilayah yang sesuai dalam mode lokal. Dalam mode kluster, gunakan endpoint internal. Untuk informasi selengkapnya, lihat Wilayah dan titik akhir.

  • Spark 3.5+ (mengintegrasikan JindoSDK 6.5 secara default). Tambahkan konfigurasi berikut:

    spark.hadoop.fs.AbstractFileSystem.oss.impl=com.aliyun.jindodata.oss.JindoOSS
    spark.hadoop.fs.oss.impl=com.aliyun.jindodata.oss.JindoOssFileSystem
    spark.hadoop.fs.oss.endpoint=oss-${RegionId}-internal.aliyuncs.com
  • Versi lainnya (jika menggunakan JindoSDK 3.7). Tambahkan konfigurasi berikut:

    spark.hadoop.fs.AbstractFileSystem.oss.impl=com.aliyun.emr.fs.oss.OSS
    spark.hadoop.fs.oss.impl=com.aliyun.emr.fs.oss.JindoOssFileSystem
    spark.hadoop.fs.oss.endpoint=oss-${RegionId}-internal.aliyuncs.com

Langkah 2: Konfigurasikan informasi autentikasi

Pilih salah satu dari dua metode autentikasi berikut.

Metode 1: Gunakan ID AccessKey dan Rahasia AccessKey

Tambahkan item konfigurasi berikut ke file spark-defaults.conf atau konfigurasi DataWorks Anda:

spark.hadoop.fs.oss.accessKeyId=${AccessId}
spark.hadoop.fs.oss.accessKeySecret=${AccessKey}

Metode 2: Gunakan token Security Token Service

Untuk informasi selengkapnya, lihat Otorisasi akses dalam mode STS. Kemudian, tambahkan item konfigurasi berikut.

Konfigurasi Spark 3.5+

## Tambahkan item konfigurasi berikut ke file spark-defaults.conf atau konfigurasi DataWorks Anda:
spark.hadoop.fs.oss.credentials.provider=com.aliyun.jindodata.oss.auth.CustomCredentialsProvider
spark.hadoop.aliyun.oss.provider.url=http://localhost:10011/sts-token-info?user_id=${AliyunUid}&role=${RoleName}

Konfigurasi untuk versi lainnya

## Tambahkan item konfigurasi berikut ke file spark-defaults.conf atau konfigurasi DataWorks Anda:
spark.hadoop.odps.cupid.http.server.enable=true
spark.hadoop.fs.jfs.cache.oss.credentials.provider=com.aliyun.emr.fs.auth.CustomCredentialsProvider
spark.hadoop.aliyun.oss.provider.url=http://localhost:10011/sts-token-info?user_id=${AliyunUid}&role=${RoleName}

Langkah 3: Referensikan dependensi JindoSDK (lewati langkah ini untuk Spark 3.5+)

  • Mode lokal

    Dalam mode lokal, unduh JindoSDK dan tambahkan ke classpath.

    1. Buka File > Project Structure.

      image

    2. Di panel navigasi kiri, pilih Modules. Klik tanda plus (+) dan pilih JARs or Directories.

      image

    3. Tambahkan semua file JAR dari folder lib JindoSDK.

    4. Di IDEA, klik OK.

  • Mode kluster

    • Untuk Spark 3.5, Jindo SDK sudah disertakan di sisi server. Tidak diperlukan tindakan tambahan.

    • Untuk versi lainnya, modifikasi file spark-defaults.conf. Tambahkan item konfigurasi berikut untuk menggunakan sumber daya publik:

      spark.hadoop.odps.cupid.resources = public.jindofs-sdk-3.7.2.jar
      
      ## Catatan: Untuk menggunakan versi JindoSDK yang berbeda, unduh versi SDK yang sesuai, unggah ke proyek Anda, lalu referensikan menggunakan spark.hadoop.odps.cupid.resources.

Langkah 4: Konfigurasikan daftar putih jaringan

  • Secara default, Anda dapat mengaksesnya langsung tanpa konfigurasi tambahan.

  • Dalam mode kluster, jika Anda tidak dapat mengakses OSS, tambahkan nama domain bucket target ke daftar putih pekerjaan dengan menambahkan item konfigurasi berikut ke file spark-defaults.conf atau konfigurasi DataWorks Anda:

    spark.hadoop.odps.cupid.trusted.services.access.list=${BucketName}.oss-${RegionId}-internal.aliyuncs.com

Langkah 5: Kirimkan pekerjaan

./bin/spark-submit --class xxx spark-app.jar