4 Architecting IoT Cloud
211
Fig. 4.26 CAP Theorem
Availability
Consistency
Partition tolerance
CA:
RMDBS (MySQL,
Postgres, etc.)
AP:
Cassandra
CP:
MongoDB,
Redis, etc.
same data. A high-consistency system means a transaction is able to start and end
with the system in a consistent state. Systems may move into an inconsistent state
during the transaction, but the whole transaction is rolled back if an error is found
during any part of the process.
High Availability Each request receives a success or failure response. Availability
within a distributed system means that the system is operational 100% of the time –
every client receives a response every time no matter the state of an individual
system node.
4.6.2 Data Warehouse
A data warehouse (DWH) can also be referred to as an enterprise data warehouse
(EDW), and it is the main method of data collection in use for the last 30 years.
A DWH serves as a data integration point, responsible for organizing, arranging,
and combining data from a variety of diverse relational databases. Note that in an
enterprise there are several data silos. These silos are a grouping of organizational
information that is separated from and inaccessible to other organizational departments. For example, it is common practice for each department (i.e., marketing,
sales, accounting/finance) to have its own database. Therefore, a data warehouse
is created to collapse the borders between these data silos and create a single
point of truth (see Fig. 4.27). The DWH is also able to provide senior leadership
with overarching insight regarding company performance via management reports,
dashboards, or ad hoc analysis. A broad range of business data can be analyzed using
a data warehouse, which becomes necessary when operational databases are unable
to maintain performance while also meeting analytical requirements. Running a
complicated database query means the database has to enter a short-term static state,
Précédent

- 218/647

Suivant