MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Pencarian teks lengkap MongoDB

Karena saya belum menemukan, banyak bantuan dengan pencarian wildcard/Pencarian teks lengkap menggunakan Mongo, saya telah menemukan solusi untuk kebutuhan saya.

foreach (var doc in batch)
  {
     if (custDictionary.ContainsKey(projectId))
        {
           string concatenatedCustomFields = custFieldsList.Aggregate(string.Empty,
                            (current, custField) =>
                                current +
                                (ds.Tables[0].Columns.Contains(custField)
                                    ? (ds.Tables[0].Rows[i][custField].GetType().Name == typeof(DBNull).Name
                                        ? string.Empty
                                        : ((string) ds.Tables[0].Rows[i][custField]).StripHtml())
                                    : string.Empty));

                        doc.Add("CustomFieldsConcatenated", concatenatedCustomFields);
        }
    i++;
 }

Saya membaca daftar bidang khusus untuk setiap grup dokumen, lalu membuat Bidang Mongo yang digabungkan, lalu menggunakan kueri Regex pada bidang itu.

Kemudian untuk meningkatkan kinerja kueri ditambahkan indeks berikut

  _mongoConnect.Database?.GetCollection<BsonDocument>("MyCollectionName")
                .Indexes.CreateOneAsync(new BsonDocument("CustomFieldsConcatenated", "hashed"), new CreateIndexOptions { Name = "CollectionName_FieldName_Index" });


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Menghubungkan ke MongoDB 3.0 dengan Java Spring

  2. Pencadangan dan Pemulihan MongoDB

  3. Mongo. Kueri dokumen dengan larik yang anak-anaknya SEMUA harus cocok dengan kueri

  4. Kecepatan Pembaruan Mongo

  5. cara menyusun indeks majemuk di mongodb