Towards NoSQL-based Data Warehouse Solution Integrating ECDIS for Maritime Navigation Decision Support System

it a continuous analysis of huge of Much of this has spatial and properties. Besides, the analysis to Generally, the analysis is applied with Spatial On-Line Analytical Processing (SOLAP) basing on spatial data warehouses SDW. Data warehousing by current technologies with relational database management systems (RDBMS) cannot be applied effectively to manage the increasing complexity and volume of geo-referenced data. To increase the performance and availability of services, NoSQL databases technologies have appeared. This paper presents the modeling and the realization of a spatial decision support system (SDSS) for maritime navigation namely “Maritima”, basing on the integration of the ECDIS and OLAP systems. Indeed, the spatio-multidimensional analysis of the stored data can benefit from the expressive power of the electronic navigation chart offered by the ECDIS system. To benefit from the NoSQL model advantages, we try to apply transformations for the conceptual model to create a document NoSQL DW for maritime data. In addition to that, the multidimensional analysis at different dimensions and aggregation levels can generate beneficial indicators for the decision aid and can be very useful besides other steering systems for secure maritime navigation. Finally, “Maritima” is tested with a set of spatial data related to two different harbors “Arzew” and “Oran” in relationship, and property. Each node has properties. Relationships connect nodes and possibly have properties. This sort of approach facilitates navigational queries between nodes by following the relationships between them. [47].


Introduction
The safety of shipping with minimal costs is the main problem of shipping for all companies around the world. This explains the complexity of the navigation process, which requires a continuous analysis of huge amounts of multisource information.
Nowadays, human errors are more and more responsible for accidents in marine navigation [1]. Taking into account all the decision support parameters in such a system will allow the number of ship accidents to be reduced. This will contribute to the protection of human life, the transported goods, and the marine ecological environment.
The role of the decision support system (DSS) is to help to choose the right maneuver that does not lead to an accident. Besides, this maneuver will allow benefiting from the optimal conditions of the trajectory.
Geographical information is the representation of an object or a phenomenon a real or imaginary, located in space at a given moment. The Geographic Information System (GIS) is a technology that allows the manipulation of geographic information at different levels of detail. GIS allows the user entering, managing, manipulating, analyzing and displaying geographically referenced data. GIS allows synthesizing huge amounts of different data in different layers to manage and extract useful information. This helps to answer questions and make better decisions to implement planning for different activities.
Furthermore, spatial data warehouses and spatial OLAP systems are decision support systems that enable the spatial and multidimensional analysis of large volumes of spatial and non-spatial data. SOLAP technology offers users a very intuitive client interface for spatio-temporal analysis. However, its operation did not allow quickly adding new data obtained from GPS observations. Safety is indisputable anxiety of shipping, considering the constant growth of maritime traffic. This has made it necessary to develop monitoring systems such as the Electronic Chart Display and Information System (ECDIS), which provide continuously the position of ships and various maritime safety data.
However, there will still be a need to develop solutions and advanced decision support that will benefit from GIS and on-line analysis.
In this work, we propose a solution that allows the integration of geo-localization technologies including GIS, ECDIS, and on-line data analysis on the one hand, and other systems installed onboard and at ground control stations on the other hand.
This integration will help for realizing the spatial decision support system (SDSS) for maritime navigation namely "Maritima". In fact, the spatio-multidimensional analysis of the information at different dimensions and aggregation levels allows benefiting from the expressive power of the electronic navigation chart offered by the ECDIS system. This enables generating beneficial indicators for the decision-aid and may be very useful in addition to other steering systems for secure maritime navigation.
Several authors proposed Unified Modeling Language (UML)-based models for the conceptual modeling of such applications. Within the literature, for the conceptual modeling, different authors have proposed models that supported UML. This because it allows representing static and dynamic aspects with powerful components and tools. Also, we can easily extend UML using profiles for handling specific complex aspects of applications namely spatial data warehousing and decision support systems (DSS) [11,15].
We propose a conceptual model for spatial data cubes supported UML and its extension "UML-profile". This profile has been implemented with the UML-based tool called Papyrus.
In the area of maritime management, the amount of information is increasing rapidly. Indeed, huge amounts of data that reach petabytes of storage are stored and processed daily. The employment of relational databases becomes difficult and mediocre within the processing of the data exchanged. Additionally, decision support systems must not only have an outsized storage capacity but must also respond correctly and quickly to different cases.
For this purpose, the power to respond to complex queries promptly represents the most criteria in choosing the NoSQL model. Indeed, for profiting from the benefits of the NoSQL model, the objective of this paper is to apply different transformations to the relational model for the creation and implementation of NoSQL DW for maritime data. The "Maritima" system we developed is experimented with two different case studies and tested with a set of spatial data related to "Arzew" and "Oran" harbors in western Algeria. Finally, results are discussed. This paper is organized as follows. In Section 2, we present a state of art. In Section 3, we present the most concepts of OLAP and Spatial OLAP. In section 4, we present NoSQL databases. An outline of the spatial decision support system "Maritima" is presented in Section 5. Multidimensional modeling of the maritime spatial data warehouse is presented in Section 6. Our tool for maritime navigation is implemented and discussed in Section 8. In Section 9, conclusions and future work are outlined.

