Teradata - Tanya Jawab

Pembaca yang budiman, ini Teradata Interview Questions telah dirancang khusus untuk membuat Anda mengenal sifat pertanyaan yang mungkin Anda temui selama wawancara untuk subjek tersebut Teradata. Sesuai pengalaman saya, pewawancara yang baik hampir tidak berencana untuk mengajukan pertanyaan tertentu selama wawancara Anda, biasanya pertanyaan dimulai dengan beberapa konsep dasar subjek dan kemudian berlanjut berdasarkan diskusi lebih lanjut dan apa yang Anda jawab -

Arsitektur Teradata terdiri dari tiga komponen.

  • Parsing Engine - Parsing Engine menerima kueri dari pengguna, menguraikannya, dan menyiapkan rencana eksekusi.

  • BYNET - BYNET menerima rencana eksekusi dari Parsing Engine dan mengirimkannya ke AMP yang sesuai.

  • AMP- AMP bertanggung jawab untuk menyimpan dan mengambil baris. Ini menyimpan data di disk virtual yang terkait dengannya. Selain itu, AMP bertanggung jawab atas manajemen kunci, manajemen ruang, penyortiran, dan agregasi.

FastLoad MultiLoad
Tabel target harus kosong Tabel target tidak boleh kosong
Hanya satu tabel yang dapat dimuat menggunakan satu skrip Dapat memuat / memperbarui hingga 5 tabel
Hanya mendukung pernyataan CREATE / INSERT Mendukung hingga 20 pernyataan DML dalam satu skrip
Tidak mendukung tabel dengan RI, SI, dan Pemicu Mendukung tabel dengan NUSI

FastLoad menyediakan kemampuan restart melalui pos pemeriksaan. Saat skrip dimulai ulang dari checkpoint terakhir, ada kemungkinan bahwa baris yang sama dapat dikirim kembali ke AMP. Itulah alasan FastLoad tidak mendukung duplikat.

Tabel SET tidak mengizinkan catatan duplikat sedangkan MULTISET memungkinkan catatan duplikat.

Untuk setiap baris yang disisipkan, Sistem memeriksa apakah ada rekaman dengan hash baris yang sama. Jika tabel memiliki UPI yang ditentukan, maka itu akan menolak rekaman sebagai duplikat. Jika tidak, itu akan membandingkan seluruh catatan untuk duplikat. Ini akan sangat mempengaruhi kinerja sistem.

Anda dapat menentukan Indeks Utama Unik atau Indeks Sekunder Unik untuk menghindari pemeriksaan baris duplikat.

Tabel dibuat menggunakan pernyataan CREATE TABLE. Tabel dapat dibuat menggunakan

  • Pernyataan CREATE TABLE dengan definisi kolom.

  • BUAT TABEL dari tabel yang ada.

  • Pernyataan CREATE TABLE dengan pernyataan SELECT.

Catatan duplikat dapat diidentifikasi menggunakan pernyataan DISTINCT atau pernyataan GROUP BY.

SELECT DISTINCT column 1, column 2… 
FROM tablename;
  
OR
  
SELECT column 1, column 2,… 
FROM tablename 
GROUP BY column 1, column 2….;
  • Kunci utama tidak wajib di Teradata sedangkan Indeks Utama wajib.

  • Distribusi data didasarkan pada nilai Indeks Primer.

  • Kunci utama tidak menerima NULL sedangkan Indeks Utama menerima nilai NULL.

  • Kunci utama unik sedangkan Indeks Utama dapat berupa unik (UPI) atau tidak unik (NUPI).

  • Kunci utama tidak berubah sedangkan Indeks Utama berubah.

Data dapat diakses dengan 3 cara berbeda -

  • Melalui Indeks Utama
  • Melalui Indeks Sekunder
  • Pemindaian Tabel Lengkap

Ini dapat diidentifikasi menggunakan query SELECT HASHAMP () + 1;

Kueri berikut dapat digunakan untuk tujuan ini.

SELECT HASHMAP(HASHBUCKET(HASHROW(primaryindexvalue))), COUNT(*) 
FROM tablename GROUP BY 1;

Teradata mendukung dua mode transaksi.

  • Teradata
  • ANSI

Mode Teradata diatur menggunakan SET SESSION TRANSACTION BTET; Mode ANSI diatur menggunakan SET SESSION TRANSACTION ANSI;

Transaksi dapat dilakukan menggunakan pernyataan BT dan ET.

