Tabel berikut mencakup perincian fitur MongoDB 4.0 yang didukung oleh
Cloud Firestore dengan kompatibilitas MongoDB. Untuk mengetahui perbedaan perilaku, lihat
Perbedaan perilaku.
Operator kueri dan proyeksi
Cloud Firestore dengan kompatibilitas MongoDB mendukung operator kueri dan proyeksi berikut:
Operator array
  
    
      | Operator | Didukung | 
  
  
    
      | $all | Ya | 
    
      | $elemMatch | Ya | 
    
      | $size | Ya | 
  
Operator bitwise
  
    
      | Operator | Didukung | 
  
  
    
      | $bitsAllClear | Tidak | 
    
      | $bitsAllSet | Tidak | 
    
      | $bitsAnyClear | Tidak | 
    
      | $bitsAnySet | Tidak | 
  
  
    
      | Operator | Didukung | 
  
  
    
      | $comment | Tidak | 
  
Operator perbandingan
  
    
      | Operator | Didukung | 
  
  
    
      | $eq | Ya | 
    
      | $gt | Ya | 
    
      | $gte | Ya | 
    
      | $in | Ya | 
    
      | $lt | Ya | 
    
      | $lte | Ya | 
    
      | $ne | Ya | 
    
      | $nin | Ya | 
  
Operator elemen
  
    
      | Operator | Didukung | 
  
  
    
      | $exists | Ya | 
    
      | $type | Ya | 
  
Operator kueri evaluasi
  
    
      | Operator | Didukung | 
  
  
    
      | $expr | Ya | 
    
      | $jsonSchema | Tidak | 
    
      | $mod | Ya | 
    
      | $regex | Ya | 
    
      | $text | Tidak | 
    
      | $where | Tidak | 
  
Operator logika
  
    
      | Operator | Didukung | 
  
  
    
      | $and | Ya | 
    
      | $nor | Ya | 
    
      | $not | Ya | 
    
      | $or | Ya | 
  
Operator proyeksi
  
    
      | Operator | Didukung | 
  
  
    
      | $ | Ya | 
    
      | $elemMatch | Ya | 
    
      | $meta | Tidak | 
    
      | $slice | Ya | 
  
Operator update
Cloud Firestore dengan kompatibilitas MongoDB mendukung operator update berikut.
Operator array
  
    
      | Operator | Didukung | 
  
  
    
      | $ | Ya | 
    
      | $[] | Ya | 
    
      | $[<identifier>] | Ya | 
    
      | $addToSet | Ya | 
    
      | $pop | Ya | 
    
      | $pull | Ya | 
    
      | $pullAll | Ya | 
    
      | $push | Ya | 
  
Operator bitwise
  
    
      | Operator | Didukung | 
  
  
    
      | $bit | Ya | 
  
Operator kolom
  
    
      | Operator | Didukung | 
  
  
    
      | $currentDate | Ya | 
    
      | $inc | Ya | 
    
      | $max | Ya | 
    
      | $min | Ya | 
    
      | $mul | Ya | 
    
      | $rename | Ya | 
    
      | $setOnInsert | Ya | 
  
Pengubah update
  
    
      | Pengubah | Didukung | 
  
  
    
      | $each | Ya | 
    
      | $position | Ya | 
    
      | $slice | Ya | 
    
      | $sort | Ya | 
  
Operator pipeline agregasi
Cloud Firestore dengan kompatibilitas MongoDB mendukung operator pipeline agregasi berikut.
Akumulator
  
    
      | Ekspresi | Didukung | 
  
  
    
      | $addToSet | Ya | 
    
      | $avg | Ya | 
    
      | $count | Ya | 
    
      | $first | Ya | 
    
      | $last | Ya | 
    
      | $max | Ya | 
    
      | $mergeObjects | Ya | 
    
      | $min | Ya | 
    
      | $push | Ya | 
    
      | $stdDevPop | Tidak | 
    
      | $stdDevSamp | Tidak | 
    
      | $sum | Ya | 
  
Ekspresi akumulator
  
    
      | Ekspresi | Didukung | 
  
  
    
      | $avg | Ya | 
    
      | $first | Ya | 
    
      | $last | Ya | 
    
      | $max | Ya | 
    
      | $min | Ya | 
    
      | $stdDevPop | Tidak | 
    
      | $stdDevSamp | Tidak | 
    
      | $sum | Ya | 
  
