MongoDB
 sql >> डेटाबेस >  >> NoSQL >> MongoDB

मोंगोडीबी. पढ़ें, oplog के आधार पर टाइमस्टैम्प खोजें

Timestamp ओप्लॉग में आप जो मान देखते हैं वह एक आंतरिक मोंगोडीबी बीएसओएन प्रकार है। पहला तर्क es एक फ़ंक्शन के रूप में प्रतिनिधित्व में Timestamp(es, ord) एक time_t है यूनिक्स युग के बाद से सेकंड का मूल्य। दूसरा एक क्रमसूचक है जो एक सेकंड के भीतर टाइमस्टैम्प का आदेश देता है। आपको Timestamp को क्वेरी करने में सक्षम होना चाहिए आमतौर पर $gt . के साथ , $lt , आदि:

> db.ts.find()
{ "_id" : ObjectId("53eb914ff9b63e0dd3ca1a20"), "ts" : Timestamp(1406185666, 1) }
{ "_id" : ObjectId("53eb915cf9b63e0dd3ca1a21"), "ts" : Timestamp(1405914581, 1) }
{ "_id" : ObjectId("53eb917cf9b63e0dd3ca1a22"), "ts" : Timestamp(1406185666, 2) }

> db.ts.find({ "ts" : { "$gte" : Timestamp(1406185630, 1) } })
{ "_id" : ObjectId("53eb914ff9b63e0dd3ca1a20"), "ts" : Timestamp(1406185666, 1) }
{ "_id" : ObjectId("53eb917cf9b63e0dd3ca1a22"), "ts" : Timestamp(1406185666, 2) }

> db.ts.find({ "ts" : { "$gt" : Timestamp(1406185666, 1) } })
{ "_id" : ObjectId("53eb917cf9b63e0dd3ca1a22"), "ts" : Timestamp(1406185666, 2) }

आपके विशिष्ट प्रश्नों का उत्तर देने के लिए (मोंगो शेल में),

> var SECS_PER_HOUR = 3600
> var now = Math.floor((new Date().getTime()) / 1000) // seconds since epoch right now
> db.oplog.rs.find({ "ts" : { "$lt" : Timestamp(now, 1), "$gt" : Timestamp(now - SECS_PER_HOUR, 1) } })

आपने कोई समय क्षेत्र निर्दिष्ट नहीं किया - इसके बारे में सावधान रहना और सही चुनाव करना सुनिश्चित करें।

> var since = Math.floor(ISODate("2014-08-12T09:00:00.000Z").getTime() / 1000)
> var until = Math.floor(ISODate("2014-08-12T15:00:00.000Z").getTime() / 1000)
> db.oplog.rs.find({ "ts" : { "$lt" : Timestamp(until, 1), "$gt" : Timestamp(since, 1) } })



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. MongoDB:कैसे एक json स्ट्रिंग पर क्वेरी करने के लिए?

  2. अलग मॉडल फ़ाइलों में model.export का उपयोग क्यों करें?

  3. मोंगो सी # जेएसओएन पाठक एक मूल्य की उम्मीद कर रहा था लेकिन 'replSetGetStatus' मिला

  4. वसंत एमवीसी बाकी प्रतिक्रिया जेसन और एक्सएमएल

  5. MongoDB एक संग्रह से सरणी तत्व खींचता है