rubberband_flamethrower 0.3.0 → 0.3.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README.md +6 -2
- data/VERSION +1 -1
- data/lib/rubberband_flamethrower.rb +6 -1
- data/lib/rubberband_flamethrower/flamethrower.rb +7 -3
- data/rubberband_flamethrower.gemspec +1 -1
- metadata +12 -12
data/README.md
CHANGED
@@ -1,8 +1,12 @@
|
|
1
1
|
# Rubberband Flamethrower
|
2
2
|
|
3
|
-
Rubberband Flamethrower is a gem for inserting faked data into an Elastic Search server. It creates and inserts fake data objects with three fields
|
3
|
+
Rubberband Flamethrower is a gem for inserting faked data into an Elastic Search server and providing basic benchmarks. It creates and inserts fake data objects with three fields (message, username, and post_date) and times the process. It inserts in batches of 5,000 objects by default but can be configured to insert any number of objects. Here is an sample generated data object:
|
4
4
|
|
5
|
-
{
|
5
|
+
{
|
6
|
+
"message":"utilizing plowed popularizing demeanor anesthesia specializes chaperon pedaling.",
|
7
|
+
"username":"pummeling",
|
8
|
+
"post_date":"20130408T15:41:28"
|
9
|
+
}
|
6
10
|
|
7
11
|
|
8
12
|
## Pre-Requisites
|
data/VERSION
CHANGED
@@ -1 +1 @@
|
|
1
|
-
0.3.
|
1
|
+
0.3.1
|
@@ -2,10 +2,15 @@ module RubberbandFlamethrower
|
|
2
2
|
def self.fire(how_many=5000, starting_id=1, server_url="http://localhost:9200", index="twitter", type="tweet")
|
3
3
|
require "active_support/core_ext"
|
4
4
|
require 'httparty'
|
5
|
+
require "benchmark"
|
5
6
|
require File.dirname(__FILE__)+"/rubberband_flamethrower/data_generator.rb"
|
6
7
|
require File.dirname(__FILE__)+"/rubberband_flamethrower/flamethrower.rb"
|
7
8
|
flamethrower = Flamethrower.new
|
8
|
-
|
9
|
+
time = Benchmark.measure do
|
10
|
+
flamethrower.fire(how_many, starting_id, server_url, index, type)
|
11
|
+
end
|
12
|
+
puts " user system total real"
|
13
|
+
puts time
|
9
14
|
end
|
10
15
|
|
11
16
|
def self.help
|
@@ -2,6 +2,9 @@
|
|
2
2
|
module RubberbandFlamethrower
|
3
3
|
class Flamethrower
|
4
4
|
def fire(how_many, starting_id, server_url, index, type)
|
5
|
+
|
6
|
+
$stdout.sync = true
|
7
|
+
|
5
8
|
# a unique ID must be provided for each document stored in Elastic Search
|
6
9
|
id = starting_id.to_i
|
7
10
|
|
@@ -12,16 +15,17 @@ module RubberbandFlamethrower
|
|
12
15
|
|
13
16
|
# generate a piece of random data to insert that approxiamates a tweet
|
14
17
|
insert_data = data.generate_random_insert_data
|
15
|
-
puts insert_data
|
18
|
+
#puts insert_data
|
16
19
|
|
17
20
|
# insert the random data into local elastic search index "twitter" as type "tweet" with set id
|
18
21
|
response = HTTParty.put("#{server_url}/#{index}/#{type}/#{id}", body: insert_data)
|
19
|
-
puts response.body
|
22
|
+
#puts response.body
|
23
|
+
print "."
|
20
24
|
|
21
25
|
#increment the insert id
|
22
26
|
id = id + 1
|
23
27
|
end
|
24
|
-
puts "
|
28
|
+
puts "\n\nFinished Inserting #{how_many} documents into Elastic Search."
|
25
29
|
end
|
26
30
|
|
27
31
|
end
|
metadata
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
2
2
|
name: rubberband_flamethrower
|
3
3
|
version: !ruby/object:Gem::Version
|
4
|
-
version: 0.3.
|
4
|
+
version: 0.3.1
|
5
5
|
prerelease:
|
6
6
|
platform: ruby
|
7
7
|
authors:
|
@@ -13,7 +13,7 @@ date: 2013-04-08 00:00:00.000000000 Z
|
|
13
13
|
dependencies:
|
14
14
|
- !ruby/object:Gem::Dependency
|
15
15
|
name: httparty
|
16
|
-
requirement: &
|
16
|
+
requirement: &13986480 !ruby/object:Gem::Requirement
|
17
17
|
none: false
|
18
18
|
requirements:
|
19
19
|
- - ~>
|
@@ -21,10 +21,10 @@ dependencies:
|
|
21
21
|
version: 0.10.2
|
22
22
|
type: :runtime
|
23
23
|
prerelease: false
|
24
|
-
version_requirements: *
|
24
|
+
version_requirements: *13986480
|
25
25
|
- !ruby/object:Gem::Dependency
|
26
26
|
name: activesupport
|
27
|
-
requirement: &
|
27
|
+
requirement: &13985980 !ruby/object:Gem::Requirement
|
28
28
|
none: false
|
29
29
|
requirements:
|
30
30
|
- - ~>
|
@@ -32,10 +32,10 @@ dependencies:
|
|
32
32
|
version: 3.2.13
|
33
33
|
type: :runtime
|
34
34
|
prerelease: false
|
35
|
-
version_requirements: *
|
35
|
+
version_requirements: *13985980
|
36
36
|
- !ruby/object:Gem::Dependency
|
37
37
|
name: rdoc
|
38
|
-
requirement: &
|
38
|
+
requirement: &13985500 !ruby/object:Gem::Requirement
|
39
39
|
none: false
|
40
40
|
requirements:
|
41
41
|
- - ~>
|
@@ -43,10 +43,10 @@ dependencies:
|
|
43
43
|
version: '3.12'
|
44
44
|
type: :development
|
45
45
|
prerelease: false
|
46
|
-
version_requirements: *
|
46
|
+
version_requirements: *13985500
|
47
47
|
- !ruby/object:Gem::Dependency
|
48
48
|
name: bundler
|
49
|
-
requirement: &
|
49
|
+
requirement: &13985000 !ruby/object:Gem::Requirement
|
50
50
|
none: false
|
51
51
|
requirements:
|
52
52
|
- - ~>
|
@@ -54,10 +54,10 @@ dependencies:
|
|
54
54
|
version: 1.3.0
|
55
55
|
type: :development
|
56
56
|
prerelease: false
|
57
|
-
version_requirements: *
|
57
|
+
version_requirements: *13985000
|
58
58
|
- !ruby/object:Gem::Dependency
|
59
59
|
name: jeweler
|
60
|
-
requirement: &
|
60
|
+
requirement: &13984520 !ruby/object:Gem::Requirement
|
61
61
|
none: false
|
62
62
|
requirements:
|
63
63
|
- - ~>
|
@@ -65,7 +65,7 @@ dependencies:
|
|
65
65
|
version: 1.8.4
|
66
66
|
type: :development
|
67
67
|
prerelease: false
|
68
|
-
version_requirements: *
|
68
|
+
version_requirements: *13984520
|
69
69
|
description: Use to quickly fill up some indicies in Elastic Search and to retrieve
|
70
70
|
statistics about insertion rates
|
71
71
|
email: michael@cloudspace.com
|
@@ -117,7 +117,7 @@ required_ruby_version: !ruby/object:Gem::Requirement
|
|
117
117
|
version: '0'
|
118
118
|
segments:
|
119
119
|
- 0
|
120
|
-
hash:
|
120
|
+
hash: -629124849433174154
|
121
121
|
required_rubygems_version: !ruby/object:Gem::Requirement
|
122
122
|
none: false
|
123
123
|
requirements:
|