Difference between revisions of "Using Bioarchive"

From Carl R. Woese Institute for Genomic Biology - University of Illinois Urbana-Champaign
Jump to navigation Jump to search
Line 11: Line 11:
 
* Click on "Action" at the top-left corner and then choose "Edit".
 
* Click on "Action" at the top-left corner and then choose "Edit".
 
* Enter your temporary password in the Current Password field, and then create a new password and confirm it. Be sure to click "Save" when you are done.
 
* Enter your temporary password in the Current Password field, and then create a new password and confirm it. Be sure to click "Save" when you are done.
</div>
+
</div>
 
==Get S3 Keys==
 
==Get S3 Keys==
The credentials to access your data are the S3 keys that are assigned to your account. To obtain the keys:<div class="mw-parser-output">
+
The credentials to access your data are the S3 keys that are assigned to your account. To obtain the keys:
 +
 
 +
<div class="mw-parser-output">
 
* Log into<a class="external free" rel="nofollow">https://bioarchive-login.igb.illinois.eduwith</a> the username and password created in the previous step, or continue from there if you just changed your password.
 
* Log into<a class="external free" rel="nofollow">https://bioarchive-login.igb.illinois.eduwith</a> the username and password created in the previous step, or continue from there if you just changed your password.
 
* Click on "Action" at the top-left corner and then choose "Show S3 Credentials".
 
* Click on "Action" at the top-left corner and then choose "Show S3 Credentials".
 
* A pop-up box will appear with your S3 Access ID and S3 Secret Key. Copy them to a safe place as you will need them to access Bioarchive.
 
* A pop-up box will appear with your S3 Access ID and S3 Secret Key. Copy them to a safe place as you will need them to access Bioarchive.
</div>
+
</div>
 
=How to transfer data to Bioarchive=
 
=How to transfer data to Bioarchive=
 
We support data transfer from your local computer system and from Biocluster.To prepare for data transfer, you are recommended to put all data for one project in a directory and compress it into a file. Add a readme file to explain the contents inside. Put both the compressed and readme files in a folder.​
 
