minio/vendor
Harshavardhana 7e1661f4fa Performance improvements to SELECT API on certain query operations (#6752)
This improves the performance of certain queries dramatically,
such as 'count(*)' etc.

Without this PR
```
~ time mc select --query "select count(*) from S3Object" myminio/sjm-airlines/star2000.csv.gz
2173762

real	0m42.464s
user	0m0.071s
sys	0m0.010s
```

With this PR
```
~ time mc select --query "select count(*) from S3Object" myminio/sjm-airlines/star2000.csv.gz
2173762

real	0m17.603s
user	0m0.093s
sys	0m0.008s
```

Almost a 250% improvement in performance. This PR avoids a lot of type
conversions and instead relies on raw sequences of data and interprets
them lazily.

```
benchcmp old new
benchmark                        old ns/op       new ns/op       delta
BenchmarkSQLAggregate_100K-4     551213          259782          -52.87%
BenchmarkSQLAggregate_1M-4       6981901985      2432413729      -65.16%
BenchmarkSQLAggregate_2M-4       13511978488     4536903552      -66.42%
BenchmarkSQLAggregate_10M-4      68427084908     23266283336     -66.00%

benchmark                        old allocs     new allocs     delta
BenchmarkSQLAggregate_100K-4     2366           485            -79.50%
BenchmarkSQLAggregate_1M-4       47455492       21462860       -54.77%
BenchmarkSQLAggregate_2M-4       95163637       43110771       -54.70%
BenchmarkSQLAggregate_10M-4      476959550      216906510      -54.52%

benchmark                        old bytes       new bytes      delta
BenchmarkSQLAggregate_100K-4     1233079         1086024        -11.93%
BenchmarkSQLAggregate_1M-4       2607984120      557038536      -78.64%
BenchmarkSQLAggregate_2M-4       5254103616      1128149168     -78.53%
BenchmarkSQLAggregate_10M-4      26443524872     5722715992     -78.36%
```
2018-11-14 15:55:10 -08:00
..
cloud.google.com/go Update GCS storage library to support GetObject API on gzipped objects (#6506) 2018-09-21 11:43:10 -07:00
contrib.go.opencensus.io/exporter/stackdriver Update GCS storage library to support GetObject API on gzipped objects (#6506) 2018-09-21 11:43:10 -07:00
github.com Performance improvements to SELECT API on certain query operations (#6752) 2018-11-14 15:55:10 -08:00
go.opencensus.io Removed unused vendored dependencies (#6520) 2018-09-25 14:51:51 -07:00
go.uber.org Update federation target to etcd/clientv3 (#6119) 2018-07-12 14:12:40 -07:00
golang.org/x Update GCS storage library to support GetObject API on gzipped objects (#6506) 2018-09-21 11:43:10 -07:00
google.golang.org Removed unused vendored dependencies (#6520) 2018-09-25 14:51:51 -07:00
gopkg.in tests: Remove dependency on check.v1 (#5034) 2017-10-10 02:14:42 -07:00
vendor.json Performance improvements to SELECT API on certain query operations (#6752) 2018-11-14 15:55:10 -08:00