All Products
Search
Document Center

Object Storage Service:Kueri dan analisis data OSS menggunakan MaxCompute

Last Updated:Mar 21, 2026

Fitur tabel eksternal MaxCompute memungkinkan Anda menjalankan kueri SQL langsung terhadap file CSV yang disimpan di Object Storage Service (OSS) tanpa perlu migrasi data. MaxCompute dapat menganalisis volume besar data OSS dalam hitungan beberapa menit, sehingga menjadi opsi berbiaya rendah untuk analisis terstruktur pada log IoT dan dataset teks besar lainnya.

Dalam tutorial ini:

Prasyarat

Sebelum memulai, pastikan Anda telah memiliki:

Cara kerja

  1. Unggah data sumber (file CSV) ke bucket OSS.

  2. Buat tabel eksternal di MaxCompute yang memetakan ke direktori OSS tempat file-file tersebut berada. Klausul LOCATION mengarah ke direktori di OSS — MaxCompute melakukan pemindaian terhadap semua file dalam direktori tersebut saat tabel dikueri.

  3. Jalankan kueri SQL terhadap tabel eksternal tersebut. MaxCompute membaca data dari OSS pada saat kueri dijalankan.

Kueri data OSS dengan tabel eksternal

Langkah-langkah berikut menggunakan contoh dataset kendaraan IoT untuk memandu Anda melalui proses end-to-end.

Langkah 1: Unggah data ke OSS

  1. Buat file bernama vehicle.csv di komputer lokal Anda dengan konten berikut:

       1,1,51,1,46.81006,-92.08174,9/14/2014 0:00,S
       1,2,13,1,46.81006,-92.08174,9/14/2014 0:00,NE
       1,3,48,1,46.81006,-92.08174,9/14/2014 0:00,NE
       1,4,30,1,46.81006,-92.08174,9/14/2014 0:00,W
       1,5,47,1,46.81006,-92.08174,9/14/2014 0:00,S
       1,6,9,1,46.81006,-92.08174,9/14/2014 0:00,S
       1,7,53,1,46.81006,-92.08174,9/14/2014 0:00,N
       1,8,63,1,46.81006,-92.08174,9/14/2014 0:00,SW
       1,9,4,1,46.81006,-92.08174,9/14/2014 0:00,NE
       1,10,31,1,46.81006,-92.08174,9/14/2014 0:00,N

    Setiap baris berisi delapan bidang yang dipisahkan koma: vehicleId, recordId, patientId, calls, locationLatitute, locationLongtitue, recordTime, dan direction.

  2. Unggah vehicle.csv ke direktori demo/ dari bucket examplebucket di wilayah China (Hangzhou). Lihat Unggah objek.

Langkah 2: Jalankan klien MaxCompute

Jalankan klien MaxCompute. Lihat Jalankan klien MaxCompute.

Langkah 3: Buat tabel eksternal

Buat tabel eksternal non-partisi bernama data_csv_external yang memetakan ke direktori demo/ di OSS:

CREATE EXTERNAL TABLE IF NOT EXISTS data_csv_external
(
    vehicleId int,
    recordId int,
    patientId int,
    calls int,
    locationLatitute double,
    locationLongtitue double,
    recordTime string,
    direction string
)
STORED BY 'com.aliyun.odps.CsvStorageHandler'
LOCATION 'oss://oss-cn-hangzhou-internal.aliyuncs.com/examplebucket/demo/';

Langkah 4: Kueri tabel eksternal

Jalankan pernyataan SQL berikut untuk mengambil catatan di mana patientId lebih besar dari 25:

select recordId, patientId, direction from data_csv_external where patientId > 25;

Output yang diharapkan:

+------------+------------+-----------+
| recordId   | patientId  | direction |
+------------+------------+-----------+
| 1          | 51         | S         |
| 3          | 48         | NE        |
| 4          | 30         | W         |
| 5          | 47         | S         |
| 7          | 53         | N         |
| 8          | 63         | SW        |
| 10         | 31         | N         |
+------------+------------+-----------+

FAQ

Saya mendapatkan pesan "You don't exist in project <projectname>" saat menghubungkan

Akun Alibaba Cloud atau RAM user yang menggunakan Pasangan Kunci Akses belum ditambahkan ke Proyek MaxCompute. Hubungi Pemilik proyek untuk menambahkan akun tersebut. Lihat Tambahkan Akun Alibaba Cloud (tingkat proyek) dan Tambahkan RAM user (tingkat proyek).

Kode kesalahan lengkapnya adalah: ODPS-0420095: Access Denied - Authorization Failed [4002].

Langkah selanjutnya