:doc:`MainframeModernization <../../m2>` / Client / get_data_set_details

********************
get_data_set_details
********************



.. py:method:: MainframeModernization.Client.get_data_set_details(**kwargs)

  

  Gets the details of a specific data set.

  

  See also: `AWS API Documentation <https://docs.aws.amazon.com/goto/WebAPI/m2-2021-04-28/GetDataSetDetails>`_  


  **Request Syntax**
  ::

    response = client.get_data_set_details(
        applicationId='string',
        dataSetName='string'
    )
    
  :type applicationId: string
  :param applicationId: **[REQUIRED]** 

    The unique identifier of the application that this data set is associated with.

    

  
  :type dataSetName: string
  :param dataSetName: **[REQUIRED]** 

    The name of the data set.

    

  
  
  :rtype: dict
  :returns: 
    
    **Response Syntax**

    
    ::

      {
          'blocksize': 123,
          'creationTime': datetime(2015, 1, 1),
          'dataSetName': 'string',
          'dataSetOrg': {
              'gdg': {
                  'limit': 123,
                  'rollDisposition': 'string'
              },
              'po': {
                  'encoding': 'string',
                  'format': 'string'
              },
              'ps': {
                  'encoding': 'string',
                  'format': 'string'
              },
              'vsam': {
                  'alternateKeys': [
                      {
                          'allowDuplicates': True|False,
                          'length': 123,
                          'name': 'string',
                          'offset': 123
                      },
                  ],
                  'cacheAtStartup': True|False,
                  'compressed': True|False,
                  'encoding': 'string',
                  'primaryKey': {
                      'length': 123,
                      'name': 'string',
                      'offset': 123
                  },
                  'recordFormat': 'string'
              }
          },
          'fileSize': 123,
          'lastReferencedTime': datetime(2015, 1, 1),
          'lastUpdatedTime': datetime(2015, 1, 1),
          'location': 'string',
          'recordLength': 123
      }
      
    **Response Structure**

    

    - *(dict) --* 
      

      - **blocksize** *(integer) --* 

        The size of the block on disk.

        
      

      - **creationTime** *(datetime) --* 

        The timestamp when the data set was created.

        
      

      - **dataSetName** *(string) --* 

        The name of the data set.

        
      

      - **dataSetOrg** *(dict) --* 

        The type of data set. The only supported value is VSAM.

        .. note::    This is a Tagged Union structure. Only one of the     following top level keys will be set: ``gdg``, ``po``, ``ps``, ``vsam``.     If a client receives an unknown member it will     set ``SDK_UNKNOWN_MEMBER`` as the top level key,     which maps to the name or tag of the unknown     member. The structure of ``SDK_UNKNOWN_MEMBER`` is     as follows::

                'SDK_UNKNOWN_MEMBER': {'name': 'UnknownMemberName'}


      
        

        - **gdg** *(dict) --* 

          The generation data group of the data set.

          
          

          - **limit** *(integer) --* 

            The maximum number of generation data sets, up to 255, in a GDG.

            
          

          - **rollDisposition** *(string) --* 

            The disposition of the data set in the catalog.

            
      
        

        - **po** *(dict) --* 

          The details of a PO type data set.

          
          

          - **encoding** *(string) --* 

            The character set encoding of the data set.

            
          

          - **format** *(string) --* 

            The format of the data set records.

            
      
        

        - **ps** *(dict) --* 

          The details of a PS type data set.

          
          

          - **encoding** *(string) --* 

            The character set encoding of the data set.

            
          

          - **format** *(string) --* 

            The format of the data set records.

            
      
        

        - **vsam** *(dict) --* 

          The details of a VSAM data set.

          
          

          - **alternateKeys** *(list) --* 

            The alternate key definitions, if any. A legacy dataset might not have any alternate key defined, but if those alternate keys definitions exist, provide them as some applications will make use of them.

            
            

            - *(dict) --* 

              Defines an alternate key. This value is optional. A legacy data set might not have any alternate key defined but if those alternate keys definitions exist, provide them, as some applications will make use of them.

              
              

              - **allowDuplicates** *(boolean) --* 

                Indicates whether the alternate key values are supposed to be unique for the given data set.

                
              

              - **length** *(integer) --* 

                A strictly positive integer value representing the length of the alternate key.

                
              

              - **name** *(string) --* 

                The name of the alternate key.

                
              

              - **offset** *(integer) --* 

                A positive integer value representing the offset to mark the start of the alternate key part in the record byte array.

                
          
        
          

          - **cacheAtStartup** *(boolean) --* 

            If set to True, enforces loading the data set into cache before it’s used by the application.

            
          

          - **compressed** *(boolean) --* 

            Indicates whether indexes for this dataset are stored as compressed values. If you have a large data set (typically > 100 Mb), consider setting this flag to True.

            
          

          - **encoding** *(string) --* 

            The character set used by the data set. Can be ASCII, EBCDIC, or unknown.

            
          

          - **primaryKey** *(dict) --* 

            The primary key of the data set.

            
            

            - **length** *(integer) --* 

              A strictly positive integer value representing the length of the primary key.

              
            

            - **name** *(string) --* 

              A name for the Primary Key.

              
            

            - **offset** *(integer) --* 

              A positive integer value representing the offset to mark the start of the primary key in the record byte array.

              
        
          

          - **recordFormat** *(string) --* 

            The record format of the data set.

            
      
    
      

      - **fileSize** *(integer) --* 

        File size of the dataset.

        
      

      - **lastReferencedTime** *(datetime) --* 

        The last time the data set was referenced.

        
      

      - **lastUpdatedTime** *(datetime) --* 

        The last time the data set was updated.

        
      

      - **location** *(string) --* 

        The location where the data set is stored.

        
      

      - **recordLength** *(integer) --* 

        The length of records in the data set.

        
  
  **Exceptions**
  
  *   :py:class:`MainframeModernization.Client.exceptions.ResourceNotFoundException`

  
  *   :py:class:`MainframeModernization.Client.exceptions.ExecutionTimeoutException`

  
  *   :py:class:`MainframeModernization.Client.exceptions.ServiceUnavailableException`

  
  *   :py:class:`MainframeModernization.Client.exceptions.ThrottlingException`

  
  *   :py:class:`MainframeModernization.Client.exceptions.AccessDeniedException`

  
  *   :py:class:`MainframeModernization.Client.exceptions.ConflictException`

  
  *   :py:class:`MainframeModernization.Client.exceptions.ValidationException`

  
  *   :py:class:`MainframeModernization.Client.exceptions.InternalServerException`

  