1 / 22100%
A program depends on data to be properly stored and handled. The data storage
format selected must be appropriate for what the program intends to do. Data can
be stored as a file or a database - object-oriented, relational, multidimensional. The
selected data storage format needs to consider processing efficiency to make the
program as fast as possible while maintaining reliability, security, and availability.
A relational database is the most used database. A relational database is a
collection of tables, which each contains a primary key, that can be related to
each other using the primary key to tie them together. Relational databases allow
for referential integrity which allows the database to ensure that the information is
valid. Structured Query Language (SQL) is the standard language for access the
data.
NoSQL databases do not use the relational model or SQL. These can include
document-oriented databases, wide column stores, and graph databases. These
databases support high transaction rates and can store audio, video, and image files
which do not fit well into a relational structure. System, language and databases
are very important when putting together information systems. The data base is
going to be where all the information that the code is creating is going to be
stored in. The language is going to be what combination of characters are used
in order to retrieve the information. Have a good understanding of databases is
good for being able to troubleshoot errors of food, and the proper way of
maneuvering around effectively. Program design and data storage design work hand
in hand to ensure efficient and effective system development. Program design can
be understood as the blueprint for a software application responsible for things
such as functionalities, algorithms and interactions. Data design is responsible for
the organization and storage needed from the software. Accessing information is
important and program design has to work around data storage design to make
sure accessing information is quick. Program design propels data storage design.
The design of the program will decide the types of data to be stored, their
relationships, and access patterns. This will also sway the data storage design
decisions like the choice of database model. On the other hand data storage design
determines program design. The chosen data storage design affects the program
design in terms of data retrieval, manipulation, and storage operations. The
program has to be compatible with the chosen data storage solution
efficiently.When comparing two types of databases I think it is a good idea to
consider relational databases (SQL) and NoSQL databases. Relational databases use
a structured schema to organize data into tables with predefined relationships. They
provide efficient data consistency and support powerful querying capabilities through
SQL. Relational databases are suitable for applications with well-defined schema.
An examples would be banks. NoSQL databases are designed for handling large
volumes of unstructured/semi-structured data. They offer flexible schemas and
horizontal scalability. NoSQL databases come in different types such as key-value
stores (Redis), document databases (MongoDB), etc. NoSQL databases are
commonly used in applications requiring high performance, scalability, and real-time
data processing, such as Instagram. To begin, program design and data storage
design are closely related and dependent on each other. Program design determines
the structure and functionality of the software, while data storage design determines
how the data is organized and stored within the software. The data storage design
will depend on the program design due to the fact that the design of the program
will affect its size, accessibility and change how the data is kept in the program.
Because of this the data storage will be significantly impacted by the architecture
of the project. The two types of databases I will be getting into are single-file or
file database.
and multi-file or structured database. Single-file database cross-platform and can
be accessed on any machine. You would use file databases in the event of storing
the username and password, entities and attributes, contact details and product
details. You would use a structured database in scenarios where there is need to
store the known structured data which posses a finite individual or a finite
application that are accessing the database.
Program design and data storage design are closely interrelated in the context of
database systems. Program design involves designing the software applications that
interact with the database, while data storage design focuses on designing the
underlying structures and mechanisms for storing and retrieving data efficiently. The
relationship and dependencies between the two can be summarized as follows:
1. Data Access and Manipulation: Program design heavily depends on the data
storage design to efficiently access and manipulate data. The structure and
organization of the database affect the design of the program's queries,
transactions, and data manipulation operations.
2. Performance: The program design and data storage design impact the
performance of the system. The efficiency of the data storage design, such
as indexing strategies, partitioning, and caching mechanisms, can influence
the performance of program operations that rely on data retrieval and
updates.
3. Data Integrity and Constraints: Program design and data storage design
collaborate to enforce data integrity and constraints. The program design
defines the logic and rules for data validation and enforcement, while the
data storage design implements mechanisms like primary keys, foreign keys,
and constraints to ensure consistency and integrity.
4. Scalability: Program design and data storage design play a vital role in
achieving scalability. The program design should be scalable to handle
increased user load and changing requirements, while the data storage design
should support efficient data distribution, replication, and partitioning to scale
horizontally or vertically.
Now let's compare and contrast two types of databases: relational databases and
NoSQL databases.
1. Relational Databases:
2. Relational databases store data in structured tables with predefined schemas.
They use SQL (Structured Query Language) for querying and manipulating
data. Relational databases are known for their strong data consistency, ACID
(Atomicity, Consistency, Isolation, Durability) properties, and support for
complex relationships between entities. They are suitable for applications that
require data integrity, transactional consistency, and complex queries.
Examples of use cases include:
Banking systems: Relational databases ensure the accuracy and consistency
of financial transactions, enforce constraints, and support complex queries for
generating reports and analytics.
Enterprise resource planning (ERP) systems: Relational databases provide a
structured approach to manage various business processes, such as inventory,
sales, and human resources.
1. NoSQL Databases:
2. NoSQL databases are designed to handle unstructured and semi-structured
data. They offer flexible schemas, horizontal scalability, and high availability.
NoSQL databases do not rely on fixed table structures and support various
data models like key-value, document, columnar, and graph. They are
suitable for applications that require massive scalability, high write
throughput, and schema flexibility. Examples of use cases include:
Social media platforms: NoSQL databases can handle high volumes of user-
generated data, such as posts, comments, and likes, with ease. They provide
horizontal scalability to accommodate millions of users.
Internet of Things (IoT) applications: NoSQL databases can handle diverse
and unstructured data generated by IoT devices, such as sensor readings,
logs, and geospatial data, efficiently.
In summary, the choice between relational and NoSQL databases depends on
factors such as data structure, consistency requirements, scalability needs, and the
nature of the application. Relational databases are well-suited for structured data
and applications that require data integrity and complex queries. NoSQL databases
excel in handling unstructured data and providing horizontal scalability for
applications with high volumes of data and varying schemas.
Relationships and conditions are how a component uses or depends on other
components.
Level 2 - Relationships and dependencies between program and information storage
design
Information storage configuration is based on the program schedule. This is
especially evident in the way program organization affects the size and how it is
achieved, and thus how information storage is performed in the program.
Information storage is therefore heavily influenced by program planning.
Different information stores are created for each exceptional piece of primary
information. This shows that it is possible to adjust the program's programming
schedule. One model is the different information storage of DAS and NAS,
leading to contrasting program plans.
types of information bases
There are two types of information databases -
1) Single record or document information database -
Records of this type are user names and secret phrases, items and properties,
contact details, and when deleting item details used for
2) Multi-Record or Structured Record -
This type of record is used in situations where it is necessary to store organized
information that is expected to be reached by a limited number of people or
applications.
Databases and data storage are an integral part of systems development, deciding
on which database and data format to use will dictate how efficiently the system
will operate. It is important to choose the correct database when designing the
system, or the user experience might be diminished and the system will be a
failure. Relational databases are the well known and structured query language, or
SQL, is used to access the data stored. Other types of databases include, legacy
database, object-oriented database, and NoSQL database, just to name a few. They
each are used in a scenario to maximize the efficiency of how the data is
accessed, and each has disadvantages and advantages, that should be taken into
consideration. For example, object-oriented is best used when supporting audio and
video data types. Netflix and other over the top streaming services can utilize this
type of database, since their systems encompass complex audio and video and
many of them use object-oriented programming. However, these type of databases
can cost much more than other types of databases, and they are not widely
accepted. NoSQL databases are used with big data. Many companies utilize this
big data in order to compile data so that they can use that data for marketing
and other research. Grocery store bonus programs entice people to sign up for
their programs, so that they can collect data from the consumers so that they can
track shopping data. It is important to read privacy policies in order to know how
companies use the data that we give them access to. Program design and data
storage design are not unlike symbiotic lifeforms; as they need each other to
work. The program design phase directly affects the data storage design and vice
versa because of the way it'll all work in the end. Your end-users will use the
program to access and manipulate the data [storage] when the project is completed,
so it is essential these two design phases are coordinated. The type of data
storage design will depend greatly on the type of program being developed and
for what industry/project it's being developed for. Relational databases are most
common with their management systems being terms we've heard like SQL. They
tend to be used for a lot of banking and general business management systems.
There are other types of databases that are not relational such as NoSQL as well,
these generally are utilized in systems that deal with a large volume of
unstructured data and have far more flexibility. These tend to also be a lot more
scalable in design and work well in cloud computing. Program design and Data
design work closely together and need each other with the development of
systems. The logical design of the program can directly influence the design of
data storage. Data storage design provides the necessary infrastructure components
to store and retrieve data required by the program. It ensures that the data is
organized and accessible based on the programs needs. The dependencies and
requirements of the program can also influence the design of the data storage. A
relational database organizes data into tables. They use a structured query language
(SQL) for manipulating and querying data. They establish relationships between
tables using keys. Thes are databases are for example My Sql and Orale. No SQL
databases or Non -relational databases are designed to handle large volumes of
unstructured data. They have flexible schema designs allowing for scalable storage
and often used in cloud computing environments. Program design and data
storage design is a big part of the design phase in the SDLC life cycle. The
program design is the layout of the program before it is actually coded in a
chosen coding language. If done correctly it'll make the life of the program
longer. The data storage design establishes the data storage format. It shows how
data is managed and stored. Multimedia database is a data base that stores
multimedia such as audio, videos, and images. This database can be used in many
things. You can use it in creating a webpage. Although there may be I have not
seen any websites without images. You could also use them in video games which
contains all audio, video, and images. Another database is the NoSQL database.
This database is for storing and retrieving data. NoSQL databases are typically
faster when storing and retrieving information and are considered more flexible.
What I would use this database for is customer tracking, online shopping, and big
data. I can't cover all of what these two databases can do or are capable of but
that's the basics. Program Design models explains how your organization defines
Value proposition: how your organization distinguishes itself from the
competition qq
Products and services: what your organization offers, how those offerings
work, and why your prospects need them
Impact: the measurable change your organization expects to make qq qq
Partners and customers: who your organization seeks to collaborate with
and serve qq
Talent: who and how your organization recruits team members
Resources: the tools and connections your organization needs to succeed
and how you will acquire and maintain them
Revenue: how your organization will financially sustain and grow its efforts
Data storage Design is how data storage and handling by programs running the
system takes place.
The main steps of data storage design are to:
Select the data storage format
Convert the previously made logical data model into a physical data model
Ensure that the ERDs and DFDs balance
Design the selected data storage format to optimize its processing efficiency
Program and design work together when gathering and storing data. The
dependence between the two has to do with the program design meeting conditions
of data design in order to keep them working in sync. The program design can
have a direct impact on the data storage design since the architecture of the
program will affect its size and how it is accessed, thus changing how the data
is stored in the program. Varied data stores are created for each different
structural data, indicating that the program design will change. An example of two
types of database storage is direct-attached storage (DAS) and Network accessed
storage (NAS), which create variations in the program design. DAS “is a digital
storage system directly attached to a host computer accessing it. Examples of DAS
include:
Internal hard drives and SSDs
External hard drives and SSDs
CDs
USB flash drives” (Ciphertex, 2021).
NAS “refers to a self-contained storage system that’s attached to a local area
network (LAN) or a wide area network (WAN). All devices connected to the
network can be granted access by the network administrator to the data stored on
the NAS system. It comprises portable NAS servers and network management
software that permits different users to log in to the storage system.” Two forms
of databases are single-file and structured. A single file database is used to store
things like username and password, contact and product details. A structured or
multi-filed database is used to store the unpredictable and unstructured data which
posses a finite individual or a finite application that is accessing the database.
Data storage designs are incorporated into program design, which also decides how
data should be kept and the ideal storage format for each sort of data. Program
design and program requirements serve as the foundation for data storage design.
The type of software, as well as the program's demands for speed and security,
must all be considered in the data storage architecture. The relationship between
the program design and data storage design is that they both have to work
simultaneously for the retrieval and saving of data. As far as dependencies, the
program design has to meet the given condition of the data storage design to
work out in a unison and the program design is responsible for querying and
saving the data in the data storage.The 2 types of databases I would like to
discuss is the relational and non-relational databases. The differences between the
two is that the relational databases store data in rows and columns, similar to a
spreadsheet, whereas non-relational databases do not. Applications that require data
to be structured in tables, such accounting systems, use these databases. It's
important to take your application's kind into account when choosing the sort of
database to utilize. Relational databases work best for applications like accounting
systems that need data to be kept in tables. Applications like document stores and
web apps that don't need the data to be structured in tables should use non-
relational databases. The relationship between program design and data storage
design is that they work together to make a functional system efficient for the
user. Program designs are instructions developed in programming languages that
automate, collect, manage, calculate, and analyze the processing of data and
information accurately. There are three broad areas of activities: understanding the
program, using design tools to create a model, and developing test data. On the
other hand,
data storage designs process information and stores files or folders by computer
decoded into a form that is efficient for movement or processing and can be in
the form of text, documents, images, audio, or clips. Programs are used to speed
up input and output processes in a machine. While data is used to establish a
baseline and help one to visualize the relationship among the different locations,
departments, and systems.
Types of databases:
Cloud Database is a hosting solution given by a third-party provider. It is a pay-
as-you-go solution minimalizing initial investments needed to acquire data space
while expanding as more resources are required.
On-premises database is an in-house database. Therefore, all the software,
infrastructure, and administration needed for support is local.
Between the two, my choice would be the on-premises database because of the
security and control. In addition, it's best for storing sensitive information since it's
in-house. The user is in control of the information providing levels of regulations
and privacy. The relationship between program design and data storage design is
highly interconnected, with each impacting the other significantly. Program design
determines the software application's structure and logic, including data
manipulation. Data storage design focuses on efficient organization and storage,
ensuring accessibility and integrity.
Relational databases (e.g., MySQL, PostgreSQL) arrange data into tables with
predefined schemas, supporting complex relationships. They excel in scenarios
requiring data integrity, like financial systems or e-commerce platforms. NoSQL
databases (e.g., MongoDB, Cassandra) offer a flexible schema-less approach,
facilitating fast storage of unstructured data. They suit high-performance applications
with evolving schemas, such as social media platforms or real-time analytics.For
instance, an online marketplace may rely on a relational database to ensure
consistent product inventory and orders. Conversely, a social media platform
handling vast user-generated content may choose a NoSQL database for scalability
and accommodating dynamic schemas. In summary, the choice between database
types hinges on application requirements. Relational databases ensure integrity for
structured data, while NoSQL databases offer scalability and flexibility for
unstructured or rapidly changing data in high-performance scenarios. The
relationship between program design and data storage design is like how we fly
in the airport. In the airport we have planes, gates, passengers, and security that
allow us to safely travel to our destination. The whole airport is the program
design that tells us where to go and when to go. The planes are the tables that
stores a common trait of data or in this case where is the plane going. They both
are needed to make the whole airport function properly and people are in the
correct flight. The airport also needs to guide other planes that are arriving to a
correct place and also needs to guide the plane that are departing to correct
location. With all that in mind, the airport those have a temporary place for
passengers to be stored till their plane arrives and sends them off to another
airport where they can arrived at their correct location. Just like the airports the
program design also have security built to make sure all the passengers have ID
and that they are safe passengers to make the travel. Hopefully I made sense in
this comparison.They are several types of database out there but SQL and NoSQL
is the most common database that people use for their projects. SQL organize data
into tables with predefine relationship between them. where as NoSQL is
unstructured database where it does not need table to be stores. It is useful for
fast growing data and rapidly changing data also. Really difference in program
designing and then data storage design is really how information may be handled.
as if lets say I wanted to design a data storage facility to just be one big
dependency, it would work out great as it would provide a lot of failsafe’s for a
company trying to keep documents in the event of a disaster. This being that your
network will go down and then you will be left without the information needed
to perform the job or documents. This is where let’s say you have 30 locations,
but now there is 30 copies of the same file across the whole network making it
hard for one to go down and not one to have it.
Program design is more of the physical appearance of the program for the end
user and how it is designed internally to run while in use. This is the back end
developing of the program and the physical feel of the program to the user. This
makes or breaks a website, app, game, company. If you do not have any of the
right program designs in place, it could be the collapse of a business, game, or
app. This is a fundamental piece whether technilogical or analytically speaking.
However, these two may have differences, they are both very similar, as they both
contribute to the same aspect, you cannot really run and deploy an app nowadays
without a homestation in which you can provide updates to said app, and if you
do not have a data storage "center" then in reality, you cannot run a program
effectively for a profit. Looking at the program design, it is something that makes
a company look good, whether it be promoting the company itself, or integrated
within to their technological programs. Data storage design is the first simple
activity that is less complex, modular, and efficient program structures that is the
design activities are listed in entity-relationship diagrams where the information is
stored. These diagrams are used to show the relation between the various
component of the database. n the other hand, program design shows how data will
be how the organization will develop the program itself. This involves several
stages that are the research, consultation, initial designs, testing, and redesigning. In
terms of relationship between program design and data storage design is that for
the data storage to be accessed on they both must work simultaneously for the
retrieval and saving of the data. In terms of dependencies the program design
must meet the given condition of the data storage design to work out in a unison
and the program design is responsible for querying and saving the data in the
data storage.The two types of databases are relation and non-relation databases. In
relation database data is stored in an organized way in tables according to how it
relates to each other while in the non-relation database data is stored in a non-
tabular way that is database will use different ways for managing, accessing, and
storing the data. According to security one prefers to use the relation database
since the non-relation has weak security which may concern the large scope of
data in the database. Hence one prefers to use the relation for security purposes.
The other reason is the type of data to be stored in the database to be chosen
this is concerned with an example in a school where student information is stored
in a database. To ensure that it will enhance the easier search of data the staff
will choose to take the relation. Since the student information is grouped in a
similar way hence easier to search. The relationship between program design and
data storage design is crucial in developing efficient and functional software
systems. The critical aspects of the program design dependencies include the data
model, data integrity, and performance considerations. The program design heavily
depends on the data model used for storing data. Program design also depends on
data storage design to ensure data integrity. The program design needs to consider
the performance characteristics of the underlying data storage design.Data storage
dependencies on program design are Data structures, Data access and manipulation,
and Security and privacy. The data storage design relies on the program design to
determine the required data structures for efficient data storage. The program
design determines the ways data will be accessed, queried, and modified. The data
storage design needs to accommodate these requirements by providing appropriate
access methods, APIs, and query interfaces that align with its needs. Two types of
databases are relational and NoSQL. Relational databases are based on the
relational model and use structured query language (SQL) for data management.
They organize data into tables with rows, columns, and relationships using keys.
Relational databases commonly store product catalogs, customer information, and
order history. Banking systems also use relational databases. NoSQL, which is “not
only SQL” is designed for handling larger-scale, unstructured data. They offer
flexible schemas and horizontal scalability. NoSQL databases are commonly used
for storing and processing large volumes of unstructured data, such as social media
feeds, or log files. Program design and data storage design are closely
interconnected in building an efficient and functional system. Program design
focuses on creating the logic and structure of software applications, while data
storage design concerns the organization, storage, and retrieval of data within the
system.
The relationship between program design and data storage design lies in the fact
that the program design dictates how data is processed, manipulated, and utilized
within the application. The program design determines the data structures,
algorithms, and operations required, which in turn influence the design of the data
storage system. Conversely, the data storage design influences the program design
by providing the necessary structures and mechanisms to store and access the data
efficiently.
When it comes to comparing and contrasting two types of databases, let's consider
Relational Databases (RDBMS) and NoSQL databases.
Relational databases, such as MySQL and PostgreSQL, organize data into tables
with predefined schemas, enforce data integrity through constraints, and support
powerful querying capabilities using structured query language (SQL). They are
suitable for applications that require strict data consistency and complex
relationships, such as financial systems or inventory management systems.
On the other hand, NoSQL databases, like MongoDB and Cassandra, provide a
flexible, schema-less data model, allowing for easy scalability and handling of large
volumes of unstructured or semi-structured data. They excel in scenarios where
data variability and high-speed data ingestion are crucial, such as real-time
analytics, content management systems, or social media platforms.
The choice between the two types of databases depends on the specific
requirements of the application. For instance, if you need to maintain strong data
consistency and have complex relationships between entities, a relational database is
a suitable choice. In contrast, if you anticipate a need for horizontal scalability,
flexibility in data schema, or handling large volumes of unstructured data, a
NoSQL database would be more appropriate.
For example, an e-commerce website that needs to store and manage product
catalogs, customer orders, and inventory levels with complex relationships would
benefit from a relational database. On the other hand, a social media platform that
deals with high-velocity data streams, user-generated content, and requires flexible
schema to accommodate changing data structures would find a NoSQL database
like MongoDB more suitable. A dependency is a constraint that applies to or
defines the relationship between attributes. It occurs in a database when
information stored in the