Harga Firestore dalam mode Datastore

Dokumen ini menjelaskan detail harga mode Datastore.

Penggunaan gratis

Firestore dalam mode Datastore menawarkan penggunaan gratis sehingga Anda dapat memulai tanpa biaya. Agar dapat melebihi kuota penggunaan gratis, Anda harus mengaktifkan penagihan untuk project Anda.

Penggunaan Anda dihitung setiap hari dan direset pada tengah malam waktu Pasifik.

Penggunaan gratis
Operasi pembacaan entity 50.000 per hari
Operasi penulisan entity 20.000 per hari
Operasi penghapusan entity 20.000 per hari
Data tersimpan 1 GiB
Operasi kecil 50.000 per hari
Transfer data keluar 10 GiB per bulan

Operasi dan fitur berikut tidak mencakup penggunaan gratis. Anda harus mengaktifkan penagihan untuk menggunakan fitur ini:

  • Data PITR
  • Mencadangkan data
  • Operasi pemulihan
  • Operasi clone
  • TTL

Untuk mengetahui informasi selengkapnya tentang cara penagihan fitur ini, lihat Pertimbangan ukuran penyimpanan.

Harga berdasarkan region

Untuk melihat harga untuk pembacaan, penulisan, penghapusan, dan penyimpanan untuk setiap lokasi mode Datastore, lihat harga Firestore.

Operasi baca

Anda dikenai biaya satu operasi baca untuk setiap entitas yang dibaca dan satu operasi baca untuk setiap batch hingga 1.000 entri indeks yang dibaca.

Entri indeks

Anda dikenai biaya satu operasi baca untuk setiap batch hingga 1.000 entri indeks yang dibaca oleh kueri kecuali dalam hal berikut:

Kueri yang memiliki hingga satu properti rentang tidak dikenai biaya untuk entri indeks yang dibaca dan memiliki biaya minimum nol operasi baca. Gunakan contoh berikut untuk memahami kapan pembacaan entri indeks dikenai biaya. Kemudian, gunakan bagian billing_details dari Query Explain untuk memvalidasi pemahaman Anda.

Kueri berikut berisi satu properti kesetaraan (age) dan satu properti rentang (start_date) dan tidak dikenai biaya untuk entri indeks yang dibaca:

Query<Entity> query =
    Query.newEntityQueryBuilder()
        .setKind("Employee")
        .setFilter(
            CompositeFilter.and(
                PropertyFilter.eq("age", 35), PropertyFilter.ge("start_date", new Date(2020, 1, 1))))
        .build();

Kueri berikut berisi dua properti rentang (age dan start_date) serta ditagih untuk entri indeks yang dibaca:

Query<Entity> query =
    Query.newEntityQueryBuilder()
        .setKind("Employee")
        .setFilter(
            CompositeFilter.and(
                PropertyFilter.ge("age", 35), PropertyFilter.ge("start_date", new Date(2020, 1, 1))))
        .build();

Properti yang muncul dalam klausa order by dianggap sebagai properti rentang jika ada setidaknya satu properti rentang lainnya. Oleh karena itu, kueri berikut berisi dua properti rentang (age dan start_date) serta dikenai biaya untuk entri indeks yang dibaca:

Query<Entity> query =
    Query.newEntityQueryBuilder()
        .setKind("Employee")
        .setFilter(PropertyFilter.ge("age", 35))
        .setOrderBy(OrderBy.asc("start_date")).build()
        .build();

Properti yang muncul dalam klausa distinct on dianggap sebagai properti rentang jika ada setidaknya satu properti rentang lainnya. Oleh karena itu, kueri berikut berisi dua properti rentang (age dan start_date) serta dikenai biaya untuk entri indeks yang dibaca:

Query<Entity> query =
    Query.newEntityQueryBuilder()
        .setKind("Employee")
        .setFilter(PropertyFilter.ge("age", 35))
        .setDistinctOn("start_date")
        .build();

Kueri agregasi

Untuk kueri agregasi count(), sum(), dan avg(), Anda dikenai biaya satu pembacaan entity untuk setiap batch hingga 1.000 entri indeks yang dibaca oleh kueri.

