I'm pretty sure JMP only downloads the file once for open("https...", type), even if the file needs to be scanned more than once (when type is "text" for csv files). I think the file is kept in memory for the text/csv case, which will limit the maximum size; for other types, the file may be saved to a temp file (the excel opener might need to work from a disk file, for example).
So it is possible that downloading csv to a disk file might be slower (probably not by a noticeable amount though). If the CSV file is approaching half your memory size (8GB file size on a 16GB machine...the JMP table will need memory too!) it might be necessary to download it first.
Not sure where the timeout happens, but an alternate approach to downloading could look like this:
// here's a way to download a URL to a local file
filename = Save Text File(
"$temp/sample.csv", // extension is saved as CSV
Load Text File(
"https://data.cityofnewyork.us/api/views/kku6-nxdu/rows.csv?accessType=DOWNLOAD",
blob
)
);
dt1 = Open( filename ); // "text" not needed because extension is CSV
// here's a way to open directly
dt2 = Open(
"https://data.cityofnewyork.us/api/views/kku6-nxdu/rows.csv?accessType=DOWNLOAD",
"text" // here the extension might or might not be CSV, use "text" to make sure
);
// verify both ways make the same table
compare = dt1 << Compare Data Tables(
Compare with( dt2 ),
Compare Data,
Show Difference Summary( 0 ),
Show Difference Plot( 0 )
);
If( compare << Are Data Different,
Write( "\!nwhy are they different?" ),
Write( "\!nResults identical" )
);
Show( N Rows( dt1 ), N Cols( dt1 ), N Rows( dt2 ), N Cols( dt2 ) );
// clean up
compare << closewindow;
Close( dt1, "nosave" );
Close( dt2, "nosave" );
@bryan_boone
Craige