Professional Documents
Culture Documents
Manager /
Data Provisioning 2. Approve the request Sensitive Data Release
System Committee
(Automation of steps 3 to 5)
5. Upload the
generated data 3. Receive the request
User Experience
• ECMWF Copernicus CDS
3. Check the request status and download the data 2. Specify the data options and submit the request
System Overview Shared with ANWIS
User
Fiber
WGDR NWARA
ONU
• Users can
• Browse the data catalog via Web UI.
• Choose a data set in the data catalog and request the data set via Web UI.
• TBD: Auth related functions
Data Storage & Visualization
• It corresponds to the following functions in the ANWIS architecture:
• Data uploading, downloading, subsetting, mapping, visualization
• Admin users can upload geo and non-geo data via Web UI.
• Aquarius Data Extractor can upload geo and non-geo data via Rest API.
• Users can
• Download the uploaded data via Web UI.
• Use the visualization functions of the Web UI.
• Download and visualize the data by using GIS software.
User Data Catalog Data Storage & Data Request Authentication & Admin User Aquarius Data Aquarius
(Browser) Visualization Manager Authorization Extractor Database
User Data Catalog Data Storage & Data Request Authentication & Admin User Custom Script Aquarius
(Browser) Visualization Manager Authorization Database
User Data Catalog Data Storage & Data Request Authentication & Admin User Custom Script Aquarius
(Browser) Visualization Manager Authorization Database
User Data Catalog Data Storage & Data Request Authentication & Admin User Custom Script Aquarius
(Browser) Visualization Manager Authorization Database
Click "Download
Request" Button
in the Data Set
Details Page
Get the Data Request Form for the selected Data Set
UC: Request Data
Display "Accepted"
request status
GeoNode
User Data Catalog Data Storage & Data Request Authentication & Admin User Custom Script Aquarius
(Browser) Visualization Manager Authorization (Browser) Database
the Aquarius
Generated Data
Upload the generated data (GeoNode Web UI)
Update Data Request Status (w/ Fetched GeoNode URL via a "Share" button.)
Notify the Task Completion (w/ GeoNode URL) In this flow the data type can be
anything (e.g. MS Office Document)
Display "Completed"
request status
GeoNode
User Data Catalog Data Storage & Data Request Authentication & Admin User Custom Script Aquarius
(Browser) Visualization Manager Authorization Database
Request Data
Notify new Data Request Generation (Aquarius
REST API)
Generated Data
Upload the generated data (GeoNode REST API)
URL to access the page for the uploaded data (i.e. Layer)
Update the
request in a DB
Notify the Task Completion (w/ GeoNode URL)
Display "Completed"
request status This UC will be implemented in the
2nd phase.
GeoNode
User Data Catalog Data Storage & Data Request Authentication & Admin User Custom Script Aquarius
(Browser) Visualization Manager Authorization Database
User changes a
parameter
GeoNode does not visualize time
series data (e.g. daily precipitation).
To be studied.
Fetch the filtered data according to the set parameter
GeoNode's function
Data Request Manager Details
Data Request Manager Model
• id: Generated unique id assigned to each data request.
• create_time: Date time when the data request was created.
• requester_id: Requester user id.
• status: New / Approved / Rejected
• approval_time: Date time when the data request was approved or rejected.
• approver_id: Approver user id.
• approval_reason: Text to explain why the request was approved or rejected.
• data_id: ID of the data for which the request was issued. (i.e. Layer id or Document id)
• data_parameters: Specific parameters for each data. (e.g. start time, station id)
Data Request Manager REST API
• POST /drm/api/data_requests: Create a Data Request
• Authenticated User
• GET /drm/api/data_requests/{id}: Get a Data Request
• id: Data Request ID
• Authenticated User
• PUT /drm/api/data_requests/{id}: Update a Data Request
• id: Data Request ID
• Admin User
• DELETE /drm/api/data_requests/{id}: Delete a Data Request
• id: Data Request ID
• Admin User
Data Request Manager REST API (contd.)
• GET /drm/api/data_requests: Get Data Requests
• Authenticated User: Return the list of Data Requests for the user
• Admin User: Return the list of Data Requests from all the users (or from a user specified by "user=")
• Query Parameters:
• ordering (string) – Which field to use when ordering the results.
• reverse (string) – True if decending order, False if ascending order. Default: False.
• page (integer) – A page number within the paginated result set.
• page_size (integer) – Number of results to return per page.
• The programmer in the team has an experience in the Django based app
development. GeoNode is also based on Django framework and thus we can
leverage his skill in this project.
Why not other CMS
• Wordpress and Drupal
• Visualization of geo-data is possible by using extensions. However, not as
good as GeoNode does.
• CKAN
• Seems not possible to deliver data only to a single user. CKAN is designed for
open data.
Software Candidates to implement the Data
Request Manager
• OpenCart: Shopping cart program but can be used for this purpose?
• AWS AppSync: GraphQL with DynamoDB backend. Web UI must be developed.
• Any good one?
Open Questions
Option 1 Option 2
Nginx Nginx
Container Container
Option 2: Can the user session be shared between GeoNode and Data Request Manager, and how?