<div>Hello Matt,</div><div><br></div><div>Unfortunately I can't share the data.  And, as I found out today, even if I could get permission to share part of the data, that would not reproduce the problem. </div><div><br>
</div><div>Here's why I think that a sample of the data won't prove the point.</div><div><br></div><div>I started with two sets of data:</div><div><font face="courier new, monospace">dat     : A data table with 3,103,314 rows and 43 columns</font></div>
<div><div><font face="courier new, monospace">dat_1000: </font><span style="font-family:'courier new',monospace">Same table, but with a new column to define 1000 equally sized groups</span></div></div><div><font face="courier new, monospace"><br>
</font></div><div><b>Whole File Results:</b></div><div>If I set the key of dat to be column 1  and save it, the resulting file size is  77.731 MB</div><div><div>If I set the key of dat to be column 9  and save it, the resulting file size is 206.874 MB</div>
<div><br></div><div>In other words, the second file is inflated by 266% of the original when the key is set to column 9.  The 9th column is an iso date time value".  However, if I use column 10, which is just a integer, the results are similar.  For column 10 the inflation factor is 196% of the original.</div>
<div><br></div><div>However, this inflation disappears when I save the file in chunks.</div><div><br></div></div><div><b>Split Results:</b></div><div><div></div></div><div>Then I wanted to see how much the file size changed for a small chunk of the data.  So, I used the grouping column to split <span style="font-family:'courier new',monospace">dat_1000</span> into 1,000 temporary data tables (one at a time).  Then I set the key for each copy, and saved each copy, and recorded the size of that file.  I did this for column 1 and column 9 as the key.</div>
<div><br></div><div>When using column 1 as the key the average file size is 88 MB and the files add up to 88,281 MB.</div><div><div>When using column 9 as the key the average file size is 128 MB and the files add up to 128,395 MB.</div>
</div><div><br></div><div><div>So the 1000 files only get inflated by 145%.  </div><div><br></div><div><b>Analysis on the best and worst chunks of data:</b></div><div>The chunk with the least amount of inflation is chunk 143, which is 96% of the original.</div>
<div>The chunk with the most inflation is chunk 666 (go figure), which is 184% of the original.</div><div><br></div><div><div><font face="courier new, monospace">                     Chunk  Size(Key1) Size(Key9) Inflation</font></div>
<div><font face="courier new, monospace">Smallest Inflation:   743      44,741     42,785      96%</font></div><div><font face="courier new, monospace">Largest Inflation:    666     243,612    448,621     184%</font></div>
</div></div><div><br></div><div>Some information about these chunks:</div><div><br></div><div>Both of these chunks have 3,107 rows.  </div><div><div>Column 9 has  347 unique values for chunk 743</div><div>Column 9 has 2,432 unique values for chunk 666</div>
</div><div><div><br></div></div><div>Generally speaking chunk 666 has a lot more unique values across all the columns.</div><div><br></div><div>At this point, I'm just going to do a work around.</div><div><br></div><div>
Thank you,</div><div><br></div><div>- Gene</div><div><br><div class="gmail_quote">On Tue, Oct 23, 2012 at 11:50 AM, Matthew Dowle <span dir="ltr"><<a href="mailto:mdowle@mdowle.plus.com" target="_blank">mdowle@mdowle.plus.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><br>
Hi Gene,<br>
<br>
Thanks for all this. Sorry for the delay. Have looked through. It does<br>
seem likely to do with those very long character strings. Could you save<br>
head() of the data, before setting the key, and either email it or save<br>
online somewhere please?<br>
<span class="HOEnZb"><font color="#888888"><br>
Matthew<br>
</font></span><div class="HOEnZb"><div class="h5"><br>
<br>
> Ok, here is my very lengthy reply with lots of diagnostics.<br>
><br>
><br>
>><br>
>> ## Clear the workspace<br>
>> rm(list=ls())<br>
>><br>
>> ## I use a function called "loader" to load single data objects<br>
>> if(!require('geneorama')){<br>
> +   source('<a href="https://raw.github.com/geneorama/geneorama/master/R/loader.R" target="_blank">https://raw.github.com/geneorama/geneorama/master/R/loader.R</a>')<br>
> +   cat('loading function \"loader\"')<br>
> + }<br>
>><br>
>> ## Load the data<br>
>> Small = loader('test0')<br>
>> Large = loader('test1')<br>
>><br>
>> ## The two files will be different because their order is different<br>
>> str(Small)<br>
> Classes ‘data.table’ and 'data.frame': <a href="tel:3103314" value="+13103314">3103314</a> obs. of  42 variables:<br>
>  $ index : int  <a href="tel:1%202%203%204%205%206%207%208%209%2010" value="+12345678910">1 2 3 4 5 6 7 8 9 10</a> ...<br>
>  $ char1 : chr  "<a href="http://conradhotels3.hilton.com" target="_blank">http://conradhotels3.hilton.com</a>" "<br>
> <a href="http://conradhotels3.hilton.com" target="_blank">http://conradhotels3.hilton.com</a>" "<a href="http://conradhotels3.hilton.com" target="_blank">http://conradhotels3.hilton.com</a>" "<br>

