Pengenalan
Singer adalah alat ETL sumber terbuka yang membantu Anda memindahkan data dari berbagai sumber ke destinasi yang Anda inginkan. Artikel ini memperkenalkan cara menggunakan Singer.
Persiapan Singer Tap
Tap dalam Singer adalah skrip yang mengambil data dari sebuah sumber dan menghasilkan data yang diformat dalam JSON. Tap memfasilitasi bagian ekstraksi dari proses ETL. Bab ini akan membimbing Anda dalam memilih, menginstal, dan mengonfigurasi Singer Tap pertama Anda.
Memilih Tap
Singer mendukung berbagai jenis Tap, masing-masing disesuaikan untuk sumber data tertentu, seperti database (Postgres, MySQL, MongoDB), API (Salesforce, Stripe), dan berkas (CSV, Excel). Anda harus memilih Tap yang sesuai dengan sumber data yang ingin Anda ekstraksi.
Menginstal Tap
Gunakan perintah pip untuk menginstal Tap yang spesifik yang Anda butuhkan. Misalnya, untuk menginstal Tap untuk Salesforce, Anda akan mengetik: pip install tap-salesforce
Mengonfigurasi Tap
Setelah Tap Anda terinstal, Anda perlu mengonfigurasinya agar terhubung dengan sumber data Anda. Konfigurasi umumnya mencakup kredensial akses, seperti kunci API, nama pengguna, kata sandi, nama host, dan pengaturan khusus sumber data lainnya.
Misalnya, untuk mengonfigurasi Tap Salesforce, Anda akan membuat file config.json
dengan struktur berikut:
{
"client_id": "your_salesforce_client_id",
"client_secret": "your_salesforce_client_secret",
"refresh_token": "your_salesforce_refresh_token",
"start_date": "start_date_in_YYYY-MM-DD_format"
}
Mengatur Singer Target
Target dalam Singer mengonsumsi data dari Tap dan memuatnya ke tujuan, seperti database atau berkas. Target memfasilitasi bagian pemuatan dalam proses ETL. Bab ini akan membimbing Anda dalam memilih, menginstal, dan mengkonfigurasi Singer Target pertama Anda.
Memilih Target
Sama seperti Tap, Singer mendukung berbagai macam Target, masing-masing untuk tujuan tertentu. Anda harus memilih Target yang sesuai dengan tujuan data yang Anda inginkan.
Menginstal Target
Gunakan perintah pip untuk menginstal Target spesifik yang Anda butuhkan. Misalnya, untuk menginstal Target Postgres, Anda akan mengetikkan: pip install target-postgres
Mengkonfigurasi Target
Target juga perlu dikonfigurasi agar terhubung ke tujuan yang diinginkan. Sama seperti Tap, konfigurasi umumnya mencakup kredensial akses dan pengaturan khusus tujuan.
Misalnya, untuk mengkonfigurasi Target Postgres, Anda akan membuat file config.json
dengan struktur berikut:
{
"host": "your_postgres_host",
"port": "your_postgres_port",
"user": "your_postgres_username",
"password": "your_postgres_password",
"dbname": "your_postgres_database"
}
Menjalankan Pipa Singer
Sekarang setelah Anda mengkonfigurasi Tap dan Target Anda, Anda siap untuk menjalankan pipa Singer ETL Anda. Proses ini melibatkan menjalankan skrip Tap dan Target bersama sehingga data diekstraksi secara mulus dari sumber dan dimuat ke tujuan.
Menggabungkan Tap dan Target
Singer memungkinkan Anda menghubungkan Tap apa pun ke Target apa pun, memberi Anda fleksibilitas yang besar dalam mengelola alur kerja ETL Anda. Koneksi ini dicapai dengan menjalankan skrip Tap dan Target secara bersamaan dan mengalirkan output Tap (data yang diekstraksi) ke Target (tujuan pemuatan).
Menjalankan Pipa
Setelah Anda menginstal dan mengkonfigurasi Tap dan Target, Anda siap untuk menjalankan pipa Anda. Berikut cara melakukannya:
- Buka Terminal atau Command Line
Pertama, buka terminal atau antarmuka command line Anda. Arahkan ke direktori di mana file config.json
untuk Tap dan Target Anda berada.
- Jalankan Pipa Singer
Sekarang, Anda dapat menjalankan pipa Singer dengan perintah berikut:
$ tap-salesforce -c tap_config.json | target-postgres -c target_config.json
tap-salesforce -c tap_config.json
menjalankan Tap Salesforce dengan menggunakan konfigurasi dalamtap_config.json
.- Simbol
|
(pipe) mengambil output dari skrip Tap (data yang diekstraksi) dan memasukkannya sebagai input ke skrip Target. target-postgres -c target_config.json
menjalankan Target Postgres dengan menggunakan konfigurasi dalamtarget_config.json
.
Ketika Anda menjalankan perintah ini, skrip Tap akan mulai mengekstraksi data dari Salesforce, dan skrip Target akan memuat data ini ke database Postgres Anda.
Referensi