Bergabung dengan Indeks tidak dapat langsung diakses oleh pengguna. Hanya pengoptimal yang dapat mengaksesnya.

Catatan duplikat akan ditolak dari memuat tabel target dan akan dimasukkan ke dalam tabel UV.

FALLBACK adalah mekanisme perlindungan yang digunakan oleh Teradata untuk menangani kegagalan AMP. Untuk setiap baris data, salinan baris lainnya disimpan di AMP yang berbeda dalam sebuah cluster. Jika ada AMP yang gagal, baris yang sesuai akan diakses menggunakan AMP FALLBACK.

FALLBACK dapat disebutkan saat pembuatan tabel menggunakan pernyataan CREATE TABLE atau setelah tabel dibuat menggunakan pernyataan ALTER TABLE.

Error ruang spool akan terjadi jika hasil antara kueri melebihi batas ruang spool AMP yang ditetapkan untuk pengguna yang mengirimkan kueri.

Perintah SLEEP menentukan waktu tunggu sebelum Teradata mencoba membuat koneksi.

Perintah TENACITY menentukan total waktu tunggu Teradata untuk membuat koneksi baru.

Anda cukup menyimpan pernyataan BEGIN LOADING dan END LOADING dan mengirimkan skrip FASTLOAD. Opsi lainnya adalah menjatuhkan tabel dan membuat tabel lagi.

Caching di Teradata berfungsi dengan sumber dan tetap dalam urutan yang sama, yaitu, tidak sering berubah. Cache biasanya dibagikan di antara aplikasi. Ini adalah keuntungan tambahan menggunakan Teradata.

RAID adalah mekanisme perlindungan untuk menangani kegagalan disk. Ini adalah singkatan dari Redundant Array of Independent Disks. RAID 1 biasanya digunakan di Teradata.

Indeks sekunder menyediakan jalur alternatif untuk mengakses data. Mereka digunakan untuk menghindari Pemindaian Tabel Lengkap. Namun, indeks sekunder memerlukan struktur fisik tambahan untuk memelihara sub tabel dan juga memerlukan I / O tambahan karena sub tabel perlu diperbarui untuk setiap baris.

Ada empat kunci berbeda di Teradata - Eksklusif, Tulis, Baca, dan Akses.

Kunci dapat diterapkan di tiga level berbeda - Database, Tabel, dan Baris.

Menggunakan Multi Value Compression (MVC) Anda dapat mengompresi hingga 255 nilai termasuk NULL.

FastLoad memuat data dalam 64K blok. Ada 2 fase dalam FastLoad.

  • Pada Tahap 1, ini membawa data dalam 64K blok dan mengirimkannya ke AMP target. Setiap AMP kemudian akan mendistribusikan ulang baris tersebut ke AMP targetnya.

  • Dalam Tahap 2, baris diurutkan berdasarkan urutan hash barisnya dan ditulis ke dalam tabel target.

Impor MultiLoad memiliki lima fase.

  • Phase 1 - Tahap Awal - Melakukan aktivitas pengaturan dasar.

  • Phase 2 - Fase Transaksi DML - Memverifikasi sintaks pernyataan DML dan membawanya ke sistem Teradata.

  • Phase 3 - Tahap Akuisisi - Membawa data input ke dalam tabel kerja dan mengunci tabel.

  • Phase 4 - Tahap Aplikasi - Menerapkan semua operasi DML.

  • Phase 5 - Fase Pembersihan - Melepaskan kunci meja.

MULTILOAD DELETE lebih cepat karena menghapus record dalam blok. DELETE FROM akan menghapus baris demi baris.

Prosedur tersimpan mengembalikan satu atau beberapa nilai sedangkan Makro bisa mengembalikan satu atau lebih baris. Selain SQL, prosedur tersimpan mungkin berisi pernyataan SPL.

FastLoad dan MultiLoad memuat data dalam 64K blok sedangkan BTEQ akan memproses satu baris dalam satu waktu.

FastExport mengekspor data dalam 64K blok sedangkan BTEQ mengekspor satu baris dalam satu waktu.

Teradata Parallel Transporter (TPT) adalah utilitas untuk memuat / mengekspor data. Ini menggabungkan semua fungsi FastLoad, MultiLoad, BTEQ, TPUMP dan FastExport.

Jurnal permanen melacak data sebelum atau sesudah menerapkan perubahan. Ini membantu untuk memutar kembali atau menggulung tabel ke depan ke keadaan tertentu. Jurnal permanen dapat diaktifkan di level tabel atau level database.