Operator aritmatika
Batasan: Operator aritmetika tidak mendukung nilai decimal128.
  
    
      | Operator | Didukung | 
  
  
    
      | $abs | Ya | 
    
      | $add | Ya | 
    
      | $ceil | Ya | 
    
      | $divide | Ya | 
    
      | $exp | Ya | 
    
      | $floor | Ya | 
    
      | $ln | Ya | 
    
      | $log | Ya | 
    
      | $log10 | Ya | 
    
      | $mod | Ya | 
    
      | $multiply | Ya | 
    
      | $pow | Ya | 
    
      | $sqrt | Ya | 
    
      | $subtract | Ya | 
    
      | $trunc | Ya | 
  
Operator array
  
    
      | Operator | Didukung | 
  
  
    
      | $arrayElemAt | Ya | 
    
      | $arrayToObject | Ya | 
    
      | $concatArrays | Ya | 
    
      | $filter | Ya | 
    
      | $firstN | Ya | 
    
      | $in | Ya | 
    
      | $indexOfArray | Ya | 
    
      | $isArray | Ya | 
    
      | $map | Ya | 
    
      | $objectToArray | Ya | 
    
      | $range | Ya | 
    
      | $reduce | Ya | 
    
      | $reverseArray | Ya | 
    
      | $size | Ya | 
    
      | $slice | Ya | 
    
      | $zip | Ya | 
  
Operator Boolean
  
    
      | Operator | Didukung | 
  
  
    
      | $and | Ya | 
    
      | $not | Ya | 
    
      | $or | Ya | 
  
Operator perbandingan
  
    
      | Operator | Didukung | 
  
  
    
      | $cmp | Ya | 
    
      | $eq | Ya | 
    
      | $gt | Ya | 
    
      | $gte | Ya | 
    
      | $lt | Ya | 
    
      | $lte | Ya | 
    
      | $ne | Ya | 
  
Operator ekspresi kondisional
  
    
      | Operator | Didukung | 
  
  
    
      | $cond | Ya | 
    
      | $ifNull | Ya | 
    
      | $switch | Ya | 
  
Operator tanggal
  
    
      | Operator | Didukung | 
  
  
    
      | $dateAdd | Ya | 
    
      | $dateDiff | Ya | 
    
      | $dateFromParts | Ya | 
    
      | $dateFromString | Ya | 
    
      | $dateSubtract | Ya | 
    
      | $dateToParts | Ya | 
    
      | $dateToString | Ya | 
    
      | $dateTrunc | Ya | 
    
      | $dayOfMonth | Ya | 
    
      | $dayOfWeek | Ya | 
    
      | $dayOfYear | Ya | 
    
      | $hour | Ya | 
    
      | $isoDayOfWeek | Ya | 
    
      | $isoWeek | Ya | 
    
      | $isoWeekYear | Ya | 
    
      | $millisecond | Ya | 
    
      | $minute | Ya | 
    
      | $month | Ya | 
    
      | $second | Ya | 
    
      | $toDate | Ya | 
    
      | $week | Ya | 
    
      | $year | Ya | 
  
Operator lain-lain
  
    
      | Operator | Didukung | 
  
  
    
      | $getField | Ya | 
    
      | $natural | Ya (menaik) | 
    
      | $toHashedIndexKey | Tidak | 
  
Operator ekspresi literal
  
    
      | Operator | Didukung | 
  
  
    
      | $literal | Ya | 
  
Operator objek
  
    
      | Operator | Didukung | 
  
  
    
      | $mergeObjects | Ya | 
    
      | $objectToArray | Ya | 
    
      | $setField | Tidak | 
  
Operator set
  
    
      | Operator | Didukung | 
  
  
    
      | $allElementsTrue | Ya | 
    
      | $anyElementTrue | Ya | 
    
      | $setDifference | Ya | 
    
      | $setEquals | Ya | 
    
      | $setIntersection | Ya | 
    
      | $setIsSubset | Ya | 
    
      | $setUnion | Ya | 
  
