Topik ini menjelaskan cara menggunakan node PyODPS untuk membaca data dari partisi level-1 tabel yang ditentukan.
Prasyarat
Alur bisnis dibuat di DataWorks. Untuk informasi lebih lanjut, lihat Buat Alur Kerja.
Prosedur
Contoh ini menggunakan mode dasar DataWorks. Saat membuat ruang kerja, secara default, Participate in Public Preview of Data Studio tidak diaktifkan, dan contoh ini tidak berlaku untuk ruang kerja yang berpartisipasi dalam pratinjau publik Data Studio.
Persiapkan data uji.
Buat tabel dan unggah data. Untuk informasi lebih lanjut, lihat Buat Tabel dan Unggah Data.
Dalam contoh ini, gunakan pernyataan pembuatan tabel dan data sumber berikut:
Pernyataan berikut membuat tabel terpartisi user_detail:
CREATE TABLE IF NOT EXISTS user_detail ( userid BIGINT COMMENT 'User ID', job STRING COMMENT 'Tipe pekerjaan', education STRING COMMENT 'Tingkat pendidikan' ) COMMENT 'Tabel informasi pengguna' PARTITIONED BY (dt STRING COMMENT 'Tanggal',region STRING COMMENT 'Wilayah');Pernyataan berikut membuat tabel data sumber user_detail_ods:
CREATE TABLE IF NOT EXISTS user_detail_ods ( userid BIGINT COMMENT 'User ID', job STRING COMMENT 'Tipe pekerjaan', education STRING COMMENT 'Tingkat pendidikan', dt STRING COMMENT 'Tanggal', region STRING COMMENT 'Wilayah' );Simpan data uji sebagai file user_detail.txt. Unggah file ini ke tabel user_detail_ods:
0001,Internet,Sarjana,20190715,beijing 0002,Pendidikan,Diploma,20190716,beijing 0003,Keuangan,Magister,20190715,shandong 0004,Internet,Magister,20190715,beijing
Tulis data dari tabel data sumber
user_detail_odske tabel terpartisiuser_detail.Masuk ke Konsol DataWorks.
Di panel navigasi sebelah kiri, klik Workspace.
Temukan ruang kerja target, pilih di kolom Actions.
Klik kanan alur bisnis dan pilih .
Masukkan nama node dan klik Confirm.
Masukkan kode berikut di node ODPS SQL:
INSERT OVERWRITE TABLE user_detail PARTITION (dt, region) SELECT userid, job, education, dt, region FROM user_detail_ods;Klik Run untuk menyelesaikan penulisan data.
Gunakan node PyODPS untuk membaca data dari partisi level-1 tabel user_detail.
Masuk ke Konsol DataWorks.
Di panel navigasi sebelah kiri, klik Workspace.
Temukan ruang kerja target, pilih di kolom Actions.
Di halaman Data Development, klik kanan alur bisnis yang telah dibuat dan pilih .
Masukkan nama node dan klik Confirm.
Di tab konfigurasi node PyODPS 2, masukkan kode berikut di editor kode:
import sys reload(sys) # Atur UTF-8 sebagai format pengkodean default. sys.setdefaultencoding('utf8') # Baca data dari partisi level-1 dalam mode asinkron. instance = o.run_sql('select * from user_detail WHERE dt=\'20190715\'') instance.wait_for_success() for record in instance.open_reader(): print record["userid"],record["job"],record["education"] # Baca data dari partisi level-1 dalam mode sinkron. with o.execute_sql('select * from user_detail WHERE dt=\'20190715\'').open_reader() as reader4: print reader4.raw for record in reader4: print record["userid"],record["job"],record["education"] # Gunakan PyODPS DataFrame untuk membaca data dari partisi level-1. pt_df = DataFrame(o.get_table('user_detail').get_partition('dt=20190715')) print pt_df.head(10)Klik ikon Jalankan di bilah alat.

Lihat hasil eksekusi node PyODPS 2 di tab Run Log.