> <a href="http://conradhotels3.hilton.com" target="_blank">http://conradhotels3.hilton.com</a>" ...<br>
>  $ char2 : chr  "/en/index.html" "/en/index.html" "/en/index.html"<br>
> "/en/index.html" ...<br>
>  $ char3 : chr  "" "" "" "" ...<br>
>  $ int1  : int  44903 44903 44903 44903 44903 44903 44903 44903 44903<br>
> 44903<br>
> ...<br>
>  $ int2  : int  411 411 254 254 336 336 118 118 386 386 ...<br>
>  $ char4 : chr  "2012-05-09 20:17:40.587" "2012-05-09 21:17:54.427"<br>
> "2012-05-09 20:10:49.560" "2012-05-09 21:11:05.107" ...<br>
>  $ int3  : int  0 0 0 0 0 0 0 0 0 0 ...<br>
>  $ int4  : int  0 0 0 0 0 0 0 0 0 0 ...<br>
>  $ int5  : int  69 69 69 69 69 69 69 68 68 68 ...<br>
>  $ int6  : int  68 68 68 68 68 68 68 67 67 67 ...<br>
>  $ int7  : int  35 35 37 35 35 35 33 38 38 40 ...<br>
>  $ int8  : int  0 0 0 0 0 0 0 0 0 0 ...<br>
>  $ int9  : int  0 0 0 0 0 0 0 0 0 0 ...<br>
>  $ int10 : int  0 0 0 0 0 0 0 0 0 0 ...<br>
>  $ int11 : int  1 1 1 1 1 1 1 1 1 1 ...<br>
>  $ int12 : int  334830 334847 335102 334838 334836 342687 334521 318626<br>
> 318578 326800 ...<br>
>  $ int13 : int  36 36 37 36 36 36 35 38 37 39 ...<br>
>  $ int14 : int  44 44 49 47 45 45 45 46 45 48 ...<br>
>  $ char5 : chr  "" "" "" "" ...<br>
>  $ int15 : int  NA NA NA NA NA NA NA NA NA NA ...<br>
>  $ int16 : int  0 0 0 0 0 0 0 0 0 0 ...<br>
>  $ int17 : int  0 0 0 0 0 0 0 0 0 0 ...<br>
>  $ int18 : int  2 2 2 2 2 2 2 2 2 2 ...<br>
>  $ int19 : int  1381 1152 424 3728 1772 921 385 725 401 314 ...<br>
>  $ int20 : int  36 36 37 36 36 36 35 38 37 39 ...<br>
>  $ int21 : int  2199 2201 1492 1448 2559 2529 1084 1432 1876 1984 ...<br>
>  $ int22 : int  44 44 49 47 45 45 45 46 45 48 ...<br>
>  $ int23 : int  2203 2188 1199 1162 2324 2346 821 897 1386 1189 ...<br>
>  $ int24 : int  13 13 14 13 13 13 12 13 13 14 ...<br>
>  $ int25 : int  5166 5761 3755 3794 5614 7779 2830 3971 4637 5871 ...<br>
>  $ int26 : int  103 103 105 103 103 103 101 105 105 107 ...<br>
>  $ int27 : int  70 183 159 197 217 165 153 232 92 102 ...<br>
>  $ int28 : int  103 103 105 103 103 103 101 105 105 107 ...<br>
>  $ int29 : int  0 0 0 0 0 0 0 0 0 0 ...<br>
>  $ int30 : int  161 146 200 158 150 160 190 161 163 169 ...<br>
>  $ char6 : chr  "Limelight" "Limelight" "Fusepoint/Savvis"<br>
> "Fusepoint/Savvis" ...<br>
>  $ char7 : chr  "Paris" "Paris" "Toronto" "Toronto" ...<br>
>  $ char8 : chr  "-1" "-1" "-1" "-1" ...<br>
>  $ char9 : chr  "FRANCE" "FRANCE" "CANADA" "CANADA" ...<br>
>  $ char10: chr  "FR" "FR" "CA" "CA" ...<br>
>  $ char11: chr  "FRANCE" "FRANCE" "CANADA" "CANADA" ...<br>
>  - attr(*, ".internal.selfref")=<externalptr><br>
>> str(Large)<br>
> Classes ‘data.table’ and 'data.frame': 3103314 obs. of  42 variables:<br>
>  $ index : int  716234 716235 1007651 2679944 1550732 1932010 2879445<br>
> 1007670 1736006 666363 ...<br>
>  $ char1 : chr  "<a href="http://go.compuware.com" target="_blank">http://go.compuware.com</a>" "<a href="http://go.compuware.com" target="_blank">http://go.compuware.com</a>" "<br>
> <a href="http://www.achmeacollectief.nl" target="_blank">http://www.achmeacollectief.nl</a>" "<a href="https://db3.notify.windows.com" target="_blank">https://db3.notify.windows.com</a>" ...<br>
>  $ char2 : chr  "/default.aspx" "/dynaTraceMonitor" "/unilever/" "/ping"<br>
> ...<br>
>  $ char3 : chr  "?rurl=<br>
> <a href="http://frontline.compuware.com//products/BU/default.aspx" target="_blank">http://frontline.compuware.com//products/BU/default.aspx</a>"<br>
> "?url=http%3A%2F%<br>
> <a href="http://2Fgo.compuware.com" target="_blank">2Fgo.compuware.com</a>%2Fdefault.aspx%3Frurl%3Dhttp%3A%2F%<br>
> <a href="http://2Ffrontline.compuware.com" target="_blank">2Ffrontline.compuware.com</a>%2F%2Fproducts%2FBU%2Fdefault.as"| __truncated__<br>
> "" "" ...<br>
>  $ int1  : int  2812881 2812881 3149757 4286896 3618836 3861870 4315803<br>
> 3149760 3779387 2754629 ...<br>
>  $ int2  : int  133 133 133 133 340 340 326 133 133 340 ...<br>
>  $ char4 : chr  "2012-05-09 20:00:00.000" "2012-05-09 20:00:00.000"<br>
> "2012-05-09 20:00:00.000" "2012-05-09 20:00:00.000" ...<br>
>  $ int3  : int  0 1 0 0 0 0 0 0 0 0 ...<br>
>  $ int4  : int  2264 2496 1782 461 1953 1418 641 1207 167 278 ...<br>
>  $ int5  : int  26 20 6 1 71 64 1 6 1 15 ...<br>
>  $ int6  : int  26 20 6 1 69 64 1 6 1 15 ...<br>
>  $ int7  : int  2 2 4 0 2 12 0 2 0 0 ...<br>
>  $ int8  : int  0 0 0 0 2 0 0 0 0 0 ...<br>
>  $ int9  : int  0 0 0 0 0 0 0 0 0 0 ...<br>
>  $ int10 : int  0 0 0 0 0 0 0 0 0 0 ...<br>
>  $ int11 : int  0 0 0 0 0 0 0 0 0 0 ...<br>
>  $ int12 : int  392752 417195 43107 0 1419015 1031349 187344 62969 43<br>
> 428189 ...<br>
>  $ int13 : int  4 4 5 1 8 22 1 3 1 1 ...<br>
>  $ int14 : int  9 11 8 1 17 38 1 6 1 15 ...<br>
>  $ char5 : chr  "" "" "" "" ...<br>
>  $ int15 : int  NA NA NA NA 0 NA NA NA NA 0 ...<br>
>  $ int16 : int  0 0 0 0 0 0 0 0 0 0 ...<br>
>  $ int17 : int  0 0 0 0 0 0 0 0 0 0 ...<br>
>  $ int18 : int  2 28 3 0 0 1 0 1 0 0 ...<br>
>  $ int19 : int  137 0 136 298 277 255 147 141 137 209 ...<br>
>  $ int20 : int  4 0 5 1 8 22 1 3 1 1 ...<br>
>  $ int21 : int  945 612 59 22 689 1153 54 29 13 59 ...<br>
>  $ int22 : int  9 5 8 1 17 38 1 6 1 15 ...<br>
>  $ int23 : int  0 0 0 118 0 0 0 0 0 0 ...<br>
>  $ int24 : int  0 0 0 1 0 0 0 0 0 0 ...<br>
>  $ int25 : int  3243 2653 1585 22 3292 3076 64 1043 13 81 ...<br>
>  $ int26 : int  28 22 10 1 73 76 1 8 1 15 ...<br>
>  $ int27 : int  2060 3365 257 1 3304 1038 376 258 4 80 ...<br>
>  $ int28 : int  28 22 10 1 73 76 1 8 1 15 ...<br>
>  $ int29 : int  0 0 0 0 0 0 0 0 0 0 ...<br>
>  $ int30 : int  921 750 203 578 609 1078 234 187 31 140 ...<br>
>  $ char6 : chr  "Interoute" "Interoute" "Interoute" "Interoute" ...<br>
>  $ char7 : chr  "Amsterdam" "Amsterdam" "Amsterdam" "Amsterdam" ...<br>
>  $ char8 : chr  "-1" "-1" "-1" "-1" ...<br>
>  $ char9 : chr  "NETHERLANDS" "NETHERLANDS" "NETHERLANDS" "NETHERLANDS"<br>
> ...<br>
>  $ char10: chr  "NL" "NL" "NL" "NL" ...<br>
>  $ char11: chr  "NETHERLANDS" "NETHERLANDS" "NETHERLANDS" "NETHERLANDS"<br>
> ...<br>
>  - attr(*, ".internal.selfref")=<externalptr><br>
>  - attr(*, "sorted")= chr "char4"<br>
>><br>
>> ## The difference is shown here<br>
>> mapply(identical, Small, Large)<br>
>  index  char1  char2  char3   int1   int2  char4   int3   int4   int5<br>
> int6   int7   int8   int9<br>
>  FALSE  FALSE  FALSE  FALSE  FALSE  FALSE  FALSE  FALSE  FALSE  FALSE<br>
>  FALSE  FALSE  FALSE  FALSE<br>
>  int10  int11  int12  int13  int14  char5  int15  int16  int17  int18<br>
>  int19  int20  int21  int22<br>
>  FALSE  FALSE  FALSE  FALSE  FALSE  FALSE  FALSE  FALSE  FALSE  FALSE<br>
>  FALSE  FALSE  FALSE  FALSE<br>
>  int23  int24  int25  int26  int27  int28  int29  int30  char6  char7<br>
>  char8  char9 char10 char11<br>
>  FALSE  FALSE  FALSE  FALSE  FALSE  FALSE  FALSE  FALSE  FALSE  FALSE<br>
>  FALSE  FALSE  FALSE  FALSE<br>
>> mapply(all.equal, Small, Large)<br>
>                                                          index<br>
>                          "Mean relative difference: 0.6660698"<br>
>                                                          char1<br>
>                                    "3100674 string mismatches"<br>
>                                                          char2<br>
>                                    "2961621 string mismatches"<br>
>                                                          char3<br>
>                                    "1753352 string mismatches"<br>
>                                                           int1<br>
>                          "Mean relative difference: 0.2945024"<br>
>                                                           int2<br>
>                          "Mean relative difference: 0.4866954"<br>
>                                                          char4<br>
>                                    "3103308 string mismatches"<br>
>                                                           int3<br>
>                           "Mean relative difference: 1.759713"<br>
>                                                           int4<br>
>                           "Mean relative difference: 1.408616"<br>
>                                                           int5<br>
>                           "Mean relative difference: 1.411817"<br>
>                                                           int6<br>
>                           "Mean relative difference: 1.415648"<br>
>                                                           int7<br>
>                           "Mean relative difference: 1.705137"<br>
>                                                           int8<br>
>                           "Mean relative difference: 1.954795"<br>
>                                                           int9<br>
>                            "Mean relative difference: 1.99701"<br>
>                                                          int10<br>
>                           "Mean relative difference: 1.995529"<br>
>                                                          int11<br>
>                                  "Mean relative difference: 2"<br>
>                                                          int12<br>
>                           "Mean relative difference: 1.479043"<br>
>                                                          int13<br>
>                           "Mean relative difference: 1.323619"<br>
>                                                          int14<br>
>                           "Mean relative difference: 1.360022"<br>
>                                                          char5<br>
>                                    "1454309 string mismatches"<br>
>                                                          int15<br>
> "'is.NA' value mismatch: 2260789 in current 2260789 in target"<br>
>                                                          int16<br>
>                           "Mean relative difference: 1.997195"<br>
>                                                          int17<br>
>                                  "Mean relative difference: 2"<br>
>                                                          int18<br>
>                           "Mean relative difference: 1.799441"<br>
>                                                          int19<br>
>                           "Mean relative difference: 1.571321"<br>
>                                                          int20<br>
>                           "Mean relative difference: 1.474492"<br>
>                                                          int21<br>
>                           "Mean relative difference: 1.669488"<br>
>                                                          int22<br>
>                           "Mean relative difference: 1.465307"<br>
>                                                          int23<br>
>                           "Mean relative difference: 1.842191"<br>
>                                                          int24<br>
>                            "Mean relative difference: 1.76578"<br>
>                                                          int25<br>
>                           "Mean relative difference: 1.481612"<br>
>                                                          int26<br>
>                           "Mean relative difference: 1.403655"<br>
>                                                          int27<br>
>                           "Mean relative difference: 1.722723"<br>
>                                                          int28<br>
>                           "Mean relative difference: 1.403655"<br>
>                                                          int29<br>
>                                  "Mean relative difference: 2"<br>
>                                                          int30<br>
>                           "Mean relative difference: 1.535987"<br>
>                                                          char6<br>
>                                    "2899128 string mismatches"<br>
>                                                          char7<br>
>                                    "3008489 string mismatches"<br>
>                                                          char8<br>
>                                    "2503189 string mismatches"<br>
>                                                          char9<br>
>                                    "2957002 string mismatches"<br>
>                                                         char10<br>
>                                    "1933196 string mismatches"<br>
>                                                         char11<br>
>                                    "1933196 string mismatches"<br>
>><br>
>> ## I re-ran the steps to create the files (almost the same the last<br>
> email),<br>
>> ## but added an "index" equal to 1:nrow(datMod)<br>
>> ## This index is used to reorder the files to be consistent<br>
>> LargeOrd = Large[order(Large$index), ]<br>
>> str(LargeOrd)<br>
> Classes ‘data.table’ and 'data.frame': 3103314 obs. of  42 variables:<br>
>  $ index : int  1 2 3 4 5 6 7 8 9 10 ...<br>
>  $ char1 : chr  "<a href="http://conradhotels3.hilton.com" target="_blank">http://conradhotels3.hilton.com</a>" "<br>
> <a href="http://conradhotels3.hilton.com" target="_blank">http://conradhotels3.hilton.com</a>" "<a href="http://conradhotels3.hilton.com" target="_blank">http://conradhotels3.hilton.com</a>" "<br>

