Back Up NASA data to SQL Server through SSIS

Jerod Johnson
Jerod Johnson
Director, Technology Evangelism
Effortlessly backup data to SQL Server by utilizing the CData API Driver for ADO.NET. In this article, we will employ an SSIS workflow to populate a database with NASA data data.

This article illustrates using the NASA ADO.NET Data Provider within a SQL Server SSIS workflow for the direct transfer of NASA data to a Microsoft SQL Server database. It's worth noting that the identical process detailed below is applicable to any CData ADO.NET Data Providers, enabling the direct connection of SQL Server with remote data through SSIS.

  1. Open Visual Studio and create a new Integration Services project.
  2. Add a new Data Flow task from the toolbox onto the Control Flow screen.
  3. In the Data Flow screen, add an ADO.NET Source and an OLE DB Destination from the toolbox.

  4. Add a new connection and select .NET Providers\CData ADO.NET Provider for NASA.
  5. In the connection manager, enter the connection details for NASA data.

    Using API Key Authentication

    Most NASA API endpoints (APOD, NeoWS, DONKI, TechTransfer) require a NASA API key. Register for a free key at https://api.nasa.gov. The default DEMO_KEY provides limited access (30 requests/hour, 50 requests/day); a registered key allows 1,000 requests/hour.

    The following endpoints do not require an API key and work without authentication: EONET (Earth Observatory Natural Event Tracker), EPIC (Earth Polychromatic Imaging Camera), NASA Image and Video Library, and TechPort.

    After obtaining your API key, set the following connection properties:

    • AuthScheme: Set this to APIKey.
    • APIKey: Set this to your NASA API key. Use DEMO_KEY for limited testing.

    Example Connection String

    Profile=C:\profiles\NASA.apip;AuthScheme=APIKey;APIKey=YOUR_NASA_API_KEY
    

    Connecting to NASA

    Once the authentication is configured, you can connect to NASA and query data from any of the available tables such as AstronomyPictureOfDay, NearEarthObjectFeed, EonetEvents, and NasaImageLibrary.

  6. Open the DataReader editor and set the following information:

    • ADO.NET connection manager: In the Connection Managers menu, select the Data Connection you just created.
    • Data access mode: Select 'SQL command'.
    • SQL command text: In the DataReader Source editor, open the Component Properties tab and enter a SELECT command, such as the one below:
      SELECT ,  FROM AstronomyPictureOfDay WHERE StartDate = '2024-01-01'
  7. Close the DataReader editor and drag the arrow below the DataReader Source to connect it to the OLE DB Destination.
  8. Open the OLE DB Destination and enter the following information in the Destination Component Editor.

    • Connection manager: Add a new connection. Enter your server and database information here. In this example, SQLExpress is running on a separate machine.
    • Data access mode: Set your data access mode to "table or view" and select the table or view to populate in your database.
  9. Configure any properties you wish on the Mappings screen.

  10. Close the OLE DB Destination Editor and run the project. After the SSIS task has finished executing, your database will be populated with data obtained from NASA data.

Ready to get started?

Connect to live data from NASA with the API Driver

Connect to NASA