Topik ini menjelaskan cara melakukan operasi pada tabel asing Object Storage Service (OSS).
Lihat rencana eksekusi
AnalyticDB for PostgreSQL memungkinkan Anda melihat rencana eksekusi dari pernyataan kueri yang melibatkan tabel asing OSS dengan mengeksekusi pernyataan EXPLAIN. Contoh:
EXPLAIN SELECT COUNT(*) FROM oss_lineitem_orc WHERE l_orderkey > 14062498;Kumpulkan statistik
Secara default, AnalyticDB for PostgreSQL tidak secara otomatis mengumpulkan statistik tabel asing OSS karena tabel-tabel tersebut disimpan di OSS. Jika statistik tidak tersedia atau sudah usang, pengoptimal kueri mungkin menghasilkan rencana kueri yang tidak efisien untuk kueri kompleks seperti yang melibatkan tabel gabungan. Untuk menyelesaikan masalah ini, AnalyticDB for PostgreSQL memungkinkan Anda memperbarui statistik tabel asing OSS dengan mengeksekusi pernyataan ANALYZE.
Eksekusi pernyataan EXPLAIN berikut untuk melihat rencana eksekusi saat ini:
EXPLAIN <table_name>;Eksekusi pernyataan ANALYZE berikut untuk mengumpulkan statistik:
ANALYZE <table_name>;Eksekusi pernyataan EXPLAIN berikut untuk melihat rencana eksekusi baru:
EXPLAIN <table_name>;
Pisahkan objek besar
Tabel asing OSS memungkinkan Anda memindai objek sumber yang disimpan di berbagai node secara paralel. Jika hanya ada sejumlah kecil objek sumber, kami sarankan Anda membagi objek-objek ini menjadi objek kecil untuk memfasilitasi pemindaian paralel di berbagai node.
Contoh berikut menunjukkan cara membagi objek besar. Dalam contoh ini, sistem operasi Linux digunakan.
Kueri jumlah baris dalam objek besar saat ini.
wc -l <csv_file>Pisahkan objek menjadi objek kecil berdasarkan nilai parameter N.
Nmenentukan jumlah baris di setiap objek kecil.split -l N <csv_file>CatatanBaris dalam objek tidak dapat dipisah ke objek kecil yang berbeda. Metode pemisahan di atas memastikan integritas setiap baris.
Lihat informasi objek tabel asing OSS
Anda dapat mengeksekusi pernyataan berikut untuk menanyakan informasi objek dari tabel asing OSS:
SELECT * FROM get_oss_table_meta('<OSS FOREIGN TABLE>');