> <a href="http://conradhotels3.hilton.com" target="_blank">http://conradhotels3.hilton.com</a>" ...<br>
>  $ char2 : chr  "/en/index.html" "/en/index.html" "/en/index.html"<br>
> "/en/index.html" ...<br>
>  $ char3 : chr  "" "" "" "" ...<br>
>  $ int1  : int  44903 44903 44903 44903 44903 44903 44903 44903 44903<br>
> 44903<br>
> ...<br>
>  $ int2  : int  411 411 254 254 336 336 118 118 386 386 ...<br>
>  $ char4 : chr  "2012-05-09 20:17:40.587" "2012-05-09 21:17:54.427"<br>
> "2012-05-09 20:10:49.560" "2012-05-09 21:11:05.107" ...<br>
>  $ int3  : int  0 0 0 0 0 0 0 0 0 0 ...<br>
>  $ int4  : int  0 0 0 0 0 0 0 0 0 0 ...<br>
>  $ int5  : int  69 69 69 69 69 69 69 68 68 68 ...<br>
>  $ int6  : int  68 68 68 68 68 68 68 67 67 67 ...<br>
>  $ int7  : int  35 35 37 35 35 35 33 38 38 40 ...<br>
>  $ int8  : int  0 0 0 0 0 0 0 0 0 0 ...<br>
>  $ int9  : int  0 0 0 0 0 0 0 0 0 0 ...<br>
>  $ int10 : int  0 0 0 0 0 0 0 0 0 0 ...<br>
>  $ int11 : int  1 1 1 1 1 1 1 1 1 1 ...<br>
>  $ int12 : int  334830 334847 335102 334838 334836 342687 334521 318626<br>
> 318578 326800 ...<br>
>  $ int13 : int  36 36 37 36 36 36 35 38 37 39 ...<br>
>  $ int14 : int  44 44 49 47 45 45 45 46 45 48 ...<br>
>  $ char5 : chr  "" "" "" "" ...<br>
>  $ int15 : int  NA NA NA NA NA NA NA NA NA NA ...<br>
>  $ int16 : int  0 0 0 0 0 0 0 0 0 0 ...<br>
>  $ int17 : int  0 0 0 0 0 0 0 0 0 0 ...<br>
>  $ int18 : int  2 2 2 2 2 2 2 2 2 2 ...<br>
>  $ int19 : int  1381 1152 424 3728 1772 921 385 725 401 314 ...<br>
>  $ int20 : int  36 36 37 36 36 36 35 38 37 39 ...<br>
>  $ int21 : int  2199 2201 1492 1448 2559 2529 1084 1432 1876 1984 ...<br>
>  $ int22 : int  44 44 49 47 45 45 45 46 45 48 ...<br>
>  $ int23 : int  2203 2188 1199 1162 2324 2346 821 897 1386 1189 ...<br>
>  $ int24 : int  13 13 14 13 13 13 12 13 13 14 ...<br>
>  $ int25 : int  5166 5761 3755 3794 5614 7779 2830 3971 4637 5871 ...<br>
>  $ int26 : int  103 103 105 103 103 103 101 105 105 107 ...<br>
>  $ int27 : int  70 183 159 197 217 165 153 232 92 102 ...<br>
>  $ int28 : int  103 103 105 103 103 103 101 105 105 107 ...<br>
>  $ int29 : int  0 0 0 0 0 0 0 0 0 0 ...<br>
>  $ int30 : int  161 146 200 158 150 160 190 161 163 169 ...<br>
>  $ char6 : chr  "Limelight" "Limelight" "Fusepoint/Savvis"<br>
> "Fusepoint/Savvis" ...<br>
>  $ char7 : chr  "Paris" "Paris" "Toronto" "Toronto" ...<br>
>  $ char8 : chr  "-1" "-1" "-1" "-1" ...<br>
>  $ char9 : chr  "FRANCE" "FRANCE" "CANADA" "CANADA" ...<br>
>  $ char10: chr  "FR" "FR" "CA" "CA" ...<br>
>  $ char11: chr  "FRANCE" "FRANCE" "CANADA" "CANADA" ...<br>
>  - attr(*, ".internal.selfref")=<externalptr><br>
>><br>
>> ## Here the ordered  files come out the be equivalent<br>
>> mapply(identical, Small, LargeOrd)<br>
>  index  char1  char2  char3   int1   int2  char4   int3   int4   int5<br>
> int6   int7   int8   int9<br>
>   TRUE   TRUE   TRUE   TRUE   TRUE   TRUE   TRUE   TRUE   TRUE   TRUE<br>
> TRUE   TRUE   TRUE   TRUE<br>
>  int10  int11  int12  int13  int14  char5  int15  int16  int17  int18<br>
>  int19  int20  int21  int22<br>
>   TRUE   TRUE   TRUE   TRUE   TRUE   TRUE   TRUE   TRUE   TRUE   TRUE<br>
> TRUE   TRUE   TRUE   TRUE<br>
>  int23  int24  int25  int26  int27  int28  int29  int30  char6  char7<br>
>  char8  char9 char10 char11<br>
>   TRUE   TRUE   TRUE   TRUE   TRUE   TRUE   TRUE   TRUE   TRUE   TRUE<br>
> TRUE   TRUE   TRUE   TRUE<br>
>> mapply(all.equal, Small, LargeOrd)<br>
>  index  char1  char2  char3   int1   int2  char4   int3   int4   int5<br>
> int6   int7   int8   int9<br>
>   TRUE   TRUE   TRUE   TRUE   TRUE   TRUE   TRUE   TRUE   TRUE   TRUE<br>
> TRUE   TRUE   TRUE   TRUE<br>
>  int10  int11  int12  int13  int14  char5  int15  int16  int17  int18<br>
>  int19  int20  int21  int22<br>
>   TRUE   TRUE   TRUE   TRUE   TRUE   TRUE   TRUE   TRUE   TRUE   TRUE<br>
> TRUE   TRUE   TRUE   TRUE<br>
>  int23  int24  int25  int26  int27  int28  int29  int30  char6  char7<br>
>  char8  char9 char10 char11<br>
>   TRUE   TRUE   TRUE   TRUE   TRUE   TRUE   TRUE   TRUE   TRUE   TRUE<br>
> TRUE   TRUE   TRUE   TRUE<br>
>><br>
>> ## The inspection results<br>
>> .Internal(inspect(Small))<br>
> @0x00000000128068e8 19 VECSXP g1c7 [OBJ,MARK,NAM(2),ATT] (len=42, tl=0)<br>
>   @0x000007ff8a3e0010 13 INTSXP g1c7 [MARK,NAM(2)] (len=3103314, tl=0)<br>
> 1,2,3,4,5,...<br>
>   @0x000007ff4fb30010 16 STRSXP g1c7 [MARK,NAM(2)] (len=3103314, tl=0)<br>
>     @0x0000000012114550 09 CHARSXP g1c3 [MARK,gp=0x60] [ASCII] [cached] "<br>
> <a href="http://conradhotels3.hilton.com" target="_blank">http://conradhotels3.hilton.com</a>"<br>
>     @0x0000000012114550 09 CHARSXP g1c3 [MARK,gp=0x60] [ASCII] [cached] "<br>
> <a href="http://conradhotels3.hilton.com" target="_blank">http://conradhotels3.hilton.com</a>"<br>
>     @0x0000000012114550 09 CHARSXP g1c3 [MARK,gp=0x60] [ASCII] [cached] "<br>
> <a href="http://conradhotels3.hilton.com" target="_blank">http://conradhotels3.hilton.com</a>"<br>
>     @0x0000000012114550 09 CHARSXP g1c3 [MARK,gp=0x60] [ASCII] [cached] "<br>
> <a href="http://conradhotels3.hilton.com" target="_blank">http://conradhotels3.hilton.com</a>"<br>
>     @0x0000000012114550 09 CHARSXP g1c3 [MARK,gp=0x60] [ASCII] [cached] "<br>
> <a href="http://conradhotels3.hilton.com" target="_blank">http://conradhotels3.hilton.com</a>"<br>
>     ...<br>
>   @0x000007ff4e380010 16 STRSXP g1c7 [MARK,NAM(2)] (len=<a href="tel:3103314" value="+13103314">3103314</a>, tl=0)<br>
>     @0x00000000205bf0d8 09 CHARSXP g1c2 [MARK,gp=0x60] [ASCII] [cached]<br>
> "/en/index.html"<br>
>     @0x00000000205bf0d8 09 CHARSXP g1c2 [MARK,gp=0x60] [ASCII] [cached]<br>
> "/en/index.html"<br>
>     @0x00000000205bf0d8 09 CHARSXP g1c2 [MARK,gp=0x60] [ASCII] [cached]<br>
> "/en/index.html"<br>
>     @0x00000000205bf0d8 09 CHARSXP g1c2 [MARK,gp=0x60] [ASCII] [cached]<br>
> "/en/index.html"<br>
>     @0x00000000205bf0d8 09 CHARSXP g1c2 [MARK,gp=0x60] [ASCII] [cached]<br>
> "/en/index.html"<br>
>     ...<br>
>   @0x000007ff4cbd0010 16 STRSXP g1c7 [MARK,NAM(2)] (len=3103314, tl=0)<br>
>     @0x0000000000120f20 09 CHARSXP g1c1 [MARK,gp=0x60] [ASCII] [cached] ""<br>
>     @0x0000000000120f20 09 CHARSXP g1c1 [MARK,gp=0x60] [ASCII] [cached] ""<br>
>     @0x0000000000120f20 09 CHARSXP g1c1 [MARK,gp=0x60] [ASCII] [cached] ""<br>
>     @0x0000000000120f20 09 CHARSXP g1c1 [MARK,gp=0x60] [ASCII] [cached] ""<br>
>     @0x0000000000120f20 09 CHARSXP g1c1 [MARK,gp=0x60] [ASCII] [cached] ""<br>
>     ...<br>
>   @0x000007ff88c20010 13 INTSXP g1c7 [MARK,NAM(2)] (len=3103314, tl=0)<br>
> 44903,44903,44903,44903,44903,...<br>
>   ...<br>
> ATTRIB:<br>
>   @0x0000000012cab8e0 02 LISTSXP g1c0 [MARK]<br>
>     TAG: @0x0000000000120088 01 SYMSXP g1c0 [MARK,NAM(2),LCK,gp=0x4000]<br>
> "names" (has value)<br>
>     @0x0000000016868d68 16 STRSXP g1c7 [MARK,NAM(2)] (len=42, tl=0)<br>
>       @0x0000000010112b98 09 CHARSXP g1c1 [MARK,gp=0x61] [ASCII] [cached]<br>
> "index"<br>
>       @0x0000000016b28fd0 09 CHARSXP g1c1 [MARK,gp=0x61] [ASCII] [cached]<br>
> "char1"<br>
>       @0x0000000016b291e0 09 CHARSXP g1c1 [MARK,gp=0x61,ATT] [ASCII]<br>
> [cached] "char2"<br>
>       @0x0000000016b293c0 09 CHARSXP g1c1 [MARK,gp=0x61] [ASCII] [cached]<br>
> "char3"<br>
>       @0x0000000016b29600 09 CHARSXP g1c1 [MARK,gp=0x61] [ASCII] [cached]<br>
> "int1"<br>
>       ...<br>
>     TAG: @0x0000000000120558 01 SYMSXP g1c0 [MARK,NAM(2),LCK,gp=0x4000]<br>
> "class" (has value)<br>
>     @0x00000000138b5318 16 STRSXP g1c2 [MARK,NAM(2)] (len=2, tl=0)<br>
>       @0x000000000b42c760 09 CHARSXP g1c2 [MARK,gp=0x61] [ASCII] [cached]<br>
> "data.table"<br>
>       @0x000000000027d230 09 CHARSXP g1c2 [MARK,gp=0x61] [ASCII] [cached]<br>
> "data.frame"<br>
>     TAG: @0x0000000000121d98 01 SYMSXP g1c0 [MARK,LCK,gp=0x4000]<br>
> "row.names" (has value)<br>
>     @0x0000000012c38050 13 INTSXP g1c1 [MARK,NAM(2)] (len=2, tl=0)<br>
> -2147483648,-3103314<br>
>     TAG: @0x000000001497ac10 01 SYMSXP g1c0 [MARK] ".internal.selfref"<br>
>     @0x0000000012caaa60 22 EXTPTRSXP g1c0 [MARK,NAM(2)]<br>
>> .Internal(inspect(Large))<br>
> @0x0000000012c24c68 19 VECSXP g1c7 [OBJ,MARK,NAM(2),ATT] (len=42, tl=0)<br>
>   @0x000007ff314d0010 13 INTSXP g1c7 [MARK,NAM(2)] (len=3103314, tl=0)<br>
> 716234,716235,1007651,2679944,1550732,...<br>
>   @0x000007ff2fd20010 16 STRSXP g1c7 [MARK,NAM(2)] (len=3103314, tl=0)<br>
>     @0x000000001253d8e0 09 CHARSXP g1c3 [MARK,gp=0x60,ATT] [ASCII]<br>
> [cached]<br>
> "<a href="http://go.compuware.com" target="_blank">http://go.compuware.com</a>"<br>
>     @0x000000001253d8e0 09 CHARSXP g1c3 [MARK,gp=0x60,ATT] [ASCII]<br>
> [cached]<br>
> "<a href="http://go.compuware.com" target="_blank">http://go.compuware.com</a>"<br>
>     @0x000000001e6d7ab0 09 CHARSXP g1c3 [MARK,gp=0x60] [ASCII] [cached] "<br>
> <a href="http://www.achmeacollectief.nl" target="_blank">http://www.achmeacollectief.nl</a>"<br>
>     @0x000000001e4a59b8 09 CHARSXP g1c3 [MARK,gp=0x60] [ASCII] [cached] "<br>
> <a href="https://db3.notify.windows.com" target="_blank">https://db3.notify.windows.com</a>"<br>
>     @0x000000001e63ee70 09 CHARSXP g1c3 [MARK,gp=0x60] [ASCII] [cached] "<br>
> <a href="http://www.christushealth.org" target="_blank">http://www.christushealth.org</a>"<br>
>     ...<br>
>   @0x000007ff2e570010 16 STRSXP g1c7 [MARK,NAM(2)] (len=<a href="tel:3103314" value="+13103314">3103314</a>, tl=0)<br>
>     @0x00000000200aa218 09 CHARSXP g1c2 [MARK,gp=0x60,ATT] [ASCII]<br>
> [cached]<br>
> "/default.aspx"<br>
>     @0x000000001e444d78 09 CHARSXP g1c3 [MARK,gp=0x60,ATT] [ASCII]<br>
> [cached]<br>
> "/dynaTraceMonitor"<br>
>     @0x000000001eb64790 09 CHARSXP g1c2 [MARK,gp=0x60] [ASCII] [cached]<br>
> "/unilever/"<br>
>     @0x000000000feb4e98 09 CHARSXP g1c1 [MARK,gp=0x60] [ASCII] [cached]<br>
> "/ping"<br>
>     @0x0000000000124950 09 CHARSXP g1c1 [MARK,gp=0x61] [ASCII] [cached]<br>
> "/"<br>
>     ...<br>
>   @0x000007ff2cdc0010 16 STRSXP g1c7 [MARK,NAM(2)] (len=3103314, tl=0)<br>
>     @0x0000000017a39430 09 CHARSXP g1c5 [MARK,gp=0x60] [ASCII] [cached]<br>
> "?rurl=<a href="http://frontline.compuware.com//products/BU/default.aspx" target="_blank">http://frontline.compuware.com//products/BU/default.aspx</a>"<br>
>     @0x000000001b721a50 09 CHARSXP g1c7 [MARK,gp=0x60] [ASCII] [cached]<br>
> "?url=http%3A%2F%<a href="http://2Fgo.compuware.com" target="_blank">2Fgo.compuware.com</a>%2Fdefault.aspx%3Frurl%3Dhttp%3A%2F%<br>
> <a href="http://2Ffrontline.compuware.com" target="_blank">2Ffrontline.compuware.com</a><br>
> %2F%2Fproducts%2FBU%2Fdefault.aspx$title=$frames=0$pId=G_1336593601673$fId=G_1336593601673$pFId=$rId=RID_73295254$rpId=1059475658$actions=1%7C_load_%7C-%7C_load_%7C1336593601673%7C1336593602736%7C375%2C2%7C_onload_%7C-%7C_load_%7C1336593602626%7C1336593602704%7C375$domR=1336593602642$dtV=410$3p=<br>