Di Teradata, setiap AMP dikaitkan dengan disk virtual. Hanya AMP yang memiliki disk virtual yang dapat mengakses data di dalam disk virtual tersebut. Ini disebut Arsitektur Shared Nothing.

  • Jika kueri menggunakan kolom yang dipartisi maka itu akan mengakibatkan penghapusan partisi, yang akan sangat meningkatkan kinerja.

  • Partisi menghilangkan partisi lain dan hanya mengakses partisi yang berisi data.

  • Anda dapat dengan mudah melepaskan partisi lama dan membuat partisi baru.

Iya. Indeks sekunder membutuhkan sub-tabel yang membutuhkan ruang permanen.

Iya. Setiap kali indeks utama yang dipartisi ditambahkan, maka setiap baris menempati tambahan 2 atau 8 byte untuk nomor partisi.

Anda dapat menggunakan fungsi RANK pada kolom yang ditentukan dengan urutan menurun dengan syarat Qualify = 2.

Anda dapat memeriksa rencana MENJELASKAN kueri untuk mengidentifikasi langkah-langkah yang menghabiskan lebih banyak ruang spool dan mencoba untuk mengoptimalkan kueri. Filter bisa diterapkan untuk mengurangi jumlah rekaman yang sedang diproses atau Anda bisa membagi kueri besar menjadi beberapa kueri yang lebih kecil.

Saat perintah MENJELASKAN digunakan terhadap kueri, ini menentukan keyakinan pengoptimal untuk mengambil rekaman.

Ada tiga tingkat keyakinan di Teradata: Keyakinan Tinggi, Keyakinan Sedang, dan Keyakinan Rendah.

Baik NUSI dan Full Table Scan (FTS) akan mengakses semua AMP tetapi FTS akan mengakses semua blok di dalam AMP sedangkan NUSI akan mengakses blok hanya jika sub-tabel berisi baris yang memenuhi syarat.

Dalam mode BTEQ, perintah SKIP dapat digunakan untuk melewati record.

BYTEINT. Ini hanya menempati satu byte dan dapat menyimpan nilai hingga +127.

  • Melalui Unique Primary Index - 1 AMP
  • Melalui Indeks Utama Non Unik - 1 AMP
  • Melalui Unique Secondary Index - 2 AMP
  • Melalui Non Unique Secondary Index - Semua AMP

Klik adalah mekanisme perlindungan untuk menangani kegagalan Node. Ini adalah sekelompok node. Jika node dalam sebuah klik gagal, vprocs (Parsing Engine dan AMP) akan bermigrasi ke node lain dan terus melakukan operasi baca / tulis pada disk virtual mereka.

Teradata memberikan tingkat mekanisme perlindungan yang berbeda.

  • Transient Journal - Untuk menangani kegagalan Transaksi.

  • Fallback - Untuk menangani kegagalan AMP.

  • Cliques - Untuk menangani kegagalan Node.

  • RAID - Untuk menangani kegagalan Disk.

  • Hot standby Node - Untuk menangani kegagalan Node tanpa mempengaruhi kinerja dan memulai ulang.

ACTIVITYCOUNT memberikan jumlah baris yang dipengaruhi oleh kueri SQL sebelumnya di BTEQ. Jika pernyataan ACTIVITYCOUNT mengikuti pernyataan sisipkan, itu mengembalikan jumlah baris yang disisipkan. Jika pernyataan ACTIVITYCOUNT mengikuti pernyataan pilih, itu mengembalikan jumlah baris yang dipilih.

Apa selanjutnya?

Selanjutnya, Anda dapat memeriksa tugas-tugas sebelumnya yang telah Anda lakukan dengan subjek tersebut dan memastikan Anda dapat berbicara tentangnya dengan percaya diri. Jika Anda lebih fresh maka pewawancara tidak mengharapkan Anda akan menjawab pertanyaan yang sangat kompleks, melainkan Anda harus membuat konsep dasar Anda sangat kuat.

Kedua, tidak terlalu penting jika Anda tidak dapat menjawab beberapa pertanyaan tetapi yang penting adalah apa pun yang Anda jawab, Anda pasti menjawab dengan percaya diri. Jadi merasa percaya diri selama wawancara Anda. Kami di tutorialspoint berharap semoga Anda beruntung memiliki pewawancara yang baik dan yang terbaik untuk usaha masa depan Anda. Bersulang :-)