State of the art
Decision support is usually solicited by organizations when they face different issues, such as location, allocation and management of resources, choice, and evaluation, and so on. A decision support process is comprised of the analyst and the decision-making process that aims to address the concerns related to this issue [2].
The role of the decision support system for maritime navigation is to help the entire team concerned by this mission to choose the anti-collision maneuver, which offers a better trajectory either at ports or in the open sea.
In [3] the author develops a system allowing the transmission of navigation data from the radar system. For this aim, the author uses the dynamic programming algorithm to determine the optimal safe trajectory of the ship. In [4], the author discusses the role of geoinformatics in maritime transport. Indeed, he considers it a new independent scientific discipline whose purpose is to process geospatial information. The authors in [5] present a prototype of a decision support system for operational ship routing using meteo-oceanographic fields as a function of time. In [6], the author describes the tasks of the Intelligent Maritime Transport System, as well as the place and functions of decision support systems for navigation. In addition to the information functions, these systems include the task of identifying hazards related to the movement of ships. In [7], the authors present a decision support system for navigation on board a seagoing vessel. They have highlighted the functionality of this system in the hope that it can contribute to navigation safety.
Authors in [8] propose a GIS system for maritime navigation safety. Their system aims at tackling the main cause of marine accidents, namely human errors, by providing navigational aid and decision support to mariners. In [9], an onboard decision support system to support ship operation is developed by the authors.
Several authors proposed solutions for the safety of maritime navigation. However, to the best of our knowledge, none of them had referred to the spatial and multidimensional analysis of the huge amount of big data stored. Indeed, we see that the multidimensional analysis at different axes and aggregation levels can generate indicators for the decision-aid. Indeed, it can be very useful, besides other steering systems for secure maritime shipping.
On the other hand, Data Warehousing and OLAP on Big Data are becoming one of the emerging challenges for the research of the next generations. We present in the following a set of works on NoSQL modeling: Authors in [52] addressed current research issues and trends in Data Warehousing and OLAP on Big Data. In [51], the authors propose new rules to transform a multidimensional conceptual model into two NoSQL models: column-oriented and document models. In [54], the authors propose a database design and modeling methodology for NoSQL systems. The author in [55] explains how to build OLAP cubes from data warehouses with the NoSQL columnar model. The authors in [56,57] propose a NoSQL Implementation of a multidimensional database.
Basing on the above, our proposal is based on the integration of geo-localization technologies (GIS), the electronic navigation chart (ECDIS), and Spatial On-Line Analytical Processing (SOLAP). This is for the multidimensional analysis of data into a Spatial Decision Support System (SDSS) for secure maritime navigation. We propose also, a mapping of the multidimensional model into a document NoSQL model.

Main concepts of OLAP and spatial OLAP
Data warehouses (DW) and On-Line Analytical Processing (OLAP) are systems that allow analyzing large amounts of data and allow decision-makers to have a global and detailed view of their activities.
OLAP is a collection of tools for multidimensional analysis and rapid data exploration at multiple levels of aggregation [10]. OLAP systems allow decision-makers to manipulate data in a Data warehouse (DW) by specifying the analysis dimensions, hierarchies, and the subject of the analysis.
The use of operations, such as roll-up and drill-down, allows obtaining a general view and detailed view of the data stored in the DW, while the Slice operation allows the user to choose a subset of members across all dimensions.
As shown in Fig.1, The architecture of a Decisional Support System (DSS) is typically composed of the following parts namely: data sources, ETL, data warehouse, OLAP server, and OLAP client [11]: 1. Data sources: They can be of various types, such as OLTP databases, XML files, Excel files ... etc. 2. ETL tools: They are a class of tools that specialize in homogenization, cleaning, and loading data on the warehouse. The essential tasks of an ETL are Extraction, Transformation, and loading. 3. The Data Warehouse (DW) part: This part includes the data warehouse, metadata, as well as any data stores (Datamarts). A data warehouse can be defined as a collection of thematic, integrated, non-volatile, and historical data use for decision-making [12].

