4
4
from sqlalchemy import create_engine
5
5
6
6
7
- class sql_datetime_read_and_parse_sqlalchemy (object ):
8
- goal_time = 0.2
9
-
10
- def setup (self ):
11
- self .engine = create_engine ('sqlite:///:memory:' )
12
- self .con = sqlite3 .connect (':memory:' )
13
- self .df = DataFrame ({'float' : randn (10000 ), 'datetime' : date_range ('2000-01-01' , periods = 10000 , freq = 's' ), })
14
- self .df ['datetime_string' ] = self .df ['datetime' ].map (str )
15
- self .df .to_sql ('test_type' , self .engine , if_exists = 'replace' )
16
- self .df [['float' , 'datetime_string' ]].to_sql ('test_type' , self .con , if_exists = 'replace' )
17
-
18
- def time_sql_datetime_read_and_parse_sqlalchemy (self ):
19
- read_sql_table ('test_type' , self .engine , columns = ['datetime_string' ], parse_dates = ['datetime_string' ])
20
-
21
-
22
- class sql_datetime_read_as_native_sqlalchemy (object ):
23
- goal_time = 0.2
24
-
25
- def setup (self ):
26
- self .engine = create_engine ('sqlite:///:memory:' )
27
- self .con = sqlite3 .connect (':memory:' )
28
- self .df = DataFrame ({'float' : randn (10000 ), 'datetime' : date_range ('2000-01-01' , periods = 10000 , freq = 's' ), })
29
- self .df ['datetime_string' ] = self .df ['datetime' ].map (str )
30
- self .df .to_sql ('test_type' , self .engine , if_exists = 'replace' )
31
- self .df [['float' , 'datetime_string' ]].to_sql ('test_type' , self .con , if_exists = 'replace' )
32
-
33
- def time_sql_datetime_read_as_native_sqlalchemy (self ):
34
- read_sql_table ('test_type' , self .engine , columns = ['datetime' ])
35
-
36
-
37
- class sql_datetime_write_sqlalchemy (object ):
38
- goal_time = 0.2
39
-
40
- def setup (self ):
41
- self .engine = create_engine ('sqlite:///:memory:' )
42
- self .con = sqlite3 .connect (':memory:' )
43
- self .df = DataFrame ({'float' : randn (10000 ), 'string' : (['foo' ] * 10000 ), 'bool' : ([True ] * 10000 ), 'datetime' : date_range ('2000-01-01' , periods = 10000 , freq = 's' ), })
44
- self .df .loc [1000 :3000 , 'float' ] = np .nan
45
-
46
- def time_sql_datetime_write_sqlalchemy (self ):
47
- self .df [['datetime' ]].to_sql ('test_datetime' , self .engine , if_exists = 'replace' )
48
-
7
+ #-------------------------------------------------------------------------------
8
+ # to_sql
49
9
50
- class sql_float_read_query_fallback (object ):
10
+ class WriteSQL (object ):
51
11
goal_time = 0.2
52
12
53
13
def setup (self ):
54
14
self .engine = create_engine ('sqlite:///:memory:' )
55
15
self .con = sqlite3 .connect (':memory:' )
56
- self .df = DataFrame ({'float' : randn (10000 ), 'datetime' : date_range ('2000-01-01' , periods = 10000 , freq = 's' ), })
57
- self .df ['datetime_string' ] = self .df ['datetime' ].map (str )
58
- self .df .to_sql ('test_type' , self .engine , if_exists = 'replace' )
59
- self .df [['float' , 'datetime_string' ]].to_sql ('test_type' , self .con , if_exists = 'replace' )
60
-
61
- def time_sql_float_read_query_fallback (self ):
62
- read_sql_query ('SELECT float FROM test_type' , self .con )
63
-
64
-
65
- class sql_float_read_query_sqlalchemy (object ):
66
- goal_time = 0.2
67
-
68
- def setup (self ):
69
- self .engine = create_engine ('sqlite:///:memory:' )
70
- self .con = sqlite3 .connect (':memory:' )
71
- self .df = DataFrame ({'float' : randn (10000 ), 'datetime' : date_range ('2000-01-01' , periods = 10000 , freq = 's' ), })
72
- self .df ['datetime_string' ] = self .df ['datetime' ].map (str )
73
- self .df .to_sql ('test_type' , self .engine , if_exists = 'replace' )
74
- self .df [['float' , 'datetime_string' ]].to_sql ('test_type' , self .con , if_exists = 'replace' )
75
-
76
- def time_sql_float_read_query_sqlalchemy (self ):
77
- read_sql_query ('SELECT float FROM test_type' , self .engine )
78
-
79
-
80
- class sql_float_read_table_sqlalchemy (object ):
81
- goal_time = 0.2
82
-
83
- def setup (self ):
84
- self .engine = create_engine ('sqlite:///:memory:' )
85
- self .con = sqlite3 .connect (':memory:' )
86
- self .df = DataFrame ({'float' : randn (10000 ), 'datetime' : date_range ('2000-01-01' , periods = 10000 , freq = 's' ), })
87
- self .df ['datetime_string' ] = self .df ['datetime' ].map (str )
88
- self .df .to_sql ('test_type' , self .engine , if_exists = 'replace' )
89
- self .df [['float' , 'datetime_string' ]].to_sql ('test_type' , self .con , if_exists = 'replace' )
90
-
91
- def time_sql_float_read_table_sqlalchemy (self ):
92
- read_sql_table ('test_type' , self .engine , columns = ['float' ])
93
-
94
-
95
- class sql_float_write_fallback (object ):
96
- goal_time = 0.2
97
-
98
- def setup (self ):
99
- self .engine = create_engine ('sqlite:///:memory:' )
100
- self .con = sqlite3 .connect (':memory:' )
101
- self .df = DataFrame ({'float' : randn (10000 ), 'string' : (['foo' ] * 10000 ), 'bool' : ([True ] * 10000 ), 'datetime' : date_range ('2000-01-01' , periods = 10000 , freq = 's' ), })
102
- self .df .loc [1000 :3000 , 'float' ] = np .nan
103
-
104
- def time_sql_float_write_fallback (self ):
105
- self .df [['float' ]].to_sql ('test_float' , self .con , if_exists = 'replace' )
106
-
16
+ self .index = tm .makeStringIndex (10000 )
17
+ self .df = DataFrame ({'float1' : randn (10000 ), 'float2' : randn (10000 ), 'string1' : (['foo' ] * 10000 ), 'bool1' : ([True ] * 10000 ), 'int1' : np .random .randint (0 , 100000 , size = 10000 ), }, index = self .index )
107
18
108
- class sql_float_write_sqlalchemy ( object ):
109
- goal_time = 0.2
19
+ def time_fallback ( self ):
20
+ self . df . to_sql ( 'test1' , self . con , if_exists = 'replace' )
110
21
111
- def setup (self ):
112
- self .engine = create_engine ('sqlite:///:memory:' )
113
- self .con = sqlite3 .connect (':memory:' )
114
- self .df = DataFrame ({'float' : randn (10000 ), 'string' : (['foo' ] * 10000 ), 'bool' : ([True ] * 10000 ), 'datetime' : date_range ('2000-01-01' , periods = 10000 , freq = 's' ), })
115
- self .df .loc [1000 :3000 , 'float' ] = np .nan
22
+ def time_sqlalchemy (self ):
23
+ self .df .to_sql ('test1' , self .engine , if_exists = 'replace' )
116
24
117
- def time_sql_float_write_sqlalchemy (self ):
118
- self .df [['float' ]].to_sql ('test_float' , self .engine , if_exists = 'replace' )
119
25
26
+ #-------------------------------------------------------------------------------
27
+ # read_sql
120
28
121
- class sql_read_query_fallback (object ):
29
+ class ReadSQL (object ):
122
30
goal_time = 0.2
123
31
124
32
def setup (self ):
@@ -129,41 +37,20 @@ def setup(self):
129
37
self .df .to_sql ('test2' , self .engine , if_exists = 'replace' )
130
38
self .df .to_sql ('test2' , self .con , if_exists = 'replace' )
131
39
132
- def time_sql_read_query_fallback (self ):
40
+ def time_read_query_fallback (self ):
133
41
read_sql_query ('SELECT * FROM test2' , self .con )
134
42
135
-
136
- class sql_read_query_sqlalchemy (object ):
137
- goal_time = 0.2
138
-
139
- def setup (self ):
140
- self .engine = create_engine ('sqlite:///:memory:' )
141
- self .con = sqlite3 .connect (':memory:' )
142
- self .index = tm .makeStringIndex (10000 )
143
- self .df = DataFrame ({'float1' : randn (10000 ), 'float2' : randn (10000 ), 'string1' : (['foo' ] * 10000 ), 'bool1' : ([True ] * 10000 ), 'int1' : np .random .randint (0 , 100000 , size = 10000 ), }, index = self .index )
144
- self .df .to_sql ('test2' , self .engine , if_exists = 'replace' )
145
- self .df .to_sql ('test2' , self .con , if_exists = 'replace' )
146
-
147
- def time_sql_read_query_sqlalchemy (self ):
43
+ def time_read_query_sqlalchemy (self ):
148
44
read_sql_query ('SELECT * FROM test2' , self .engine )
149
45
150
-
151
- class sql_read_table_sqlalchemy (object ):
152
- goal_time = 0.2
153
-
154
- def setup (self ):
155
- self .engine = create_engine ('sqlite:///:memory:' )
156
- self .con = sqlite3 .connect (':memory:' )
157
- self .index = tm .makeStringIndex (10000 )
158
- self .df = DataFrame ({'float1' : randn (10000 ), 'float2' : randn (10000 ), 'string1' : (['foo' ] * 10000 ), 'bool1' : ([True ] * 10000 ), 'int1' : np .random .randint (0 , 100000 , size = 10000 ), }, index = self .index )
159
- self .df .to_sql ('test2' , self .engine , if_exists = 'replace' )
160
- self .df .to_sql ('test2' , self .con , if_exists = 'replace' )
161
-
162
- def time_sql_read_table_sqlalchemy (self ):
46
+ def time_read_table_sqlalchemy (self ):
163
47
read_sql_table ('test2' , self .engine )
164
48
165
49
166
- class sql_string_write_fallback (object ):
50
+ #-------------------------------------------------------------------------------
51
+ # type specific write
52
+
53
+ class WriteSQLTypes (object ):
167
54
goal_time = 0.2
168
55
169
56
def setup (self ):
@@ -172,44 +59,47 @@ def setup(self):
172
59
self .df = DataFrame ({'float' : randn (10000 ), 'string' : (['foo' ] * 10000 ), 'bool' : ([True ] * 10000 ), 'datetime' : date_range ('2000-01-01' , periods = 10000 , freq = 's' ), })
173
60
self .df .loc [1000 :3000 , 'float' ] = np .nan
174
61
175
- def time_sql_string_write_fallback (self ):
62
+ def time_string_fallback (self ):
176
63
self .df [['string' ]].to_sql ('test_string' , self .con , if_exists = 'replace' )
177
64
65
+ def time_string_sqlalchemy (self ):
66
+ self .df [['string' ]].to_sql ('test_string' , self .engine , if_exists = 'replace' )
178
67
179
- class sql_string_write_sqlalchemy ( object ):
180
- goal_time = 0.2
68
+ def time_float_fallback ( self ):
69
+ self . df [[ 'float' ]]. to_sql ( 'test_float' , self . con , if_exists = 'replace' )
181
70
182
- def setup (self ):
183
- self .engine = create_engine ('sqlite:///:memory:' )
184
- self .con = sqlite3 .connect (':memory:' )
185
- self .df = DataFrame ({'float' : randn (10000 ), 'string' : (['foo' ] * 10000 ), 'bool' : ([True ] * 10000 ), 'datetime' : date_range ('2000-01-01' , periods = 10000 , freq = 's' ), })
186
- self .df .loc [1000 :3000 , 'float' ] = np .nan
71
+ def time_float_sqlalchemy (self ):
72
+ self .df [['float' ]].to_sql ('test_float' , self .engine , if_exists = 'replace' )
187
73
188
- def time_sql_string_write_sqlalchemy (self ):
189
- self .df [['string ' ]].to_sql ('test_string ' , self .engine , if_exists = 'replace' )
74
+ def time_datetime_sqlalchemy (self ):
75
+ self .df [['datetime ' ]].to_sql ('test_datetime ' , self .engine , if_exists = 'replace' )
190
76
191
77
192
- class sql_write_fallback (object ):
78
+ #-------------------------------------------------------------------------------
79
+ # type specific read
80
+
81
+ class ReadSQLTypes (object ):
193
82
goal_time = 0.2
194
83
195
84
def setup (self ):
196
85
self .engine = create_engine ('sqlite:///:memory:' )
197
86
self .con = sqlite3 .connect (':memory:' )
198
- self .index = tm .makeStringIndex (10000 )
199
- self .df = DataFrame ({'float1' : randn (10000 ), 'float2' : randn (10000 ), 'string1' : (['foo' ] * 10000 ), 'bool1' : ([True ] * 10000 ), 'int1' : np .random .randint (0 , 100000 , size = 10000 ), }, index = self .index )
87
+ self .df = DataFrame ({'float' : randn (10000 ), 'datetime' : date_range ('2000-01-01' , periods = 10000 , freq = 's' ), })
88
+ self .df ['datetime_string' ] = self .df ['datetime' ].map (str )
89
+ self .df .to_sql ('test_type' , self .engine , if_exists = 'replace' )
90
+ self .df [['float' , 'datetime_string' ]].to_sql ('test_type' , self .con , if_exists = 'replace' )
200
91
201
- def time_sql_write_fallback (self ):
202
- self . df . to_sql ( 'test1 ' , self .con , if_exists = 'replace' )
92
+ def time_datetime_read_and_parse_sqlalchemy (self ):
93
+ read_sql_table ( 'test_type ' , self .engine , columns = [ 'datetime_string' ], parse_dates = [ 'datetime_string' ] )
203
94
95
+ def time_datetime_read_as_native_sqlalchemy (self ):
96
+ read_sql_table ('test_type' , self .engine , columns = ['datetime' ])
204
97
205
- class sql_write_sqlalchemy ( object ):
206
- goal_time = 0.2
98
+ def time_float_read_query_fallback ( self ):
99
+ read_sql_query ( 'SELECT float FROM test_type' , self . con )
207
100
208
- def setup (self ):
209
- self .engine = create_engine ('sqlite:///:memory:' )
210
- self .con = sqlite3 .connect (':memory:' )
211
- self .index = tm .makeStringIndex (10000 )
212
- self .df = DataFrame ({'float1' : randn (10000 ), 'float2' : randn (10000 ), 'string1' : (['foo' ] * 10000 ), 'bool1' : ([True ] * 10000 ), 'int1' : np .random .randint (0 , 100000 , size = 10000 ), }, index = self .index )
101
+ def time_float_read_query_sqlalchemy (self ):
102
+ read_sql_query ('SELECT float FROM test_type' , self .engine )
213
103
214
- def time_sql_write_sqlalchemy (self ):
215
- self . df . to_sql ( 'test1 ' , self .engine , if_exists = 'replace' )
104
+ def time_float_read_table_sqlalchemy (self ):
105
+ read_sql_table ( 'test_type ' , self .engine , columns = [ 'float' ] )
0 commit comments