Misalnya, kueri agregasi yang membaca antara 0 dan 1.000 entri indeks akan ditagih untuk satu pembacaan entity. Untuk kueri agregasi yang membaca 1.500 entri indeks, Anda akan ditagih 2 pembacaan entity.

Untuk mempelajari lebih lanjut indeks yang digunakan dan entri indeks yang dibaca, gunakan Query Explain.

Transformasi properti

Setiap operasi transformasi properti seperti increment dan appendMissingElements dikenai biaya untuk pembacaan dan penulisan. Operasi commit dengan penyisipan, pembaruan, atau upsert dan transformasi properti pada entity yang sama dihitung sebagai satu pembacaan dan satu penulisan.

Operasi kecil

Operasi kecil meliputi:

  • Panggilan untuk mengalokasikan ID.
  • Kueri hanya-kunci. Kueri hanya-kunci dihitung sebagai satu operasi pembacaan entity untuk kueri itu sendiri. Hasil individual dihitung sebagai operasi kecil.
  • Kueri proyeksi yang tidak menggunakan klausa distinct on. Jenis kueri ini dihitung sebagai satu operasi pembacaan entity untuk kueri itu sendiri. Hasil individual dihitung sebagai operasi kecil.

Operasi kecil dapat digunakan tanpa biaya, tetapi Anda harus mengaktifkan penagihan jika ingin melebihi kuota penggunaan gratis per hari.

Query Explain dan Analyze

Penggunaan Query Explain and Analyze akan menimbulkan biaya.

Saat kueri dijelaskan dengan opsi default, tidak ada operasi baca indeks atau entity yang dijalankan. Terlepas dari kompleksitas kueri, satu operasi baca akan dikenai biaya.

Saat kueri dijelaskan dengan opsi analisis, operasi indeks dan baca akan dijalankan, sehingga Anda akan dikenai biaya untuk kueri tersebut seperti biasa. Tidak ada biaya tambahan untuk aktivitas penjelasan dan analisis, hanya biaya biasa untuk kueri yang dijalankan.

Bandwidth jaringan

Anda dikenai biaya untuk bandwidth jaringan yang digunakan oleh permintaan Firestore dalam mode Datastore, seperti ditunjukkan pada bagian berikut. Biaya bandwidth jaringan permintaan bergantung pada ukuran respons permintaan, lokasi database mode Datastore, dan tujuan respons.

Harga jaringan umum

Untuk permintaan yang berasal dari Google Cloud Platform (misalnya, dari aplikasi yang berjalan di Google Compute Engine), Anda dikenai biaya sebagai berikut:

Jenis traffic Harga
Transfer data masuk Gratis
Transfer data dalam suatu region Gratis
Transfer data antar-region dalam multi-region yang sama Gratis
Transfer data antar-region di AS (per GiB) $0,01 (gratis 10 GiB pertama per bulan)
Transfer data antar-region, tidak termasuk traffic antar-region di AS Tarif transfer data keluar internet Google Cloud Platform

Jika Anda melakukan pembayaran dengan mata uang selain USD, yang berlaku adalah harga yang tercantum dalam mata uang Anda pada SKU Cloud Platform.

Kecepatan transfer data internet

Anda akan dikenai biaya untuk transfer data internet untuk hal berikut:

  • Google Cloud permintaan antar-region, tidak termasuk traffic antar-region AS
  • Permintaan dari luar Google Cloud

Jika Anda melakukan pembayaran dengan mata uang selain USD, yang berlaku adalah harga yang tercantum dalam mata uang Anda pada SKU Cloud Platform.

Operasi ekspor dan impor

Operasi ekspor dan impor akan ditagih untuk operasi pembacaan dan penulisan entity sesuai tarif yang ditunjukkan pada tabel di atas. Jika Anda membatalkan ekspor atau impor, Anda akan ditagih untuk operasi yang dijalankan hingga waktu ketika permintaan pembatalan tersebut diterapkan melalui Firestore dalam mode Datastore.