The OLAP server:
The OLAP server enables analyzing data basing on the multidimensional model. It provides OLAP operators, which allow decision-makers to have a multidimensional view of information.

The OLAP client:
The OLAP client must provide an intuitive and interactive interface that allows for multidimensional data exploration using OLAP operators in a simple manner.
In another hand, cartographic visualization provides significant benefits in analysis for decision-making. As a result, Spatial OLAP (SOLAP) is defined by Bédard [13] as "a platform for supporting fast and efficient spatio multidimensional analysis through modeling that integrates cartographic, graphical and tabular aggregation levels".
Indeed, cartographic visualization makes it possible to understand the distribution of a phenomenon over a geographical area in a multidimensional context.

Multidimensional modeling
Multidimensional Modeling according to Teste [14] consists of considering a subject analyzed as a point in a space with several dimensions. The data are organized in such a way as to highlight the analyzed subject and the different perspectives of the analysis.
The goal of multi-dimensional modeling is to enable analysts to have a view of the data that supports and helps their decision-making process. The data is then stored in a multidimensional structure. At the intersection of several dimensions, there are values named indicators or variables. These values are calculated by the OLAP engine through more or less complex mathematical or statistical operations.
We can distinguish different types of multidimensional modeling. It can be conceptual, logical, or physical [15].

1) Conceptual modeling
Conceptual modeling refers to the concepts defined by the authors in [16] and used in different types of data schemas [17]. A set of concepts are used to design a multidimensional data model. In the literature, some authors propose other definitions [18]. They are related to fact, measure, dimension, aggregation of measures, hierarchies, data cube …etc.
The above-mentioned concepts can be represented using different schemas namely: star, snowflake, constellation, and mixed [19]. Fig. 5 illustrates the constellation schema for the Spatial Data Warehouse of the current study. It is composed of two fact tables sharing a set of dimensions.

2) Logical modeling
Logical modeling represents the technique of physical data storage according to the database management system (DBMS) used which gives rise to three logical models [21]: In this type of implementation, a Relational Database Management System (RDBMS) is used for data storage. The ROLAP server simulates the multidimensional view and communicates between the RDBMS and the OLAP client tools. The ROLAP architecture allows great flexibility in managing large volumes of data and better data administration.

b) Multidimensional OLAP (MOLAP)
In this type of implementation, a native Multidimensional Database Management System (DBMS) is used. In this case, the decision data are maintained in multidimensional structures. The cells of the different data cubes (hypercubes) are pre-calculated from the DW or source bases and stored in these structures. As a result, OLAP operators can explore these cells in a simple and fast way. The MOLAP architecture offers less performance than the previous one concerning the data administration because of the precalculation of the cells.

c) Hybrid OLAP (HOLAP)
This type of implementation combines both ROLAP and MOLAP technologies. Indeed, some of the data that users access most frequently is stored in multidimensional structures managed by a DBMS. Another part is stored in relational structures managed by an RDBMS. HOLAP systems offer a compromise of the advantages and disadvantages of ROLAP and MOLAP systems.

3) Physical modeling
After having carried out the first two conceptual and logical modeling, we must proceed to the physical modeling of the DW. The purpose of this phase is to apply adequate techniques efficiently to store data for fast access. This corresponds to the translation of the logic model into the language of the implementation platform (eg Oracle, MS SQLServer, etc.), [22]. Then, optimization techniques can be applied to optimize performance [15]:

