全部产品
Search
文档中心

Tablestore:Gunakan MaxCompute untuk mengakses Tablestore

更新时间:Jun 24, 2025

Topik ini menjelaskan cara membangun koneksi mulus antara Tablestore dan MaxCompute dalam akun Alibaba Cloud yang sama.

Informasi latar belakang

MaxCompute adalah platform hemat biaya dan sepenuhnya dikelola untuk penyimpanan data dalam skala petabyte. Anda dapat menggunakan MaxCompute untuk memproses dan menganalisis sejumlah besar data dengan cara yang cepat dan efisien. Anda dapat mengeksekusi pernyataan Data Definition Language (DDL) sederhana untuk membuat tabel eksternal di MaxCompute guna menghubungkan tabel tersebut dengan sumber data eksternal. Hal ini memungkinkan Anda mengakses dan mengekspor data dalam berbagai format. Tabel MaxCompute hanya dapat berisi data terstruktur, sedangkan tabel eksternal dapat digunakan untuk memproses data terstruktur maupun tidak terstruktur.

Tablestore dan MaxCompute mendukung berbagai jenis data. Tabel berikut menjelaskan pemetaan antara tipe data yang didukung di Tablestore dan MaxCompute.

Tablestore

MaxCompute

STRING

STRING

INTEGER

BIGINT

DOUBLE

DOUBLE

BOOLEAN

BOOLEAN

BINARY

BINARY

Persiapan

Sebelum menggunakan MaxCompute untuk mengakses Tablestore, pastikan langkah-langkah persiapan berikut telah diselesaikan:

  1. MaxCompute telah diaktifkan.

  2. Ruang kerja telah dibuat.

  3. Pasangan AccessKey telah dibuat.

  4. MaxCompute diberi otorisasi untuk mengakses Tablestore di Konsol Resource Access Management (RAM). Untuk informasi lebih lanjut, lihat Otorisasi Lintas Akun.

  5. Instans dan tabel telah dibuat di konsol Tablestore. Untuk informasi lebih lanjut, lihat Buat Instans Tablestore dan Buat Tabel Data.

    Berikut adalah informasi tentang instans dan tabel yang dibuat dalam contoh ini:

    • Nama instans: cap1

    • Nama tabel data: vehicle_track

    • Informasi kunci utama: vid(integer) dan gt(integer)

    • Titik akhir: https://cap1.cn-hangzhou.ots-internal.aliyuncs.com

      null

      Saat menggunakan MaxCompute untuk mengakses Tablestore, disarankan untuk menggunakan titik akhir privat Tablestore.

    • Pengaturan kontrol akses jaringan untuk instans. Secara default, Anda dapat mengakses instans Tablestore dari konsol Tablestore dan melalui VPC, jaringan klasik, serta Internet. Dalam contoh ini, pengaturan default di bagian Network Access Control digunakan. Gambar berikut menunjukkan pengaturan default di bagian Network Access Control.

      image