> <a href="http://www.google-analytics.com" target="_blank">www.google-analytics.com</a><br>
> %7C0%7C0%7C0%7C%7C0%7C0%7C0%7C1%7C828_859%7C31%7C31%7C31%7C0%7C%7C0%7C0%7C0%2Cs%7C828%7C859%7C_load_%7Chttp%253A%252F%<br>
> <a href="http://252Fwww.google-analytics.com" target="_blank">252Fwww.google-analytics.com</a>%252Fga.js%<a href="http://3B2264ff.r.axf8.net" target="_blank">3B2264ff.r.axf8.net</a><br>
> %7C0%7C0%7C0%7C%7C0%7C0%7C0%7C1%7C953_1078%7C125%7C125%7C125%7C0%7C%7C0%7C0%7C0%2Cs%7C953%7C1078%7C_load_%7Chttp%253A%252F%<br>
> <a href="http://252F2264FF.r.axf8.net" target="_blank">252F2264FF.r.axf8.net</a><br>
> %252Fmr%252Fe.gif%253Finfo%253D%25257Bn%25253Ac%25257Cc%25253A38695455749817%25257Cd%25253A1%25257Ca%25253A2264FF%25257Ch%25253A1%25257Ce%25253A%25257Cb%25253A%25257Cl%25253Ahttp%252524%252A%252524%25252F%<br>
> <a href="http://25252Fgo.compuware.com" target="_blank">25252Fgo.compuware.com</a><br>
> %25252Fdefault.aspx%25257Cm%25253A1024%25257Co%25253A768%25257Cp%25253AWin32%25257Cq%25253Ax86%25257Ck%25253Alan%25257Cg%25253AMSIE%25257Cf%25253A8.0%25257D%25257Bn%25253Au%25257Ce%25253A1%25257D%2526a%253D2264FF%2526r%253D1%2526s%253D1$time=1336593603689$"<br>