Spatial-multidimensional modeling
Spatial-multidimensional modeling is an extension of the multidimensional modeling used for data warehouses and OLAP. This enriches the concepts of the multidimensional model with spatial concepts such as spatial dimensions, spatial measures, etc.
⎯ Spatial measure: A spatial measure is a measure whose data type is geometric and/or numeric. For example, the area of a burned forest area, the circumference of a protected forest area, the distance between spatial regions, etc. ⎯ Level of spatial aggregation: A spatial aggregation level is an aggregate level representing a set of members. They have spatial attributes that allow them to represent the data in cartographic form. [23], [24]. ⎯ Spatial dimension: The spatial dimension is a dimension, which can have one level of spatial aggregation at least. It makes it possible to represent the spatial information of the facts in axes of analysis.
[25] ⎯ Hierarchy of spatial dimension: A spatial dimension hierarchy is defined as a hierarchy that contains at least one level of spatial aggregation [15]. ⎯ Spatial fact: A spatial fact is defined as a fact containing at least one spatial measure or a level of spatial aggregation. [26]. ⎯ Spatial hypercube: A spatial hypercube (or data cube) can be defined as a hypercube with at least one spatial or spatial dimension. [

26] ⎯ Spatial Data Warehouse (EDS): A Spatial Data
Warehouse can be defined as a multidimensional model which can contain one spatial hypercube at least, [15]; ⎯ SOLAP navigation operators: These operators are the extension of the OLAP operators. They enable exploring the hypercubes with spatial data. [25]: a) Spatial Roll-up: This operator is used for navigation in a dimension hierarchy from one level of spatial aggregation to another less detailed one. b) Spatial Drill-down: This operator is used for navigation in a dimension hierarchy from one level of spatial aggregation to another more detailed one. c) Spatial Slice: this operator is used to select a subset of the cells of the spatial hypercube by applying a spatial predicate on the members of a spatial dimension. d) Spatial Dice: this operator is used for the selection of a subset of data by the application of spatial predicates to spatial members of several spatial dimensions. [15] 4 Nosql databases NoSQL databases are characterized by flexibility in data storage and handling, performance improvements, and greater scalability. Among the numerous capabilities of NoSQL databases, there is the management of enormous non-relational and unstructured data flows, fast data access speeds, data availability. However, such plenty of various options, choosing the proper NoSQL database is difficult.

NoSQL database categories
In general, the foremost important factors to remain in mind are: 1) Key-Value: The key-value is that the most intuitive NoSQL data store. Each item within the database is stored as a key-value pair, sort of a standard dictionary.
A key is usually a unique value that points to the data associated with it. The value is often any object like string, number, date, array, etc. [44] 2) Document store: The document store requires that its value to be structured and encoded (XML, JSON, and BSON). For spatial data, GeoJSON is well accepted. MongoDB and Apache CouchDB are samples of this category. [45] 3) Column-oriented: A column-oriented database is often a group of tables that are defined line by line, but whose physical storage is organized vertically by a group of columns, called "families of columns". A column family can contain an awfully sizable amount of columns [46]. 4) Graph-oriented: The graph-oriented model relies on three concepts including node, relationship, and property. Each node has properties. Relationships connect nodes and possibly have properties. This sort of approach facilitates navigational queries between nodes by following the relationships between them. [47].

Spatial data in NoSQL databases
Spatial data are often manipulated with many NoSQL databases like Casandra, MongoDB CouchDB, etc. In the literature, the utilization of NoSQL databases in GIS is increasing. In fact, performance is tested and new architectures are developed for NoSQL spatial databases.
In [48], the authors examined MongoDB's capability for storing sensor data. They found that MongoDB has the most effective performance for single database operations after comparing with Postgres. In [49], the authors designed HBase Spatial, a solution built on a NoSQL database. In [50], the authors created HGrid a data model directed for huge amount of geospatial data. Different studies consider that there are advantages of using NoSQL databases to manage the challenges typical of big data. This because of the huge amount of data being gathered every moment related to locations from GPS (Global Positioning System) and mobile devices …etc. Additionally to the volume, there is also variety, which is the structure of the data collected in different structures. Thanks to the schema-less nature of NoSQL databases, different spatial data formats are enabled. We need Velocity also when processing or querying spatial data for applying predictive algorithms in real-time.
Generally, a NoSQL database may be a better solution to big data, which needs high scalability, high flexibility, and high-performance characteristics.

NoSQL data warehouse
In literature, research geared toward implementing multidimensional models of the conceptual level using NoSQL models may be classified into two categories: 1) The first category consists of translating multidimensional diagrams indirectly. The process reuses the conceptual translation rules to ROLAP then is extended by new rules allowing a transition from the intermediate ROLAP model to the target NoSQL model. The goal is to provide a storage scheme to avoid the use of joins for which NoSQL systems are poorly suited.
2) The second category consists of translating multidimensional schemas directly from the conceptual level to the target NoSQL model. Column and document-oriented models are used as an alternative to the relational model to build multidimensional data warehouses. Column-oriented storage is generally based on the HBase DBMS, which can manage large volumes of data in a distributed environment. The second approach, based on the document-oriented model, often uses the MongoDB system.
In the current study, we apply transformation rules allowing passing directly from a multidimensional conceptual model, which is Snowflake schema to a NoSQL logical model, which is a document-oriented model.