Menemukan informasi penggunaan kuota untuk aplikasi Anda

Untuk melihat penggunaan mode Datastore aplikasi Anda, termasuk pemakaian kuota, buka halaman Detail Kuota App Engine. Anda perlu melakukan langkah ini sekalipun aplikasi Anda tidak dijalankan di App Engine.

Resource mode Datastore yang digunakan oleh aplikasi Anda tercantum di halaman Penyimpanan yang ditampilkan. Anda dapat mengklik Tampilkan resource yang tidak digunakan jika ingin melihat daftar lengkap informasi kuota yang tersedia.

Pertimbangan ukuran penyimpanan

Anda dikenai biaya untuk jumlah data yang disimpan dalam mode Datastore, termasuk overhead penyimpanan. Jumlah overhead meliputi metadata, indeks bawaan, indeks gabungan, dan versi pemulihan point-in-time (PITR). Anda juga dikenai biaya untuk ukuran penyimpanan cadangan dan operasi pemulihan.

Setiap entity yang disimpan dalam database Anda memerlukan metadata berikut yang berkontribusi terhadap ukuran penyimpanan:

  • Kunci entity, termasuk jenis, ID atau nama kunci, dan kunci ancestor entity.
  • Nama dan nilai setiap properti. Karena Firestore dalam mode Datastore tidak memiliki skema, nama setiap properti harus disimpan bersama nilai properti untuk setiap entity tertentu.
  • Setiap baris indeks bawaan dan gabungan yang merujuk ke entity ini. Setiap baris memuat jenis entity, sejumlah nilai properti bergantung pada definisi indeksnya, dan kunci entity.

Pelajari metode penghitungan penyimpanan mode Datastore di Penghitungan Ukuran Penyimpanan.

Data PITR

Jika mengaktifkan PITR, Anda akan dikenai biaya untuk penyimpanan data PITR. Sebagian besar pelanggan akan menemukan bahwa biaya keseluruhan penyimpanan data PiTR hampir sama dengan biaya penyimpanan database.

Biaya penyimpanan untuk PITR adalah dalam GiB/bulan dan dihitung setiap hari. Mode Datastore mengukur ukuran database setiap hari. Selama sebulan, titik contoh ini dirata-ratakan untuk menghitung ukuran penyimpanan database. Nilai rata-rata ini dikalikan dengan harga satuan PITR (GiB-bulan).

Misalnya, jika ukuran rata-rata database Anda selama satu bulan adalah 1 GiB dan PITR diaktifkan untuk satu bulan penuh, maka ukuran data PITR yang dapat ditagih juga 1 GiB.

Penagihan minimum: Anda dapat ditagih hingga 1 hari biaya penyimpanan PITR meskipun Anda menonaktifkan PITR dalam satu hari setelah pengaktifan.

Operasi pencadangan dan pemulihan data

Jika Anda mengaktifkan backups, Anda akan dikenai biaya untuk penyimpanan cadangan database. Ukuran penyimpanan untuk cadangan sama dengan ukuran penyimpanan database saat cadangan diambil.

Biaya penyimpanan untuk cadangan adalah dalam GiB/bulan. Selama periode sebulan, jumlah hari saat setiap cadangan dipertahankan dan rata-rata selama sebulan juga akan dihitung. Biaya setiap cadangan dihitung menggunakan ukuran penyimpanan cadangan dikalikan dengan proporsi bulan saat cadangan dipertahankan, dikalikan dengan harga satuan. Batas hari ditentukan oleh zona waktu America/Los_Angeles untuk tujuan penagihan.

Saat Anda melakukan operasi pemulihan, mode Datastore mengukur ukuran cadangan untuk operasi pemulihan. Ukuran cadangan dikalikan dengan harga satuan operasi pemulihan (GiB).

Langkah berikutnya

Meminta penawaran harga khusus

Dengan model harga bayar sesuai penggunaan Google Cloud, Anda hanya membayar untuk layanan yang Anda gunakan. Hubungi tim penjualan kami untuk mendapatkan penawaran harga khusus bagi organisasi Anda.
Hubungi bagian penjualan