>     @0x0000000000120f20 09 CHARSXP g1c1 [MARK,gp=0x60] [ASCII] [cached] ""<br>
>     @0x0000000000120f20 09 CHARSXP g1c1 [MARK,gp=0x60] [ASCII] [cached] ""<br>
>     @0x0000000000120f20 09 CHARSXP g1c1 [MARK,gp=0x60] [ASCII] [cached] ""<br>
>     ...<br>
>   @0x000007ff2c1e0010 13 INTSXP g1c7 [MARK,NAM(2)] (len=3103314, tl=0)<br>
> 2812881,2812881,3149757,4286896,3618836,...<br>
>   ...<br>
> ATTRIB:<br>
>   @0x000000001f163298 02 LISTSXP g1c0 [MARK]<br>
>     TAG: @0x0000000000120088 01 SYMSXP g1c0 [MARK,NAM(2),LCK,gp=0x4000]<br>
> "names" (has value)<br>
>     @0x000000001283e0e0 16 STRSXP g1c7 [MARK,NAM(2)] (len=42, tl=0)<br>
>       @0x0000000010112b98 09 CHARSXP g1c1 [MARK,gp=0x61] [ASCII] [cached]<br>
> "index"<br>
>       @0x0000000016b28fd0 09 CHARSXP g1c1 [MARK,gp=0x61] [ASCII] [cached]<br>
> "char1"<br>
>       @0x0000000016b291e0 09 CHARSXP g1c1 [MARK,gp=0x61,ATT] [ASCII]<br>
> [cached] "char2"<br>
>       @0x0000000016b293c0 09 CHARSXP g1c1 [MARK,gp=0x61] [ASCII] [cached]<br>
> "char3"<br>
>       @0x0000000016b29600 09 CHARSXP g1c1 [MARK,gp=0x61] [ASCII] [cached]<br>
> "int1"<br>
>       ...<br>
>     TAG: @0x0000000000120558 01 SYMSXP g1c0 [MARK,NAM(2),LCK,gp=0x4000]<br>
> "class" (has value)<br>
>     @0x000000001368f078 16 STRSXP g1c2 [MARK,NAM(2)] (len=2, tl=0)<br>
>       @0x000000000b42c760 09 CHARSXP g1c2 [MARK,gp=0x61] [ASCII] [cached]<br>
> "data.table"<br>
>       @0x000000000027d230 09 CHARSXP g1c2 [MARK,gp=0x61] [ASCII] [cached]<br>
> "data.frame"<br>
>     TAG: @0x0000000000121d98 01 SYMSXP g1c0 [MARK,LCK,gp=0x4000]<br>
> "row.names" (has value)<br>
>     @0x000000000fb9a988 13 INTSXP g1c1 [MARK,NAM(2)] (len=2, tl=0)<br>
> -2147483648,-3103314<br>
>     TAG: @0x000000001497ac10 01 SYMSXP g1c0 [MARK] ".internal.selfref"<br>
>     @0x000000001f163110 22 EXTPTRSXP g1c0 [MARK,NAM(2)]<br>
>     TAG: @0x0000000016c8d648 01 SYMSXP g1c0 [MARK] "sorted"<br>
>     @0x000000001ece5f88 16 STRSXP g1c1 [MARK,NAM(2)] (len=1, tl=0)<br>
>       @0x0000000016b27b78 09 CHARSXP g1c1 [MARK,gp=0x61] [ASCII] [cached]<br>
> "char4"<br>
>> .Internal(inspect(LargeOrd))<br>
> @0x0000000012b69468 19 VECSXP g1c7 [OBJ,MARK,NAM(2),ATT] (len=42, tl=100)<br>
>   @0x000007ffc4fb0010 13 INTSXP g1c7 [MARK,NAM(2)] (len=3103314, tl=0)<br>
> 1,2,3,4,5,...<br>
>   @0x000007ffc2c20010 16 STRSXP g1c7 [MARK,NAM(2)] (len=3103314, tl=0)<br>
>     @0x0000000012114550 09 CHARSXP g1c3 [MARK,gp=0x60] [ASCII] [cached] "<br>
> <a href="http://conradhotels3.hilton.com" target="_blank">http://conradhotels3.hilton.com</a>"<br>
>     @0x0000000012114550 09 CHARSXP g1c3 [MARK,gp=0x60] [ASCII] [cached] "<br>
> <a href="http://conradhotels3.hilton.com" target="_blank">http://conradhotels3.hilton.com</a>"<br>
>     @0x0000000012114550 09 CHARSXP g1c3 [MARK,gp=0x60] [ASCII] [cached] "<br>
> <a href="http://conradhotels3.hilton.com" target="_blank">http://conradhotels3.hilton.com</a>"<br>
>     @0x0000000012114550 09 CHARSXP g1c3 [MARK,gp=0x60] [ASCII] [cached] "<br>
> <a href="http://conradhotels3.hilton.com" target="_blank">http://conradhotels3.hilton.com</a>"<br>
>     @0x0000000012114550 09 CHARSXP g1c3 [MARK,gp=0x60] [ASCII] [cached] "<br>
> <a href="http://conradhotels3.hilton.com" target="_blank">http://conradhotels3.hilton.com</a>"<br>
>     ...<br>
>   @0x000007ffc0890010 16 STRSXP g1c7 [MARK,NAM(2)] (len=<a href="tel:3103314" value="+13103314">3103314</a>, tl=0)<br>
>     @0x00000000205bf0d8 09 CHARSXP g1c2 [MARK,gp=0x60] [ASCII] [cached]<br>
> "/en/index.html"<br>
>     @0x00000000205bf0d8 09 CHARSXP g1c2 [MARK,gp=0x60] [ASCII] [cached]<br>
> "/en/index.html"<br>
>     @0x00000000205bf0d8 09 CHARSXP g1c2 [MARK,gp=0x60] [ASCII] [cached]<br>
> "/en/index.html"<br>
>     @0x00000000205bf0d8 09 CHARSXP g1c2 [MARK,gp=0x60] [ASCII] [cached]<br>
> "/en/index.html"<br>
>     @0x00000000205bf0d8 09 CHARSXP g1c2 [MARK,gp=0x60] [ASCII] [cached]<br>
> "/en/index.html"<br>
>     ...<br>
>   @0x000007ffbe500010 16 STRSXP g1c7 [MARK,NAM(2)] (len=3103314, tl=0)<br>
>     @0x0000000000120f20 09 CHARSXP g1c1 [MARK,gp=0x60] [ASCII] [cached] ""<br>
>     @0x0000000000120f20 09 CHARSXP g1c1 [MARK,gp=0x60] [ASCII] [cached] ""<br>
>     @0x0000000000120f20 09 CHARSXP g1c1 [MARK,gp=0x60] [ASCII] [cached] ""<br>
>     @0x0000000000120f20 09 CHARSXP g1c1 [MARK,gp=0x60] [ASCII] [cached] ""<br>
>     @0x0000000000120f20 09 CHARSXP g1c1 [MARK,gp=0x60] [ASCII] [cached] ""<br>
>     ...<br>
>   @0x000007ffbcd40010 13 INTSXP g1c7 [MARK,NAM(2)] (len=3103314, tl=0)<br>
> 44903,44903,44903,44903,44903,...<br>
>   ...<br>
> ATTRIB:<br>
>   @0x0000000012cec058 02 LISTSXP g1c0 [MARK]<br>
>     TAG: @0x0000000000120088 01 SYMSXP g1c0 [MARK,NAM(2),LCK,gp=0x4000]<br>
> "names" (has value)<br>
>     @0x0000000012b60620 16 STRSXP g1c7 [MARK,NAM(2)] (len=42, tl=100)<br>
>       @0x0000000010112b98 09 CHARSXP g1c1 [MARK,gp=0x61] [ASCII] [cached]<br>
> "index"<br>
>       @0x0000000016b28fd0 09 CHARSXP g1c1 [MARK,gp=0x61] [ASCII] [cached]<br>
> "char1"<br>
>       @0x0000000016b291e0 09 CHARSXP g1c1 [MARK,gp=0x61,ATT] [ASCII]<br>
> [cached] "char2"<br>
>       @0x0000000016b293c0 09 CHARSXP g1c1 [MARK,gp=0x61] [ASCII] [cached]<br>
> "char3"<br>
>       @0x0000000016b29600 09 CHARSXP g1c1 [MARK,gp=0x61] [ASCII] [cached]<br>
> "int1"<br>
>       ...<br>
>     TAG: @0x0000000000120558 01 SYMSXP g1c0 [MARK,NAM(2),LCK,gp=0x4000]<br>
> "class" (has value)<br>
>     @0x0000000013a16be0 16 STRSXP g1c2 [MARK,NAM(2)] (len=2, tl=0)<br>
>       @0x000000000b42c760 09 CHARSXP g1c2 [MARK,gp=0x61] [ASCII] [cached]<br>
> "data.table"<br>
>       @0x000000000027d230 09 CHARSXP g1c2 [MARK,gp=0x61] [ASCII] [cached]<br>
> "data.frame"<br>
>     TAG: @0x0000000000121d98 01 SYMSXP g1c0 [MARK,LCK,gp=0x4000]<br>
> "row.names" (has value)<br>
>     @0x0000000012c2f2f0 13 INTSXP g1c1 [MARK,NAM(2)] (len=2, tl=0)<br>
> -2147483648,-3103314<br>
>     TAG: @0x000000001497ac10 01 SYMSXP g1c0 [MARK] ".internal.selfref"<br>
>     @0x0000000012cec170 22 EXTPTRSXP g1c0 [MARK,NAM(2)]<br>
>><br>
>><br>
>> ## A little size tester function<br>
>> ## This will set a key, save the result, print the result's size<br>
>> keytest = function(dt, key){<br>
> +   setkeyv(dt, key)<br>
> +   save(dt, file='dt_temp.Rdata')<br>
> +   tempfilesize = <a href="http://file.info" target="_blank">file.info</a>('dt_temp.Rdata')$size<br>
> +   tempfilesize = formatC(tempfilesize, big.mark=',', format='f',<br>
> digits=0)<br>
> +   cat(key, tempfilesize, '\n\n')<br>
> +   unlink('dt_temp.Rdata')<br>
> +   invisible(NULL)<br>
> + }<br>
>><br>
>> str(Small)<br>
> Classes ‘data.table’ and 'data.frame': <a href="tel:3103314" value="+13103314">3103314</a> obs. of  42 variables:<br>
>  $ index : int  <a href="tel:1%202%203%204%205%206%207%208%209%2010" value="+12345678910">1 2 3 4 5 6 7 8 9 10</a> ...<br>
>  $ char1 : chr  "<a href="http://conradhotels3.hilton.com" target="_blank">http://conradhotels3.hilton.com</a>" "<br>
> <a href="http://conradhotels3.hilton.com" target="_blank">http://conradhotels3.hilton.com</a>" "<a href="http://conradhotels3.hilton.com" target="_blank">http://conradhotels3.hilton.com</a>" "<br>

