Data Transfer using iCommands¶
iCommands provides a range of commands designed to efficiently and conveniently transfer large datasets between your local machine and the Data Store.
Download Data from the Data Store¶
-
Download a collection to a specific local path:
iget -P -f -K -T /iplant/home/myUser/mydir /local/dir/This command downloads the collection
/iplant/home/myUser/mydirand its contents to/local/dir/. A new directory namedmydirwill be created under/local/dir/, resulting in/local/dir/mydircontaining all the downloaded files and subdirectories.- The
-Pflag outputs download progress. - The
-fflag forces overwriting of existing local files without confirmation. - The
-Kflag ensures file integrity by verifying checksums after the download. - The
-Tflag renews connections every 10 minutes to prevent failures due to connection or firewall issues.
- The
-
Sync a collection in the Data Store with a local directory:
irsync -r -K i:/iplant/home/myUser/mydir /local/dir/This command downloads the collection
/iplant/home/myUser/mydirand its contents to/local/dir/, syncing any new updates made to the original data. -
Download a collection using multiple parallel transfers:
iget -P -f -K -T -N 10 /iplant/home/myUser/mydir /local/dir/This command downloads the collection
/iplant/home/myUser/mydirand its contents to/local/dir/using 10 parallel transfer threads. Utilizing more transfer threads can maximize I/O and network bandwidth, often speeding up the transfer process significantly.- The
-Nflag sets the maximum number of threads to use for the transfer.
Thread Count Considerations
- Higher thread counts require more CPU and memory. Excessive threads may overload your system, causing performance issues. For example, Discovery Environment (DE) apps limit transfer threads to 4 due to RAM constraints.
- The Data Store limits concurrent connections, potentially restricting high thread counts.
- The
Upload Data to the Data Store¶
-
Upload a local directory to a specific path in the Data Store:
iput -P -f -K -T /local/dir/ /iplant/home/myUser/mydir/This command uploads the local directory
/local/dir/and its contents to the Data Store at/iplant/home/myUser/mydir/. A new directory nameddirwill be created under/iplant/home/myUser/mydir/, resulting in/iplant/home/myUser/mydir/dircontaining all the uploaded files and subdirectories.- The
-Pflag outputs upload progress. - The
-fflag forces overwriting of existing files in the Data Store without confirmation. - The
-Kflag ensures file integrity by verifying checksums after upload. - The
-Tflag renews connections every 10 minutes to prevent failures due to connection or firewall issues.
- The
-
Sync a local directory with a collection in the Data Store:
irsync -r -K /local/dir/ i:/iplant/home/myUser/mydir/This command uploads the local directory
/local/dir/to/iplant/home/myUser/mydir/in the Data Store, syncing any new or updated files. -
Upload a local directory using multiple parallel transfers:
iput -P -f -K -T -N 10 /local/dir/ /iplant/home/myUser/mydir/This command uploads the local directory
/local/dir/and its contents to/iplant/home/myUser/mydir/in the Data Store using 10 parallel transfer threads. This can significantly speed up the upload process by maximizing I/O and network bandwidth.- The
-Nflag sets the maximum number of threads to use for the transfer.
Thread Count Considerations
- Higher thread counts require more CPU and memory. Excessive threads may overload your system, causing performance issues. For example, Discovery Environment (DE) apps limit transfer threads to 4 due to RAM constraints.
- The Data Store limits concurrent connections, potentially restricting high thread counts.
- The