Description of the spatial decision support system "Maritima"
A Spatial Decision Support System (SDSS) can be defined as an interactive system that allows assisting the decisionmaking process. It is developed to solve problems with a spatial database or when the solution will have a spatial dimension. The SDSS we propose, namely "Maritima", is based on the determination of the role of SOLAP and electronic chart in a decision support process for secure maritime navigation as shown in Fig. 2.
The development of the spatial decision support system "Maritima" results from the combination of three subsystems, namely: Marin-SOLAP Subsystem, ECDIS subsystem, and On-board visualization subsystem.
These subsystems are related through the communication system represented by the Electronic Navigation (E-NAV) system, which is based on the interconnection of ships and coastal installations by highspeed data links, to guarantee the safety of navigation, especially in coastal areas.
E-NAV provides the mariner on board the ship and officials in the harbors, high-speed data, and updated information in real-time.

1) Marin-SOLAP Subsystem
The Marin-SOLAP Subsystem includes a spatial data warehouse (SDW) containing all conventional and spatial data related to maritime navigation. Data sources come from the operational process, the geographic database for GIS applications, and other sources such as remote sensing. The ETL process is applied for extracting, transforming, and loading data into the SDW. The SOLAP application uses the SDW for making multidimensional analysis. Our work focuses on the modeling and implementation of the Marin-SOLAP Subsystem [53].

2) ECDIS subsystem
Thanks to the ECDIS subsystem coupled with the Global Positioning System (GPS), it is possible to display the position of a ship and various maritime safety information instantaneously with the superposition of an electronic chart.

3) Onboard visualization subsystem
The Onboard visualization subsystem is a humanmachine interface primarily used by the ship captain and ground station controllers for the introduction of MDX queries and electronic chart. Results are then coming from the Marin-SOLAP subsystem and the ECDIS subsystem; and have a tabular, graphic, and cartographic display. This manipulation is automated thanks to the graphical interface developed for this aim.

Multidimensional modeling of the maritime spatial data warehouse
SDW modeling relies on the extension of UML for Multidimensional (MD) modeling. This enables the outline of all Multidimensional concepts that our approach includes just like the facts tables, dimensions and hierarchy levels …etc. [26], [28]. During this section, we describe a way to create the relational model for OLAP,   and then we apply transformation rules to get the document-oriented NoSQL model.

