Batch Import/Export/Restore/Archive Senior Consultant 1 Introduction The Blackboard Learning System consists of two main system components: The Application Server, and the Database Server. In smaller systems, one physical server may house both of these subsystems, and in larger systems, there may be multiple servers and/or load balancing. Regardless of the size of the installation, Blackboard courses consist of content on the application servers as well as content in the database 2 Breakdown: Application Server – Any uploaded content (files) is housed in a unique folder named by course id in a path like this: • D:\bb_content\vi\bb_bb60\courses\1\BIOLOGY102_FALL_05 – Each time files are uploaded into any area of a course, a new folder is created inside the course folder with a random number: • D:\bb_content\vi\bb_bb60\courses\1\BIOLOGY102_FALL_05\cont ent\_570_1 Database – All settings, configuration options and content directly entered into the GUI (typed content in the WSISYG editor) button and folder names, assessment questions, etc.) – Courses are housed in the BB_BB60 database instance 3 System Backup Most institutions maintain a “Disaster Recovery” strategy. This usually involves a combination of full and incremental backups on all application and database servers. While disaster backup is essential, the need to recover individual courses (as opposed to the entire system), this backup scheme does not lend itself to the recovery of individual courses. Blackboard provides two options for course specific backups: – Course Archives – Course Exports 4 Which is Which? – Course Archives • A zip file that contains all course components including all student accounts, data and grades. Intended for complete course recovery and record retention. – Note: If the archived users don’t exist on the destination installation, the archive restoration process will create the users. – Note: Only System Administrators can restore courses – Course Exports • A zip file that only contains instructor added content – no student data is included. Intended for use in course re-use (from semester to semester), course blending (adding content from one course to another) or course transport (moving a course from one server to another) – Note: Instructors can restore exports into their existing courses 5 Things to Remember If you want to bring an ARCHIVE back into the system, you must use the RESTORE tool If you want to bring an EXPORT back into the system, you must use the IMPORT tool The RESTORE process will create a new course on the system, and that new course must be restored to a unique course ID The IMPORT process can be used to create a new course, or to blend course material from the export into an existing course on the system 6 Individual Course Backups Strategies Many institutions encourage their instructors to maintain current backups of all of their courses. Instructors can perform both archives and exports via the control panels of their courses Administrators can also individually archive and export courses from the system administration panel. However, this requires the administrator to search and archive/export each individual course. Many institutions want to automate the system of creating and maintaining course exports and archives, and perform them in batch processes. 7 Automating the Batch Archive/Export Process There is a command-line tool that will allow you to perform the following tasks: – – – – Batch Import Batch Export Batch Archive Batch Restore Using this tool requires back-end access to the Blackboard installation subdirectories on an application server The tool utilizes parameter switches and a feed file to automate the tasks listed above in an unattended sequential process 8 Obtaining Course IDs If you are performing Batch Export or Batch Archive (dealing with courses that are already installed on the system), you will need a list of the Course Id’s. The easiest way to retrieve a list of CourseIDs (without manually typing the list), is to access the COURSE_MAIN table in the BB_BB60 database instance. Notice the SQL Enterprise Manager example below: 9 Obtaining Course IDs The COURSE_MAIN table contains a column named COURSE_ID. This column contains all of the Course ID’s on the system This column can be exported to Excel or a text file. The COURSE_ID’s can also be exported using the SQL commands in Oracle. The list of CourseID’s then needs to be filtered (usually by semester or some other grouping) for the Archive or Export process 10 Creating the Feed File for Archive/Export The Batch Archive/Export process uses the same feed file. The feed file must contain two things: – The CourseID – The path where you want the Archive or Export to be stored 11 Running the Tool The tool can be found in: blackboard\apps\contentexchange\bin\batch_ImportExport The parameters that you include on the command line will determine what the tool does The parameters are as follows: -f batch File The batch file that describes the courses that should be operated upon as well as the location of files to use. The meanings of these values change based upon the type of operation being performed. -l delimiter The delimiter that is used to separate the values in the provided batch file. This value can be 1, 2, or 3 (1 = , 2 = ; 3 = tab) -t operation The type of action to perform (must be import, export, restore, or import/restore - the course id of the target course and the archive). path to the package file to use for the operation. -n hostname (optional) export/archive - the course id of the course to operate on The hostname of virtual installation against which the (the course operation should must already exist) and the path to the directory into be performed. If this option is not provided, the default which the virtual host resulting package file should be placed. will be used. Please see the Blackboard Administrator Guide for more information regarding the expected format of this file. 12 Sample Command Line Here is the actual MS-DOS command used (as text): D:\blackboard\apps\contentexchange\bin>batch_ImportExport.bat -f D:\archives\feed.txt -l 1 -t archive D:\blackboard\apps\content-exchange\bin Note: Be sure that no hard returns are in the command line path 13 What about Import/Restore? This process is run in much the same way The parameters must reflect import/restore instead of archive/export The feed file specifies the location of the exported package or archive as well as the desired course ID for the newly restored/imported course 14 Is that all? There are some other useful information resources to learn more about this tool – – – – 15 Bb Admin Users Manual Readme located in same directory as tool Users Forums Behind the Blackboard