MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Tìm kiếm toàn văn trong MongoDB

Vì tôi chưa tìm thấy, rất nhiều trợ giúp với tìm kiếm ký tự đại diện / Tìm kiếm toàn văn bằng Mongo, tôi đã nghĩ ra một công việc phù hợp với yêu cầu của mình.

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++;
 }

Tôi đọc danh sách các trường tùy chỉnh cho từng nhóm tài liệu, sau đó tạo một Trường Mongo nối, sau đó sử dụng truy vấn Regex trên trường đó.

Sau đó, để cải thiện hiệu suất của truy vấn đã thêm chỉ mục sau

  _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. hộ chiếu các nút Lỗi:Chiến lược xác thực không xác định đăng nhập cục bộ

  2. MongoDB riêng biệt ()

  3. Tạo ISODate cho MongoDB bằng PHP

  4. Mongodb cập nhật phần tử cụ thể từ mảng con

  5. Chỉ truy vấn tài liệu con và chỉ trả lại tài liệu con so khớp