UML profile for spatial data cubes
The use of UML for MD modeling will be achieved by extending it with a profile to suit specific platforms or domains. This method allows customizing UML metaclasses with three mechanisms: stereotypes, tagged values, and constraints [29]. The OCL (Object Constraint Language) will be used for formalizing constraints that may refine the definitions of stereotypes and tagged values [30].
In our proposal, the essential SDW model is tailored from that presented by the authors in [31] and [32]. It allows the representation of the main static concepts of the SDW. We suggest it is complete and clear. The UML profile we propose is based on the extension of four metaclasses: Model, package, class and property as shown in Fig. 3. However, unlike the standard OLAP world, the Unified Dimensional Model (UDM) 1 allows to form multiple fact tables during a cube [33]. Therefore, basing on this principle, we propose that the cardinality within the composition relationship between the stereotype of the hypercube package and that of the facts class are going to be "one to many", as depicted in Fig. 3. [32].
In addition to the composition relation between hypercube and dimension stereotypes, an association between facts table and dimension stereotypes is proposed, because a hypercube (data cube) can contain several fact tables. Therefore, we will define which facts table will concern which dimensions of the identical hypercube. In addition, an association relationship is formed between the facts stereotypes and AggLevel to 1 The model for data in a Microsoft SQL Server Analysis Services (SSAS). 2 open-source UML 2 tool based on Eclipse and licensed under The Eclipse Public License (EPL) facilitate dimensioning. Measures are two types: spatial and thematic. The latter will be textual or numeric. [31].
To define which aggregation function is applicable during which hierarchy, an association relationship is formed between measure and hierarchy stereotypes [32].
To avoid incorrect modeling in our proposal, an OCL constraint is defined within the hypercube stereotype context. This can consider that a spatial hypercube will contain one spatial dimension at least, and one spatial measure within every fact table at least (see Fig. 4). Indeed, we think we must perform spatial analysis with each spatial measure, such as the location, the area, etc.
For the profile implementation, we use Papyrus 2 , the UML-based tool, when the constraints are verified by USE 3 at the conceptual abstraction level to avoid incorrect modeling.
Constellation schema for the maritime SDW We implement the SDW which allows answering all questions related to the harbor, ships, and all other maritime data. We need the modeling of all measures and dimensions required in the MD analysis process. We must take into account the modeling of the hierarchies used for data aggregations [34]. To select the dimensions and measures based on the collected data, we must take into account the objectives of the maritime data analysis: 1) Dimensions: the facts are analyzed according to a set of dimensions describing three categories: ⎯ Temporal dimension: we need a time dimension is required to perform a monthly, quarterly, or annual analysis. ⎯ Spatial dimensions: We use the spatial dimension, which is related to the position of the ship, a portion of the trajectory, and the trajectory entirely. ⎯ Thematic dimensions: These dimensions are numerous and are related to business processes. They can be related to the ship type, incident type…etc. Fig. 5 shows the dimensions of the maritime SDW. The dimensions are organized at several aggregation levels. They are formed by grouping the attributes of dimensions into disjoint subsets. This will be relating to the requirements of the analysis [31].
For example, the spatial dimension consists of a hierarchy composed of three levels of aggregation One_position, a portion of trajectory, and All_trajectory.
In another hand, we use the temporal dimension with three levels: month, quarter, and year.
2) Measures: They are based on questions to be formulated by the Captain of the ship, On-board Analyst, or Ground station controllers. They can be numerical or spatial.
In our case studies, Onboard Analyst and Ground station controllers are interested in analyzing two aspects of their work, namely: Incidents and Best_Choices. These aspects are defined using a hypercube with two fact tables sharing some dimension tables, which allows drawing the constellation schema.
The SDW for the maritime navigation class diagram is presented in Fig. 5. It is considered spatial because it includes at least one spatial measure in addition to the spatial dimension. The "Incident" fact table is described using three measures, one is spatial "affected_surface" and two are numeric "Nbr_Incident" and "Financial_Vol_Loss". The facts of "Best_Choice" are described using two numerical measures Nbr_BestChoice and Financial_Vol_Saved, in addition to a spatial measure "Saved_surface".

Transformation rules for documentoriented NoSQL
In this section, we use the transformation rules to NoSQL DWs defined in [51] since its completeness. Our choice is to use simple transformations since we have not hierarchies. This type of transformation uses different collections for storing facts and dimensions; and uses the simple documents for representing measure and the composed attributes for representing dimension attributes.
So during this transformation, we transform the multidimensional schema MS to a documents collection where the collection is named after the multidimensional schema. Also, we transform each fact table to a document that is named after the fact name; and that we transform each measure and identifier of the related dimensions to a simple attribute. Then, each dimension is transformed into a document and it'll have an identical name; and every attribute of dimension is transformed to a simple attribute with the same name.
In Fig.6, these rules are depicted. Implementation and results discussion

Implementation
For the implementation of the solution, we propose two solutions namely: i) with RDBMS and ii) with document NoSQL solution.

1) RDBMS Implementation Environment
After we define the SDW model, we process its implementation. We use Relational OLAP architecture composed of a relational database management system (MS SQL Server 4 ) for the database creation; and the SQL Server Analysis Service (SSAS) which provides OLAP operators such as Roll up, Drill down, Slice, Dice, etc. ArcGIS 5 software is used for preparing information layers and applying spatial analysis.
The relational OLAP architecture is composed of four tiers: i) Extract-Transform-Load tier (ETL), ii) data storage tier, iii) OLAP server and iv) OLAP client. However, the ETL techniques used in this phase are beyond the scope of this paper.
We create the project (Multidimensional Project_maritim) with Microsoft Visual Studio6 as shown in Fig. 7. Once created, the data cube Maritime_Navigation can be visualized and tested with SQL Server Management Studio.