Operator stage
  
    
      | Operator | Didukung | 
  
  
    
      | $addFields | Ya | 
    
      | $bucket | Ya | 
    
      | $bucketAuto | Tidak | 
    
      | $collStats | Tidak | 
    
      | $count | Ya | 
    
      | $currentOp | Tidak | 
    
      | $documents | Ya | 
    
      | $facet | Ya | 
    
      | $geoNear | Tidak | 
    
      | $graphLookup | Tidak | 
    
      | $group | Ya | 
    
      | $indexStats | Tidak | 
    
      | $limit | Ya | 
    
      | $listLocalSessions | Tidak | 
    
      | $listSessions | Tidak | 
    
      | $lookup | Ya Tidak mendukung kolom letdanpipeline. | 
    
      | $match | Ya | 
    
      | $out | Tidak | 
    
      | $project | Ya | 
    
      | $redact | Tidak | 
    
      | $replaceRoot | Ya | 
    
      | $sample | Tidak | 
    
      | $set | Ya | 
    
      | $setWindowFields | Tidak | 
    
      | $skip | Ya | 
    
      | $sort | Ya | 
    
      | $sortByCount | Ya | 
    
      | $unset | Ya | 
    
      | $unwind | Ya | 
  
Operator string
  
    
      | Operator | Didukung | 
  
  
    
      | $concat | Ya | 
    
      | $dateFromString | Ya | 
    
      | $dateToString | Ya | 
    
      | $indexOfBytes | Ya | 
    
      | $indexOfCP | Ya | 
    
      | $ltrim | Ya | 
    
      | $rtrim | Ya | 
    
      | $split | Ya | 
    
      | $strcasecmp | Ya | 
    
      | $strLenBytes | Ya | 
    
      | $strLenCP | Ya | 
    
      | $substr | Ya | 
    
      | $substrBytes | Ya | 
    
      | $substrCP | Ya | 
    
      | $toLower | Ya | 
    
      | $toString | Ya | 
    
      | $toUpper | Ya | 
    
      | $trim | Ya | 
  
Variabel sistem
  
    
      | Variabel | Didukung | 
  
  
    
      | $$CURRENT | No | 
    
      | $$DESCEND | Tidak | 
    
      | $$KEEP | No | 
    
      | $$PRUNE | Tidak | 
    
      | $$REMOVE | Yes | 
    
      | $$ROOT | Ya | 
  
Operator teks
  
    
      | Operator | Didukung | 
  
  
    
      | $meta | Tidak | 
  
Operator jenis
  
    
      | Operator | Didukung | 
  
  
    
      | $convert | Ya | 
    
      | $toBool | Ya | 
    
      | $toDate | Ya | 
    
      | $toDecimal | Ya | 
    
      | $toDouble | Ya | 
    
      | $toInt | Ya | 
    
      | $toLong | Ya | 
    
      | $toObjectId | Ya | 
    
      | $toString | Ya | 
    
      | $type | Ya | 
  
Operator variabel
  
    
      | Operator | Didukung | 
  
  
    
      | $let | Ya | 
  
Geospasial
Cloud Firestore dengan kompatibilitas MongoDB mendukung operator Geospatial berikut.
Penentu geometri
  
    
      | Penentu | Didukung | 
  
  
    
      | $box | Tidak | 
    
      | $center | Tidak | 
    
      | $centerSphere | Tidak | 
    
      | $geometry | Tidak | 
    
      | $maxDistance | Tidak | 
    
      | $minDistance | Tidak | 
    
      | $polygon | Tidak | 
    
      | $uniqueDocs | Tidak | 
  
Pemilih kueri
  
    
      | Pemilih | Didukung | 
  
  
    
      | $geoIntersects | Tidak | 
    
      | $geoWithin | Tidak | 
    
      | $near | Tidak | 
    
      | $nearSphere | Tidak | 
    
      | $nearSphere | Tidak | 
    
      | $uniqueDocs | Tidak | 
  
Indeks dan properti indeks
Cloud Firestore dengan kompatibilitas MongoDB mendukung indeks dan operator indeks berikut.
Indeks
  
    
      | Jenis indeks | Didukung | 
  
  
    
      | 2D | Tidak | 
    
      | 2dsphere | Tidak | 
    
      | Gabungan | Ya | 
    
      | Hash | Tidak | 
    
      | Multikey | Ya | 
    
      | Kolom Tunggal | Ya | 
    
      | Teks | Tidak | 
  
Properti indeks
  
    
      | Properti | Didukung | 
  
  
    
      | Latar belakang | Ya | 
    
      | Tidak Peka Huruf Besar/Kecil | Tidak | 
    
      | Sebagian | Tidak | 
    
      | Non-Sparse | Ya | 
    
      | Sparse | Ya | 
    
      | Teks | Tidak | 
    
      | TTL | Tidak | 
    
      | Unik | Ya | 
    
      | Vektor | Tidak | 
  