We support data transfer from your local computer system and from Biocluster.To prepare for data transfer, you are recommended to put all data for one project in a directory and compress it into a file. Add a readme file to explain the contents inside. Put both the compressed and readme files in a folder.​
Line 29: Line 31:
  
 
Windows - [https://help.igb.illinois.edu/images/6/67/BlackPearlEonBrowserSetup-5.0.12.msi BlackPearlEonBrowserSetup-5.0.12.msi]
 
Windows - [https://help.igb.illinois.edu/images/6/67/BlackPearlEonBrowserSetup-5.0.12.msi BlackPearlEonBrowserSetup-5.0.12.msi]
 +
  
  
Line 38: Line 41:
  
 
If the system says that the file is corrupted, doing the following in a terminal session after you copy the program to your applications should fix it.
 
If the system says that the file is corrupted, doing the following in a terminal session after you copy the program to your applications should fix it.
 
 
 
 
  
 
<pre>
 
<pre>
Line 47: Line 46:
 
sudo xattr -cr BlackPearlEonBrowser.app
 
sudo xattr -cr BlackPearlEonBrowser.app
 
</pre>
 
</pre>
==Option C - Install Command Line Tools==
+
======
You can download and install the command line tools for the archive on your local system by downloading the software at https://developer.spectralogic.com/clients/
+
===Using Eon Browser
 
+
===
This is primarily for users who need or want command line access from their local computer.
+
The Spectralogic User Guide for the Eon Browser is athttps://developer.spectralogic.com/wp-content/uploads/2018/11/90990126_C_BlackPearlEonBrowser-UserGuide.pdf.[[File:Screenshot 2024-01-22 114632.png|right|middle|thumb]]Use this information when opening a new session on the archive:
 
 
=Using Eon Browser=
 
The Eon Browser is the simplest method of transferring data into and out of the archive.  CNRG expects that most users will use the Eon Browser. 
 
 
 
The Spectralogic User Guide for the Eon Browser is at https://developer.spectralogic.com/wp-content/uploads/2018/11/90990126_C_BlackPearlEonBrowser-UserGuide.pdf
 
 
 
Use this information when opening a new session on the archive:
 
 
* Name: Bioarchive
 
* Name: Bioarchive
 
* Data Path Address: bioarchive.igb.illinois.edu
 
* Data Path Address: bioarchive.igb.illinois.edu
 
* Port: 443
 
* Port: 443
* Check the box for Use SSL
+
* Check the box for SSL
 
* Access ID: '''Your S3 Access ID'''
 
* Access ID: '''Your S3 Access ID'''
 
* Secret Key: '''Your S3 Secret Key'''
 
* Secret Key: '''Your S3 Secret Key'''
* Check the box for Default Session if you want it to automatically connect to the archive when you open the program.
+
* Check the box for Default Session if you want it to automatically connect to Bioarhive when you open the program.
* Click Save to save your session settings so that you don't need to put it in every time.
+
* Click Save to save your session settings so that future connections will use the same info.
 
* Click Open to open the archive session.
 
* Click Open to open the archive session.
 +
You should see your local computer directories on the lefthand side, and your available buckets on the right. To transfer data, just drag from your local computer directories and drop it in the appropriate bucket. You will see the progress in the bottom of the program window.When transferring a file, it will first go into the cache and then get written to tape. You can see this happening in the Eon Browser by looking at the storage locations column. A purple disk icon shows the data is in cache, and the green tape icon shows that the data is on tape.While transferring a file, the session will not show a complete transfer until all data is written to the tape. This can take some time. Please check the sleep settings on your computer in advance of the transfer, which can get interrupted if your computer goes to sleep. Using an ethernet instead of a wireless connection would also facilitate data transfer.Another way to transfer data from your local system to Bioarchive is to use a command line tool. To do so, download and install the command line tool on your local system: https://developer.spectralogic.com/clients/. The Spectralogic user guide for the command line tool is athttps://developer.spectralogic.com/java-command-line-interface-cli-reference-and-examples/. You may need to reconcile your local computer environment with the tool for this to work. Thus, if you aren’t sure about the difference between the two environments, use Eon Browser. The CNRG would not provide further support.​
  
You should see your local computer directories on the lefthand side, and your available buckets on the right.
+
==Data transfer from Biocluster==
To transfer data, just drag from your local computer directories and drop it in the appropriate bucket.  You will see the progress in the bottom of the program window.
+
The tool to access Bioarchive is already installed on Biocluster. You will need to load the module.
==Notes on Eon Browser==
+
<pre>
 
+
module load ds3_java_cli
* When uploading a file, it will first go into the cache and then get written to tape.  You can see this happening in the Eon Browser by looking at the storage locations column.  A purple disk icon shows the data is in cache, and the green tape icon shows that the data is on tape.
+
</pre>This will add the utilities to your environment. Then, load the program we created to set up the environment variables. Enter your secret key and access key when prompted. '''All the bold textin commands below denotes items that need to be replaced with information pertinent to you.'''[]$ archive_environment.py
* Also while uploading a file, the session will not show a complete transfer until all of the data uploaded is written to tape.  This can take some time.  If your session gets interrupted while data is copying from the cache to tape, it should complete successfully.
 
* If you have a significant amount of data to transfer, please check the sleep settings on your computer in advance of the transfer.  If your computer goes to sleep during a transfer, it will interrupt it.
 
'''For the immediate future, the Eon Browser is available on biotransfer or you can install it on your local system.'''
 
 
 
=Using Command Line Tools=
 
If you are using the archive on the biocluster, please be sure to configure your archive environment on biocluster as shown below.
 
The Spectralogic user guide for the command line tools is at https://developer.spectralogic.com/java-command-line-interface-cli-reference-and-examples/
 
 
 
==Common Information==
 
Many pieces of information are common across the use of this tool.
 
* '''Bold Text''' denotes items that need to be replace with information pertinent to you
 
* '''S3_Access_ID''' is the S3 access id for your account, you can get this by logging into the archive web interface
 
* '''S3_Secret_Key''' is the S3 secret key for your account, you can get this by logging into the archive web interface
 
* '''Bucket_Name''' is the S3 bucket you want to put your data in
 
* bioarchive.igb.illinois.edu is the dns name of the archive.  If you are using in biocluster, you should use bioarchive.data.igb.illinois.edu instead
 
 
 
If you are using the command line tools on biocluster, then you need to load the module by typing:
 
 
 
 
 
<pre>module load ds3_java_cli</pre>This will add the utilities to your environment.
 
 
 
==Configuring Environment for Biocluster==
 
In order to make using the command line tools easier on biocluster, we have created a program to set up environment variables to simplify usage.  Please use the archive_environment.py script as shown below. Enter in your secret key and access key when prompted.
 
 
 
 
 
<pre>[]$ module load ds3_java_cli
 
-bash: /home/a-m/danield/.archive/credentials: No such file or directory
 
[]$ archive_environment.py
 
 
Directory exists, but file does not
 
Directory exists, but file does not
 
Enter S3 Access ID:S3_Access_ID
 
Enter S3 Access ID:S3_Access_ID
Line 106: Line 71:
 
Archive variables already loaded in .bashrc
 
Archive variables already loaded in .bashrc
 
Environment updated for next login.  To use new values in this session, please type 'source .archive/credentials'
 
Environment updated for next login.  To use new values in this session, please type 'source .archive/credentials'
</pre>After you run this command please be sure to type
 
  
  
<pre>source .archive/credentials</pre><p class="mw_paragraph">In all of the following commands below, we are assuming you are using biocluster to do the transfer and have run this program.  If this is not the case then you need to include: <br class="single_linebreak"/>
+
Be sure to type:
-a '''S3_Access_ID''' -k '''S3_Secret_Key''' -e bioarchive.igb.illinois.edu<br class="single_linebreak"/>
+
<pre>
 +
source .archive/credentials
 +
</pre>​In all of the following commands below, we are assuming you are using biocluster to do the transfer and have run this program.  If this is not the case then you need to include: <brclass="single_linebreak">
 +
-a '''S3_Access_ID''' -k '''S3_Secret_Key''' -e bioarchive.igb.illinois.edu<brclass="single_linebreak">
 
On every line immediately after the ds3_java_cli command and before the rest of the commands as shown below.
 
On every line immediately after the ds3_java_cli command and before the rest of the commands as shown below.
<h2>Limits</h2>There are not many, but as we find them, they will be placed here
+
<h2>Limits</h2>
 +
<pre></pre><div class="mw-parser-output"><h2><span class="mw-headline" id="Limits">Limits</span></h2></div>There are not many, but as we find them, they will be placed here
 
<ul><li>You can only put 500,000 objects at a time on the system.  If you need up put more than 500,000 files and folders, you will need to split that up between two or more submissions.  However this is assuredly a sign that your data needs to be organized better.  Please contact us if you run into this issue.</li></ul>
 
<ul><li>You can only put 500,000 objects at a time on the system.  If you need up put more than 500,000 files and folders, you will need to split that up between two or more submissions.  However this is assuredly a sign that your data needs to be organized better.  Please contact us if you run into this issue.</li></ul>
 +
 +
<div class="mw-parser-output"><ul><li>You can only put 500,000 objects at a time on the system.  If you need up put more than 500,000 files and folders, you will need to split that up between two or more submissions.  However this is assuredly a sign that your data needs to be organized better.  Please contact us if you run into this issue.</li></ul></div>
 
<h2>Upload Items in A Directory</h2>ds3_java_cli -b '''Bucket_Name''' -c put_bulk -d '''Directory_Name'''
 
<h2>Upload Items in A Directory</h2>ds3_java_cli -b '''Bucket_Name''' -c put_bulk -d '''Directory_Name'''
 
<ul><li>put_bulk tells the program to upload everything inside the directory given</li><li>'''Directory_Name''' is the directory to upload, note this will upload everything in this directory, not the directory itself</li></ul>
 
<ul><li>put_bulk tells the program to upload everything inside the directory given</li><li>'''Directory_Name''' is the directory to upload, note this will upload everything in this directory, not the directory itself</li></ul>
Line 125: Line 95:
 
<ul><li>This will download all objects in a bucket.  '''Use carefully.'''</li><li>You can add -p '''prefix''' to restrict which files get restored</li></ul>
 
<ul><li>This will download all objects in a bucket.  '''Use carefully.'''</li><li>You can add -p '''prefix''' to restrict which files get restored</li></ul>
 
<h2>List Available Buckets</h2>ds3_java_cli -c get_service
 
<h2>List Available Buckets</h2>ds3_java_cli -c get_service
<ul><li>Returns a list of buckets that the user has permission to access.</li></ul><h2>Best Practices for Uploading Data</h2><h3>Create the Environment</h3>First make sure you set up your command line environment properly via the archive_accounting.py script outline above.  You can check if this is working by doing a:<br class="single_linebreak"/>
+
<ul><li>Returns a list of buckets that the user has permission to access.</li></ul><h2>Best Practices for Uploading Data</h2><h3>Create the Environment</h3>First make sure you set up your command line environment properly via the archive_accounting.py script outline above.  You can check if this is working by doing a:<brclass="single_linebreak">
ds3_java_cli -c get_service<br class="single_linebreak"/>
+
ds3_java_cli -c get_service<brclass="single_linebreak">
 
and making sure that your buckets show.
 
and making sure that your buckets show.
<h3>Upload With a Separate Folder</h3>To upload data, it is best that you have all data in one directory named something like "to_archive"  then you can put all of the data you want to upload to the archive in that folder, exactly like you want it to be on the archive.  Make sure these files do not already exist in those locations in the archive with either the Eon Browser or the command line tools.  When you are ready, then run this command:<br class="single_linebreak"/>
+
<h3>Upload With a Separate Folder</h3>To upload data, it is best that you have all data in one directory named something like "to_archive"  then you can put all of the data you want to upload to the archive in that folder, exactly like you want it to be on the archive.  Make sure these files do not already exist in those locations in the archive with either the Eon Browser or the command line tools.  When you are ready, then run this command:<brclass="single_linebreak">
ds3_java_cli -b '''Bucket_Name''' -c put_bulk -d to_archive<br class="single_linebreak"/>
+
ds3_java_cli -b '''Bucket_Name''' -c put_bulk -d to_archive<brclass="single_linebreak">
 
Note that the to_archive folder does not exist in the bucket now.  This command moves everything inside of the to_archive folder into the archive, but not the to_archive folder itself.
 
Note that the to_archive folder does not exist in the bucket now.  This command moves everything inside of the to_archive folder into the archive, but not the to_archive folder itself.
<h1>References</h1><ul><li>[https://developer.spectralogic.com/java-command-line-interface-cli-reference-and-examples/ https://developer.spectralogic.com/java-command-line-interface-cli-reference-and-examples/]</li></ul>
+
<h1>References</h1><ul><li>[https://developer.spectralogic.com/java-command-line-interface-cli-reference-and-examples/ https://developer.spectralogic.com/java-command-line-interface-cli-reference-and-examples/]</li></ul><p>

Revision as of 09:09, 29 January 2024

Bioarchive[edit]

Bioarchive is set up for long-term data storage at a low upfront cost, which allows grant PIs to preserve data well beyond the funding period. Storage space can be purchased before the end of the grant, and data will be safely kept for 10 years from purchase. If a longer term of storage is needed, PIs may contact Grants and Contracts for approval. Large datasets that are not actively used should also be moved to Bioarchive to save for the higher storage cost on Biocluster or other storage services.Any type of data, except for the HIPAA data, is allowed on Bioarchive.​

How Bioarchive Works[edit]

Bioarchive is a disk-to-tape system that utilizes a Spectralogic Black Perl disk system and a Spectralogic T950 tape library with LTO8 tape drives. This setup allows users to transfer data to the archive quickly because data is written to spinning disks, and then the software will move the data to the tape. Unless specified otherwise, all data on Bioarchive is written onto two tapes. One of them stays in the library in case the data is needed, while the other tape is taken to a secure offsite storage facility.​

How Bioarchive Billing Works[edit]

Each private storage unit is called a Bucket (like a folder), and each bucket needs to be associated with a CFOP number. A user is granted 50GB of storage space before any charge. This is to ensure that the service meets their needs before commitment. Once a bucket passes this initial 50GB threshold, we bill $200 for each TB of data in the next monthly billing period. Ten years after a Bucket is billed, the PI will be offered the choice of removing the data or paying for an additional 10 years.To check your Bioarchive billing, go to https://www-app.igb.illinois.edu/bioarchive. if you need to update the CFOP associated with your account, emailhelp@igb.illinois.edu.​

How do I start using Bioarchive[edit]

Please fill out the Bioarchive Bucket Request Form:https://www.igb.illinois.edu/webform/archive_bucket_request_form

You will receive an email from CNRG once your account is created.The email includes a temporary password. Change your passwordIMMEDIATELY. To do so, go tohttps://bioarchive-login.igb.illinois.eduand log in using your NetID and the temporary password.

  • Click on your NetID at the top-right corner and then choose "User Profile".
  • Click on "Action" at the top-left corner and then choose "Edit".
  • Enter your temporary password in the Current Password field, and then create a new password and confirm it. Be sure to click "Save" when you are done.

Get S3 Keys[edit]

The credentials to access your data are the S3 keys that are assigned to your account. To obtain the keys:

  • Log into<a class="external free" rel="nofollow">https://bioarchive-login.igb.illinois.eduwith</a> the username and password created in the previous step, or continue from there if you just changed your password.
  • Click on "Action" at the top-left corner and then choose "Show S3 Credentials".
  • A pop-up box will appear with your S3 Access ID and S3 Secret Key. Copy them to a safe place as you will need them to access Bioarchive.

How to transfer data to Bioarchive[edit]

We support data transfer from your local computer system and from Biocluster.To prepare for data transfer, you are recommended to put all data for one project in a directory and compress it into a file. Add a readme file to explain the contents inside. Put both the compressed and readme files in a folder.​

Data transfer from a computer[edit]

The easiest way is to use Eon Browser. Download and install the Eon Browser GUI on your computer.Windows -BlackPearlEonBrowserSetup-5.0.12.msiMacOS -BlackPearlEonBrowser-5.0.12.dmgNote for OSX systemsIf the system says that the file is corrupted, open a terminal session after you copy the program to your applications. Type the following to the terminal.​


Option B - Install Eon Browser[edit]

You can download and install the Eon Browser GUI for the archive on your local system.

Windows - BlackPearlEonBrowserSetup-5.0.12.msi


MacOS - BlackPearlEonBrowser-5.0.12.dmg

This is useful if you are archiving data from your local computer or from systems other than Biocluster.

Note for OSX systems

If the system says that the file is corrupted, doing the following in a terminal session after you copy the program to your applications should fix it.

cd /Applications
sudo xattr -cr BlackPearlEonBrowser.app

==[edit]

===Using Eon Browser

=[edit]

The Spectralogic User Guide for the Eon Browser is athttps://developer.spectralogic.com/wp-content/uploads/2018/11/90990126_C_BlackPearlEonBrowser-UserGuide.pdf.

Screenshot 2024-01-22 114632.png

Use this information when opening a new session on the archive:

  • Name: Bioarchive
  • Data Path Address: bioarchive.igb.illinois.edu
  • Port: 443
  • Check the box for SSL
  • Access ID: Your S3 Access ID
  • Secret Key: Your S3 Secret Key
  • Check the box for Default Session if you want it to automatically connect to Bioarhive when you open the program.
  • Click Save to save your session settings so that future connections will use the same info.
  • Click Open to open the archive session.

You should see your local computer directories on the lefthand side, and your available buckets on the right. To transfer data, just drag from your local computer directories and drop it in the appropriate bucket. You will see the progress in the bottom of the program window.When transferring a file, it will first go into the cache and then get written to tape. You can see this happening in the Eon Browser by looking at the storage locations column. A purple disk icon shows the data is in cache, and the green tape icon shows that the data is on tape.While transferring a file, the session will not show a complete transfer until all data is written to the tape. This can take some time. Please check the sleep settings on your computer in advance of the transfer, which can get interrupted if your computer goes to sleep. Using an ethernet instead of a wireless connection would also facilitate data transfer.Another way to transfer data from your local system to Bioarchive is to use a command line tool. To do so, download and install the command line tool on your local system: https://developer.spectralogic.com/clients/. The Spectralogic user guide for the command line tool is athttps://developer.spectralogic.com/java-command-line-interface-cli-reference-and-examples/. You may need to reconcile your local computer environment with the tool for this to work. Thus, if you aren’t sure about the difference between the two environments, use Eon Browser. The CNRG would not provide further support.​

Data transfer from Biocluster[edit]

The tool to access Bioarchive is already installed on Biocluster. You will need to load the module.

module load ds3_java_cli

This will add the utilities to your environment. Then, load the program we created to set up the environment variables. Enter your secret key and access key when prompted. All the bold textin commands below denotes items that need to be replaced with information pertinent to you.[]$ archive_environment.py

Directory exists, but file does not Enter S3 Access ID:S3_Access_ID Enter S3 Secret Key:S3_Secret_Key Archive variables already loaded in .bashrc Environment updated for next login. To use new values in this session, please type 'source .archive/credentials'


Be sure to type:

source .archive/credentials

​In all of the following commands below, we are assuming you are using biocluster to do the transfer and have run this program. If this is not the case then you need to include: <brclass="single_linebreak">

-a S3_Access_ID -k S3_Secret_Key -e bioarchive.igb.illinois.edu<brclass="single_linebreak"> On every line immediately after the ds3_java_cli command and before the rest of the commands as shown below.

Limits

Limits

There are not many, but as we find them, they will be placed here

  • You can only put 500,000 objects at a time on the system. If you need up put more than 500,000 files and folders, you will need to split that up between two or more submissions. However this is assuredly a sign that your data needs to be organized better. Please contact us if you run into this issue.
  • You can only put 500,000 objects at a time on the system. If you need up put more than 500,000 files and folders, you will need to split that up between two or more submissions. However this is assuredly a sign that your data needs to be organized better. Please contact us if you run into this issue.

Upload Items in A Directory

ds3_java_cli -b Bucket_Name -c put_bulk -d Directory_Name

  • put_bulk tells the program to upload everything inside the directory given
  • Directory_Name is the directory to upload, note this will upload everything in this directory, not the directory itself

Upload One File

ds3_java_cli -b Bucket_Name -c put_object -o File_Name

  • uploads a single file to the archive
  • uploading a file with -o SomeDirectory/somefile will put the uploaded file in the directory SomeDirectory
  • to put all files in a certain subdirectory, use the prefix option -p path/to/another/directory/

See Files in Archive

ds3_java_cli -b Bucket_Name -c get_bucket

  • This will list all of the files in the archive and the total size of data in the bucket

Download a File From the Archive

ds3_java_cli -b Bucket_Name -c get_object -o File_Name

  • This will download the object named File_Name
  • Note if there are other read or write jobs running on the archive and the file is not in cache, this will appear to hang while it waits for the drives to become available.

Download a Directory From the Archive

ds3_java_cli -b Bucket_Name -c get_bulk

  • This will download all objects in a bucket. Use carefully.
  • You can add -p prefix to restrict which files get restored

List Available Buckets

ds3_java_cli -c get_service

  • Returns a list of buckets that the user has permission to access.

Best Practices for Uploading Data

Create the Environment

First make sure you set up your command line environment properly via the archive_accounting.py script outline above. You can check if this is working by doing a:<brclass="single_linebreak">

ds3_java_cli -c get_service<brclass="single_linebreak"> and making sure that your buckets show.

Upload With a Separate Folder

To upload data, it is best that you have all data in one directory named something like "to_archive" then you can put all of the data you want to upload to the archive in that folder, exactly like you want it to be on the archive. Make sure these files do not already exist in those locations in the archive with either the Eon Browser or the command line tools. When you are ready, then run this command:<brclass="single_linebreak">

ds3_java_cli -b Bucket_Name -c put_bulk -d to_archive<brclass="single_linebreak"> Note that the to_archive folder does not exist in the bucket now. This command moves everything inside of the to_archive folder into the archive, but not the to_archive folder itself.

References