-
Notifications
You must be signed in to change notification settings - Fork 4
vonconrad/csv-benchmark
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Simple benchmarking script for comparing different Ruby csv parsers. Some of these gems will only work with MRI 1.8, as they are native extensions. Results ======= Testing csv/presidents.csv user system total real csv 0.020000 0.000000 0.020000 ( 0.026629) fastercsv 0.010000 0.000000 0.010000 ( 0.001558) lightcsv 0.000000 0.000000 0.000000 ( 0.002036) excelsior 0.000000 0.000000 0.000000 ( 0.000305) ccsv 0.010000 0.000000 0.010000 ( 0.011097) csvscan 0.000000 0.000000 0.000000 ( 0.000221) Testing csv/geoip.csv user system total real csv 52.720000 0.140000 52.860000 ( 53.465961) fastercsv 11.090000 0.050000 11.140000 ( 11.327960) lightcsv 5.470000 0.030000 5.500000 ( 5.508147) excelsior 0.580000 0.010000 0.590000 ( 0.592589) ccsv 0.470000 0.020000 0.490000 ( 0.480324) csvscan 0.420000 0.010000 0.430000 ( 0.435153) Parsing Error Handling ====================== While CSVScan, cCSV, and Excelsior may be the fastest, they do it by having little-to-no error catching/handling. The slowest three (CSV, FasterCSV, and LightCSV) do catch paring errors and raise exceptions for you to handle. Credits ======= Sample CSVs are taken from: presidents.csv > See People Software (http://seepeoplesoftware.com/downloads/older-versions/11-sample-csv-file-of-us-presidents.html) geoip.csv > MaxMind (http://www.maxmind.com/app/geolitecountry) If you want to try a (significantly) larger file, MaxMind has a city-level geoip file as well: http://www.maxmind.com/app/geolitecity
About
App for benchmarking Ruby CSV libraries
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published