Membuat Service Bulk Insert Django Rest Framework

Subscribe Dengan Account Google Untuk Membaca Artikel Tanpa Iklan
Membuat Service Bulk Insert Django Rest Framework

Pada tutorial sebelumnya kita telah belajar tentang Unit Test di Django Framework. Di tutorial kali ini kita akan berlajar tentang cara membuat service untuk menyimpan multiple data dengan bulk insert.

Kenapa Harus Bulk Insert ?


Bayangkan setiap client service meng-upload ribuan data, jika terdapat seribu client yang mengupload data dalam rentang waktu bersamaan tentu ini bisa mengakibatkan latency tinggi ke database.

Salah satu cara untuk mengurangi beban kerja database, Anda dapat mengunakan feature BULK INSERT, di Django models anda bisa menggunakan method bulk_create().

Langkah Apa Saja yang Perlu Anda Lakukan ?


Sebelum Anda mengikuti tutorial ini pastikan Anda telah mengikuti tutorial tentang CRUD service produk dan juga service user login.

1) Membuat Serializer Create Product


Di tahap ini Anda perlu membuat serializers untuk create data product, atau Anda bisa mengikuti tutorial sebelumnya tentang CRUD service produk

class ProductSerializer(serializers.Serializer):
name = serializers.CharField(max_length=150)
price = serializers.IntegerField()
status = serializers.CharField(allow_blank=True)

2) Membuat fungsi bulk insert


Buat fungsi untuk menjalankan bulk insert di django framework:

def product_bulk_insert(data):
try:
pass
except Exception as e:
pass

3) Modifikasi service create product


Dibagian ini ubah fungsi insert data dari bentuk dictionary ke bentuk list.

product_bulk_insert(data)

4) Buat Unit Test untuk service create product


Dibagian ke empat ini Anda perlu membuat unit test, dengan tujuan menguji bahwa logic yang Anda buat sudah sesuai dengan ekspektasi yang Anda buat.

class ProductTest(APITestCase):
def test_bulk_insert(self):
pass

5) Uji dengan postman


Bagian ke 5 ini adalah bagian terpenting dari service product yang kita buat, dibagian ini service akan diuji menggunakan tools postman secara live. Di akhir ini anda bisa melihat apakah service benar berjalan sesuai harapan atau tidak.

6) Ikuti tutorial lengkapnya


Video :

Githubhttps://github.com/halovina/hvsuserservice/tree/bulk-insert

Baca artikel lainya:


  1. Membuat service user login bagian 1 - Konfigurasi Database

  2. Membuat service user login bagian 2 - Serializer dan JWT

  3. Membuat CRUD service product bagian 1 - Models Product

  4. Membuat CRUD service product bagian 2 - Function Serializer

  5. Membuat CRUD service product bagian 3 - Api Client Service

  6. Membaut CRUD service product bagian 4 - Auth User

  7. Membuat CRUD service product bagian 5 - TDR File Log

  8. Django upload file menggunakan FileSystemStorage

  9. Tips meningkatkan kualitas code pada bahasa python

  10. Cara memfilter tipe data string pada golang dan python

  11. Mengubah format datetime pada bahasa python

  12. Mengolah data CSV dengan python pandas

  13. Sample join data CSV di python menggunakan pandas

  14. Menggunakan redis PUB/SUB untuk aplikasi python

  15. Implementasi blockchain ethereum pada industri real estate

  16. 4 Cara mengubah dictionary ke json pada python