Langkah 1: Instal dan konfigurasikan klien

  1. Unduh dan ekstrak paket instalasi klien MaxCompute.

    null

    Pastikan JRE 1.7 atau versi lebih baru telah terinstal di mesin Anda.

  2. Ubah file conf/odps_config.ini untuk mengonfigurasi klien. Contoh kode berikut memberikan contoh cara mengonfigurasi klien:

    # Tentukan pasangan AccessKey dari akun Alibaba Cloud Anda. Pasangan AccessKey terdiri dari ID AccessKey dan Rahasia AccessKey. Untuk mendapatkan pasangan AccessKey dari akun Alibaba Cloud Anda, masuk ke situs resmi Alibaba Cloud, buka Konsol Manajemen Alibaba Cloud, arahkan pointer ke foto profil di pojok kanan atas, lalu klik Pengelolaan AccessKey. 
    access_id=*******************
    access_key=*********************
    # Tentukan nama proyek yang ingin Anda akses. 
    project_name=my_project
    # Tentukan titik akhir MaxCompute. 
    end_point=https://service.odps.aliyun.com/api
    # Tentukan tautan untuk mengakses layanan Tunnel MaxCompute. 
    tunnel_endpoint=https://dt.odps.aliyun.com
    # Tentukan URL LogView yang dikembalikan oleh klien setelah pekerjaan dijalankan. Setelah Anda mengakses URL LogView, Anda dapat melihat informasi rinci tentang pekerjaan tersebut. 
    log_view_host=http://logview.odps.aliyun.com
    # Tentukan apakah akan mengaktifkan akses melalui HTTPS. 
    https_check=true
    null

    Dalam file odps_config.ini, tanda pagar (#) digunakan untuk menambahkan komentar. Klien MaxCompute menggunakan -- untuk menambahkan komentar.

  3. Jalankan bin/odpscmd.bat. Masukkan show tables;.

    Jika tabel dalam proyek MaxCompute saat ini ditampilkan, konfigurasi sebelumnya valid.

    odps2

Langkah 2: Buat tabel eksternal

Buat tabel data MaxCompute bernama ots_vehicle_track untuk mengaitkan tabel tersebut dengan tabel Tablestore bernama vehicle_track.

Berikut adalah informasi tentang tabel Tablestore yang terkait:

  • Nama instans: cap1

  • Nama tabel data: vehicle_track

  • Informasi kunci utama: vid(int) dan gt(int)

  • Titik akhir: https://cap1.cn-hangzhou.ots-internal.aliyuncs.com

CREATE EXTERNAL TABLE IF NOT EXISTS ots_vehicle_track
(
vid bigint,
gt bigint,
longitude double,
latitude double,
distance double ,
speed double,
oil_consumption double
)
STORED BY 'com.aliyun.odps.TableStoreStorageHandler' -- (1)
WITH SERDEPROPERTIES ( -- (2)
'tablestore.columns.mapping'=':vid, :gt, longitude, latitude, distance, speed, oil_consumption', -- (3)
'tablestore.table.name'='vehicle_track' -- (4)
)
LOCATION 'tablestore://cap1.cn-hangzhou.ots-internal.aliyuncs.com'; -- (5)

Tabel berikut menjelaskan parameter-parameter tersebut.

Nomor urutan

Parameter

Deskripsi

(1)

com.aliyun.odps.TableStoreStorageHandler

Penanganan penyimpanan bawaan MaxCompute yang memproses data Tablestore dan mendefinisikan interaksi antara MaxCompute dan Tablestore. MaxCompute mengimplementasikan logika terkait.

(2)

SERDEPROPERITES

Operasi yang menyediakan opsi parameter. Saat menggunakan penanganan penyimpanan yang memproses data Tablestore, Anda harus mengonfigurasi parameter tablestore.columns.mapping dan tablestore.table.name.

(3)

tablestore.columns.mapping

Wajib. Kolom tabel Tablestore yang ingin diakses oleh MaxCompute. Kolom-kolom tersebut mencakup kolom kunci utama dan kolom atribut. Jika tanda titik dua (:) termasuk dalam nama kolom, kolom tersebut merupakan kolom kunci utama tabel Tablestore. Dalam contoh ini, :vid dan :gt adalah kolom kunci utama tabel Tablestore. Kolom lainnya adalah kolom atribut. Anda harus menentukan semua kolom kunci utama tabel Tablestore saat menentukan pemetaan. Anda hanya perlu menentukan kolom atribut yang ingin diakses oleh MaxCompute. Anda tidak perlu menentukan semua kolom atribut.

(4)

tablestore.table.name

Nama tabel Tablestore yang ingin diakses oleh MaxCompute. Jika nama tabel Tablestore yang ditentukan tidak ada, kesalahan akan terjadi. Dalam hal ini, MaxCompute tidak akan membuat tabel Tablestore.

(5)

LOCATION

Informasi tentang instans Tablestore tempat tabel Tablestore tersebut berada. Informasi tersebut mencakup nama instans dan titik akhir.

Langkah 3: Gunakan tabel eksternal untuk mengakses data Tablestore

Setelah membuat tabel eksternal, data Tablestore diimpor ke MaxCompute. Kemudian, Anda dapat menggunakan perintah SQL MaxCompute untuk mengakses data Tablestore.

-- Kumpulkan statistik tentang kecepatan rata-rata dan konsumsi bahan bakar kendaraan yang memiliki VID kurang dari 4 sebelum timestamp 1469171387. 
select vid,count(*),avg(speed),avg(oil_consumption) from ots_vehicle_track where vid <4 and gt<1469171387  group by vid;

Contoh keluaran perintah:

odps1