2) NoSQL DW Implementation Environment
For implementing the document-oriented DW, our choice is oriented towards MongoDB because it is the fastest-growing database. It enables dividing data into collections. MongoDB provides a rich document-oriented structure and allows dynamic queries. MongoDB is, also characterized by its aggregation engine. Another significant advantage is the integration of a "geospatial data manipulation engine".
Therefore, based on the "Transformation Rules for document-oriented NoSQL" explained above, we create then the document NoSQL collections with Robomongo 7 as depicted in Fig.8. It will be connected to JAVA Eclipse to be used with the SOLAP solution.
We develop the SOLAP client namely "Marina" with JAVA Eclipse, the object-oriented programming language. Indeed, thanks to the integration of ArcGIS RunTime SDK (Software Development Kit) the solution provides cartographic synchronization with tabular and diagram displays as shown in Fig. 11 and Fig. 12.
In what follows, we test "Maritima", the system for maritime navigation in our proposal, with a dataset concerning "Arzew" and "Oran" harbors located in northwestern Algeria. Arzew is one of the most important petrochemical areas of Algeria. Its industrial zone covers a total area of 961.69 ha, allowing the establishment of several production units and oil services units such as: Refinery, Gas and Chemical.

Case study 1: "Arzew" harbor
The Arzew harbor is mainly used for the transport of petrochemical products. We have chosen this port for a first case study due to the importance of the presence of a decision-making system for the management of ship movements to avoid different risks. Processing First, we note that the decision-maker which is the "ship's captain" asks the question: "what is the best path to choose basing on the current dataset?" and therefore, "what is the maneuver to perform". Then, the Onboard and Ground station analysts collect and exchange current data related to the ship, the coastal installations, the weather, and other data.
The electronic chart obtained by ECDIS represents the most important spatial data used in our proposal. This chart illustrates the current position of the ship, and information of all objects of the entourage, see Fig. 9.
Other spatial data related to the harbor as topographic and risk charts … etc, can be added in form of information layers. We note two important spatial data, which must present. Fig. 9. 2-Vector information layer containing a set of trajectories (Tr112, Tr352, Tr251, Tr254, and Tr215) which can be followed. They are traced by the ship's captain as shown in Fig. 10. After that, a buffer area is defined around every trajectory.  So the ship's captain has to make a decision about which trajectory to choose in order to arrive at the port with the best conditions. Using the SOLAP prototype, the onboard and Ground station analysts make multidimensional analyses on points or a list of points, which intersect buffer areas. In this case, the incident fact table is concerned. If there is no intersection, the best_choice fact table is concerned. Once the results are obtained, they are transferred to the Captain. The latter is the only one who can take responsibility to make a decision about the trajectory and therefore, the decision about the maneuvers to be performed.

2) Discussion
As illustrated in Fig. 11, the analyst connects to the data cube "Maritime_Cube", and then he can launch MultiDimensional eXpression (MDX). In this example, the analyst wants to know the amount of incident "Nbr_incident" measure from the "incident" fact table and "Nbr_BestChoice" measure from the "BestChoice" fact table. This analysis is effectuated through the temporal and spatial dimensions.
The results of the multidimensional analysis can illustrate that for a buffer area around Tr215, the number of incidents was very important until 1986 because of fewer safety measures at this epoch. Next, Tr215 choice becomes safe until 2000 when the number of incidents increases. That may be because of the presence of expansion works in the harbor. After that, this choice becomes again safe but not after 2014 until now. The same work will be applied for each trajectory.
We note the importance of the buffer area, which will intersect, or not a prospective incident. For the reason of space constraint, we will not illustrate all experimentations. However, Fig. 12 illustrates the best case related to Tr251. It is clear that this trajectory presents  fewer incidents and is considered the best choice several times.
Besides, we note the importance of the electronic chart, which provides updated information, and an actualized chart. It is very useful and the presence of a new object in the sea will be taken into account during the spatial and temporal analysis.

1) Presentation of "Oran" harbor
Oran is a port city in the Mediterranean, located in northwestern Algeria. It is the first coastal city in the west of the country. The Port Company "Port Company of Oran" (EPO), manages the commercial port of the city of Oran, under the tutelage of the Port Services Group and the Algerian Ministry of Public Works and Transport. With its many specialized facilities, the port of Oran can be considered polyvalent, since EPO treats containers, general merchandise, and cereals of all kinds in addition of passenger transport. The port of Oran is divided into several zones according to the existing specialized facilities.
We have chosen this port for a second case study due to the importance of the presence of an SDSS for the management of different kinds of ships coming in and out of the harbor to avoid different risks.