Perintah database
Cloud Firestore dengan kompatibilitas MongoDB mendukung perintah database berikut.
Agregasi
  
    
      | Perintah | Didukung | 
  
  
    
      | aggregate | Ya | 
    
      | count | Ya | 
    
      | distinct | Ya | 
    
      | group | Tidak Stage $groupdalam agregasi didukung, sedangkan perintah grup tidak. | 
    
      | mapReduce | Tidak | 
  
Autentikasi
  
    
      | Perintah | Didukung | 
  
  
    
      | authenticate | Tidak | 
    
      | getnonce | Tidak | 
    
      | logout | Tidak | 
  
Operasi kueri dan tulis
  
    
      | Perintah | Didukung | 
  
  
    
      | watch(Aliran Perubahan) | Tidak | 
    
      | delete | Ya | 
    
      | eval | Tidak | 
    
      | find | Ya | 
    
      | findAndModify | Ya | 
    
      | getLastError | Ya | 
    
      | getMore | Ya | 
    
      | getPrevError | Tidak | 
    
      | GridFS | Tidak | 
    
      | insert | Ya | 
    
      | parallelCollectionScan | Tidak | 
    
      | replaceOne | Tidak Metode driver replaceOnedidukung dengan perintahupdate. | 
    
      | resetError | Tidak | 
    
      | update | Ya | 
  
Perintah sesi
  
    
      | Perintah | Didukung | 
  
  
    
      | abortTransaction | Ya | 
    
      | commitTransaction | Ya | 
    
      | endSessions | Ya | 
    
      | killAllSessions | Tidak | 
    
      | killAllSessionsByPattern | Tidak | 
    
      | killSessions | Tidak | 
    
      | refreshSessions | Tidak | 
    
      | startSession | Sesi dapat dimulai menggunakan metode driver startSession. | 
  
Perintah administratif
Cloud Firestore dengan kompatibilitas MongoDB mendukung perintah administratif berikut.
  
    
      | Perintah | Didukung | 
  
  
    
      | cloneCollectionAsCapped | Tidak | 
    
      | collMod | Tidak | 
    
      | collMod: expireAfterSeconds | Tidak | 
    
      | convertToCapped | Tidak | 
    
      | copydb | Tidak | 
    
      | create | Ya | 
    
      | createIndex | Ya Untuk membuat indeks, lihat Mengelola indeks. | 
    
      | createIndexes | Ya Untuk membuat indeks, lihat Mengelola indeks. | 
    
      | createView | Tidak | 
    
      | currentOp | Tidak | 
    
      | drop | Tidak | 
    
      | dropDatabase | Tidak Untuk menghapus database, lihat Menghapus database. | 
    
      | dropIndex | Ya Untuk menghapus indeks, lihat Mengelola indeks. | 
    
      | dropIndexes | Tidak | 
    
      | filemd5 | Tidak | 
    
      | getAuditConfig | Tidak | 
    
      | killCursors | Ya | 
    
      | killOp | Tidak | 
    
      | listCollections | Ya | 
    
      | listDatabases | Ya | 
    
      | listIndexes | Ya | 
    
      | reIndex | Tidak | 
    
      | renameCollection | Tidak | 
    
      | setAuditConfig | Tidak | 
  
Perintah diagnostik
  
    
      | Perintah | Didukung | 
  
  
    
      | buildInfo | Ya | 
    
      | collStats | Tidak | 
    
      | connectionStatus | Ya | 
    
      | connPoolStats | Tidak | 
    
      | dataSize | Tidak | 
    
      | dbHash | Tidak | 
    
      | dbStats | Tidak | 
    
      | explain | Ya Untuk mengetahui perbedaan dan batasan perilaku, lihat Penjelasan Kueri | 
    
      | features | Tidak | 
    
      | hello | Ya | 
    
      | hostInfo | Ya | 
    
      | listCommands | Tidak | 
    
      | profiler | Tidak | 
    
      | serverStatus | Tidak | 
    
      | top | Tidak | 
    
      | whatsmyuri | Tidak | 
  
Perintah pengelolaan peran
Untuk mengelola akses database, Cloud Firestore dengan kompatibilitas MongoDB mendukung
peran dan izin Identity and Access Management.
  
    
      | Perintah | Didukung | 
  
  
    
      | createRole | Tidak | 
    
      | dropAllRolesFromDatabase | Tidak | 
    
      | dropRole | Tidak | 
    
      | grantRolesToRole | Tidak | 
    
      | revokePrivilegesFromRole | Tidak | 
    
      | revokeRolesFromRole | Tidak | 
    
      | rolesInfo | Tidak | 
    
      | updateRole | Tidak | 
  
Langkah berikutnya