> <a href="http://conradhotels3.hilton.com" target="_blank">http://conradhotels3.hilton.com</a>" ...<br>
>  $ char2 : chr  "/en/index.html" "/en/index.html" "/en/index.html"<br>
> "/en/index.html" ...<br>
>  $ char3 : chr  "" "" "" "" ...<br>
>  $ int1  : int  44903 44903 44903 44903 44903 44903 44903 44903 44903<br>
> 44903<br>
> ...<br>
>  $ int2  : int  411 411 254 254 336 336 118 118 386 386 ...<br>
>  $ char4 : chr  "2012-05-09 20:17:40.587" "2012-05-09 21:17:54.427"<br>
> "2012-05-09 20:10:49.560" "2012-05-09 21:11:05.107" ...<br>
>  $ int3  : int  0 0 0 0 0 0 0 0 0 0 ...<br>
>  $ int4  : int  0 0 0 0 0 0 0 0 0 0 ...<br>
>  $ int5  : int  69 69 69 69 69 69 69 68 68 68 ...<br>
>  $ int6  : int  68 68 68 68 68 68 68 67 67 67 ...<br>
>  $ int7  : int  35 35 37 35 35 35 33 38 38 40 ...<br>
>  $ int8  : int  0 0 0 0 0 0 0 0 0 0 ...<br>
>  $ int9  : int  0 0 0 0 0 0 0 0 0 0 ...<br>
>  $ int10 : int  0 0 0 0 0 0 0 0 0 0 ...<br>
>  $ int11 : int  1 1 1 1 1 1 1 1 1 1 ...<br>
>  $ int12 : int  334830 334847 335102 334838 334836 342687 334521 318626<br>
> 318578 326800 ...<br>
>  $ int13 : int  36 36 37 36 36 36 35 38 37 39 ...<br>
>  $ int14 : int  44 44 49 47 45 45 45 46 45 48 ...<br>
>  $ char5 : chr  "" "" "" "" ...<br>
>  $ int15 : int  NA NA NA NA NA NA NA NA NA NA ...<br>
>  $ int16 : int  0 0 0 0 0 0 0 0 0 0 ...<br>
>  $ int17 : int  0 0 0 0 0 0 0 0 0 0 ...<br>
>  $ int18 : int  2 2 2 2 2 2 2 2 2 2 ...<br>
>  $ int19 : int  1381 1152 424 3728 1772 921 385 725 401 314 ...<br>
>  $ int20 : int  36 36 37 36 36 36 35 38 37 39 ...<br>
>  $ int21 : int  2199 2201 1492 1448 2559 2529 1084 1432 1876 1984 ...<br>
>  $ int22 : int  44 44 49 47 45 45 45 46 45 48 ...<br>
>  $ int23 : int  2203 2188 1199 1162 2324 2346 821 897 1386 1189 ...<br>
>  $ int24 : int  13 13 14 13 13 13 12 13 13 14 ...<br>
>  $ int25 : int  5166 5761 3755 3794 5614 7779 2830 3971 4637 5871 ...<br>
>  $ int26 : int  103 103 105 103 103 103 101 105 105 107 ...<br>
>  $ int27 : int  70 183 159 197 217 165 153 232 92 102 ...<br>
>  $ int28 : int  103 103 105 103 103 103 101 105 105 107 ...<br>
>  $ int29 : int  0 0 0 0 0 0 0 0 0 0 ...<br>
>  $ int30 : int  161 146 200 158 150 160 190 161 163 169 ...<br>
>  $ char6 : chr  "Limelight" "Limelight" "Fusepoint/Savvis"<br>
> "Fusepoint/Savvis" ...<br>
>  $ char7 : chr  "Paris" "Paris" "Toronto" "Toronto" ...<br>
>  $ char8 : chr  "-1" "-1" "-1" "-1" ...<br>
>  $ char9 : chr  "FRANCE" "FRANCE" "CANADA" "CANADA" ...<br>
>  $ char10: chr  "FR" "FR" "CA" "CA" ...<br>
>  $ char11: chr  "FRANCE" "FRANCE" "CANADA" "CANADA" ...<br>
>  - attr(*, ".internal.selfref")=<externalptr><br>
>> keytest(Small, colnames(Small)[1])<br>
> index 77,694,801<br>
><br>
>> keytest(Small, colnames(Small)[2])<br>
> char1 75,876,250<br>
><br>
>> keytest(Small, colnames(Small)[3])<br>
> char2 77,218,972<br>
><br>
>> keytest(Small, colnames(Small)[4])<br>
> char3 80,585,449<br>
><br>
>> keytest(Small, colnames(Small)[5])<br>
> int1 77,558,982<br>
><br>
>> keytest(Small, colnames(Small)[6])<br>
> int2 95,185,248<br>
><br>
>> keytest(Small, colnames(Small)[7])<br>
> char4 204,037,056<br>
><br>
>> keytest(Small, colnames(Small)[8])<br>
> int3 206,450,705<br>
><br>
>> keytest(Small, colnames(Small)[9])<br>
> int4 211,520,888<br>
><br>
>> keytest(Small, colnames(Small)[10])<br>
> int5 156,095,150<br>
><br>
>><br>
>><br>
>> keytest(Small, colnames(Small)[11])<br>
> int6 150,431,716<br>
><br>
>> keytest(Small, colnames(Small)[12])<br>
> int7 136,077,306<br>
><br>
>> keytest(Small, colnames(Small)[13])<br>
> int8 134,981,911<br>
><br>
>> keytest(Small, colnames(Small)[14])<br>
> int9 134,871,952<br>
><br>
>> keytest(Small, colnames(Small)[15])<br>
> int10 134,678,104<br>
><br>
>> keytest(Small, colnames(Small)[16])<br>
> int11 134,682,904<br>
><br>
>> keytest(Small, colnames(Small)[17])<br>
> int12 112,097,493<br>
><br>
>> keytest(Small, colnames(Small)[18])<br>
> int13 101,734,541<br>
><br>
>> keytest(Small, colnames(Small)[19])<br>
> int14 101,160,920<br>
><br>
>><br>
><br>
<br>
<br>
</div></div></blockquote></div><br></div><div><br></div>