2) Processing
First, the decision-maker which is the "ship's captain" wants to know: "what is the best path to choose basing on the current dataset?" this will help him knowing "what is the maneuver to perform".
In addition to other spatial data related to the harbor as topographic and risk charts … etc, we need the following: 1-The electronic chart of Oran harbor obtained by ECDIS, which illustrates the current position of the ship and information of all objects of the entourage. 2-Vector information layer containing coordinates of all locations of different incidents as shown in Fig. 13. 3-Vector information layer containing a set of trajectories (Tr4013, Tr4017, Tr4002, Tr4100, and Tr4112) which can be followed. They are traced by the ship's captain as shown in Fig. 14.
A buffer area is defined around every trajectory. The ship's captain has to make a decision about which trajectory to choose as the best solution. The onboard and Ground station analysts make multidimensional analyses on points or a list of points, which intersect buffer areas. They transfer the results to the Captain who is the only one who can take responsibility to make a decision about the trajectory and the maneuvers to be performed.

3) Discussion
As illustrated in Fig. 15, the analyst connects to the data cube "Maritime_Cube", and then he can launch multi-dimensional analysis through measure from the "incident" and "BestChoice" fact tables. The results of the multidimensional analysis illustrate that for a buffer area around Tr4013, we note the number of incidents is low since 2012 when the number of "Best choice" is very important. We note that these amounts were relatively  close. For that, the ship's captain will consider his experience and the ECDIS system.
In Fig. 16, the results of the multidimensional analysis illustrate that for a buffer area around Tr4100; show that after 2016, the number of incidents is very important. This will eliminate this choice.
However, In Fig. 17, the results of the multidimensional analysis illustrate that for a buffer area around Tr4112 we note relatively the same results as those of Tr4013. In this case, the ship's captain will consider his experience and the actualized electron chart offered by ECDIS.
We note that our system, in some cases, can provide several alternatives to the solution. It is theoretically possible when many trajectories present results of the multidimensional analysis, which can be considered as acceptable.
In this case, a solution can be by providing mechanisms for helping the captain to make the decision, for example by introducing multi-criteria analysis.

Conclusions and future work
For the support of spatial decision-making processes, technologies like Spatial Data warehouses (SDW) and Spatial OLAP tools are used in BI applications [35]. On the other hand, GIS is widely used for managing geographical data, and as a decision-aid system in different fields of knowledge namely epidemiology, forestry, agriculture …etc. [36, 37, 38, and 39].
The main objective of the current study is to develop a spatial decision support system (SDSS), namely "Maritima", by integrating ECDIS and SOLAP systems. This integration can help decision-makers effectively taking the appropriate maneuver for safe maritime navigation. Maritima consists of three subsystems, namely Marin-SOLAP Subsystem and ECDIS subsystem interconnected to the On-board visualization subsystem by data and queries flows. This is to make a decision that  will be taken by the decision-maker which is the ship's captain using the user interface.
We have based our proposal modeling in UML because it is a well-known standard modeling language on the one hand, and it can be easily extended to take into account specific domains such as multidimensional modeling for spatial data warehouses.
We developed "Marina", the SOLAP user interface in Eclipse Java programming language and it is tested with maritime data related to the harbor of Arzew western of Algeria.
In the field of maritime navigation, several works are introduced for providing computerized systems onboard the ship or at ground stations in the harbors [40,41,42]. However, they differ from Maritima, our proposal in this paper, in that the latter is based on different techniques, namely multidimensional analysis of data and geographical information system. These tools have proved their efficiency, with the integration of specialized technologies (ECDIS).
Results show that the document NoSQL model with MongoDB is well suitable when dealing with OLAP queries; however, we need to study other types of queries. We have applied transformation rules that ensure the translation from conceptual SDW schema to a logical document-oriented NoSQL model (MongoDB). We can also consider other NoSQL models in particular graphoriented model, which goes well with geographical information systems (GIS).
We conclude that NoSQL databases are not opposed to relational databases known as SQL or other databases. They rather fill the gaps for cases that promote performance and fault tolerance Our future work concerns the extension of "Maritima" by including other subsystems providing real-time data to be analyzed. Other simulation applications can be integrated with "Maritima" for providing experimental maneuvering tests.
Besides, the SDW modeling can be enriched by introducing other spatial integrity constraints (IC) and integrating data quality control mechanisms.