Переглянути джерело

Migrate from Elastic Search to MondoDB

new-scoring
aeris 2 роки тому
джерело
коміт
ced73e10d2
1 змінених файлів з 11 додано та 9 видалено
  1. 11
    9
      app/lib/datastore.rb

+ 11
- 9
app/lib/datastore.rb Переглянути файл

@@ -1,13 +1,12 @@
1 1
 class Datastore
2
-	@@index = Stretcher::Server.new(ENV['ES_URL']).index :cryptcheck
3
-	@@index.create unless @@index.exists?
2
+	@@client = Mongo::Client.new ENV['MONGO_URL']
4 3
 
5 4
 	def self.host(type, host, port)
6 5
 		key = self.key host, port
7
-		result = @@index.type(type).get key
8
-		result.date = Time.parse result.date
9
-		result
10
-	rescue Stretcher::RequestError::NotFound
6
+		@@client[type].find(key).first
7
+#		result = @@index.type(type).get key
8
+#		result.date = Time.parse result.date
9
+#		result
11 10
 	end
12 11
 
13 12
 	def self.pending(type, host, port)
@@ -15,13 +14,16 @@ class Datastore
15 14
 	end
16 15
 
17 16
 	def self.post(type, host, port, data)
17
+		# entry = self.host type, host, port
18
+		# entry.delete if entry
19
+		#
18 20
 		key = self.key host, port
19
-		@@index.type(type).put key, data
21
+		data = data.merge key
22
+		@@client[type].update_one key, data, {upsert: true}
20 23
 	end
21 24
 
22 25
 	private
23 26
 	def self.key(host, port)
24
-		host = "#{host}:#{port}" if port
25
-		host
27
+		{ host: host, port: port }
26 28
 	end
27 29
 end

Завантаження…
Відмінити
Зберегти