2015-04-21 26 views
7

Im khá là một newbie khi nói đến DB và tìm kiếm vì vậy hãy chịu với tôi. Tôi đang cố triển khai chức năng tìm kiếm trong ứng dụng Meteor. Ive đã kiểm tra bầu không khí và thích thú với 4 tùy chọn này.Công cụ tìm kiếm trong Meteor JS

  1. Mattodem tìm kiếm dễ dàng
  2. Tìm Nguồn
  3. gói tìm kiếm Elastic vào Khí quyển (nghe này là ngày)
  4. đàn hồi gói dữ liệu lớn trên Atmosphere

nhu cầu của tôi là dành cho một tìm kiếm đơn giản , có thể xử lý các tập dữ liệu lớn hơn có thể có dữ liệu lồng nhau. Ví dụ: tác vụ, có thể có nhận xét hoặc liên kết, v.v. (Toàn văn và hơn truy vấn regex sẽ tốt)

Tôi đọc để tìm kiếm dễ dàng, ngay cả với một số ứng dụng Mongodb hoặc đàn hồi, dường như chỉ là ứng dụng cho một bộ sưu tập Mongo duy nhất? Ví dụ: nếu tôi muốn tìm kiếm trên Dinosaurs = new Meteor.Collection('dinosaurs');Mammals = new Meteor.Collection('mammals');?

Đánh giá cao mọi lời khuyên về ưu và khuyết điểm trên 4 tùy chọn ở trên? 1 có vẻ tương đối dễ dàng để thực hiện nhưng tôi, m không chắc chắn những gì nó có nghĩa là bằng cách sử dụng động cơ đàn hồi here. Nếu tôi đã thực hiện đàn hồi, làm thế nào để tôi thực hiện nó trong Meteor? Và nó có khác với việc triển khai API của Elasticsearch HTTP không?

Tương tự cho Nguồn tìm kiếm, nó hỗ trợ Elastic quá here. Thành thật mà nói tôi không có đầu mối về sự khác biệt.

dự án
+1

Chúng tôi sử dụng http://lunrjs.com/ bên trong một nhân viên dịch vụ với dự phòng cho các tìm kiếm văn bản của chúng tôi trong Meteor khá đơn giản để triển khai và hoạt động tốt với các tập dữ liệu rất lớn. – Calvin

+1

Chỉ cần chỉ ra, tính năng tìm kiếm dễ dàng hoạt động với nhiều chỉ mục. xem tại đây: http://matteodem.github.io/meteor-easy-search/docs/blaze-components/ – TDmoneybanks

Trả lời

2

github này cho thấy làm thế nào để sử dụng Meteor với ElasticSearch (không Mongo) cho các ứng dụng tìm kiếm

https://github.com/hharnisc/meteor-elasticsearch-demo/tree/master/elasticsearch-demo/packages/elastic-collection

nó về cơ bản liên kết một lĩnh vực cho một biến session mà gây nên tìm kiếm trên đàn hồi. các kết quả được lưu trữ trong một bộ sưu tập mongo được đẩy tới máy khách thông qua cơ chế Meteor. Đây là nhỏ hơn nhiều so với tập dữ liệu và do đó nhanh chóng cập nhật.

Theo như tìm kiếm trong bộ sưu tập, đây là vấn đề điển hình của định nghĩa lược đồ cơ sở dữ liệu. Nếu bạn cần tham gia, mongodb không phải là giải pháp tốt nhất. và DB quan hệ giống như bất kỳ SQL DB nào sẽ phù hợp hơn, Tuy nhiên, bạn nên xem xét 'không chuẩn hóa' dữ liệu của mình để xem liệu bạn có thể tạo cấu trúc sẽ hoạt động tốt cho trường hợp sử dụng của bạn hay không.

Bài viết này giải thích điều này có nghĩa khá tốt:

http://blog.mongodb.org/post/87892923503/6-rules-of-thumb-for-mongodb-schema-design-part-2

Chúc may mắn.

Các vấn đề liên quan