0% found this document useful (0 votes)
23 views

LAB 3 - Week 3 - NoSQL and Big Data

Uploaded by

sachinsmith14
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
23 views

LAB 3 - Week 3 - NoSQL and Big Data

Uploaded by

sachinsmith14
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 6

LAB 3 - Week 3 – NoSQL and Big Data

1. Discuss why using a NoSQL database for a website like Amazon is a better idea and
what pushed e-commerce websites like Amazon to switch to NoSQL databases.

NoSQL databases are more suitable than relational databases. These include e-
commerce websites like Amazon because they offer better performance, scalability, and
flexibility. E-commerce websites like Amazon deal with large amounts of data each.
They have to store user profiles, payments, and all products stored on Amazon. As we
all know, NoSQL databases are designed to handle large volumes even as data grows
exponentially, which also does not affect performance.

A reason that gets ignored why e-commerce websites switch to NoSQL is cost
efficiency, which is helpful to newer companies. With e-commerce websites, the user
having fast Wi-Fi isn't the only factor that provides a great user experience - NoSQL
makes this possible.

To conclude, platforms such as Amazon due to their superior capabilities in terms of


performance, scalability, and adaptability compared to conventional relational
databases. The transition of e-commerce giants like Amazon to NoSQL databases
primarily stems from the inadequacies of traditional relational databases in meeting the
demanding performance criteria of their applications.
2. In the future, what is expected from next-generation databases from websites like
Amazon?

3. Give a brief summary of AmazonDB. Include what kind of data structure is used, and
how that data structure is an effective concept for creating a NoSQL database.

Amazon DynamoDB was released on January 18, 2012.

This is Amazon’s version of a NoSQL database. DynamoDB is a versatile NoSQL


database known for its ability to efficiently store and retrieve large amounts of data while
supporting high read and write operations. It employs a flexible key-value and document
data model, making it a scalable choice for various applications.Amazon Aurora was
released on October 2014

Amazon Aurora is another Amazon database service but this one is relational. Amazon
Aurora is compatible with MySQL and PostgreSQL. It offers high availability, durability,
and performance, making it suitable for applications requiring ACID compliance and
relational data structures.

Amazon DocumentDB was released on January 9, 2019

Amazon DocumentDB is a fully managed NoSQL database compatible with MongoDB,


designed for document-oriented data models and offering scalability and high
availability. Amazon Neptune, on the other hand, is a fully managed graph database
service for highly connected data, supporting RDF and Property Graph data models. The
choice between these services depends on your application's specific requirements.
NoSQL databases like DynamoDB excel at handling unstructured or semi-structured
data with flexible data models, making them suitable for rapidly changing, horizontally
scalable applications.

4. Explain what CGI (Common gateway interface) does, and what its alternatives are
today.
Prevalent Gateway Connect (CGI) is a traditional form of technology secondhand in netting
happening. This technology allows netting servers to communicate accompanying extrinsic
programs or scripts to create vital netting content.

But what is CGI? Well CGI is a protocol that gi. They are usually inscribed in Python or covering
script. When a consumer communicates accompanying a web page computer network
attendant invokes aCGI script before it gets gived to the customer. The script processes the
dossier, produces HTML or other content, and sends it back to the computer network attendant,
which, in proper sequence, transfers it to the customer's browser.

CGI played an important act in the early growth of the World Wide Web. Before vital netting
applications and attendant-side sciences enhanced prevalent, CGI handwriting were the basic
means to build shared netting content.

While CGI was a useful tool it had several disadvantages. CGI scripts frequently provoked a
significant conduct overhead, as each request complicated offset a new process for the script.
This managed to lazier response opportunities and wasteful resource habits. Also CGI
handwriting could be naive to freedom vulnerabilities except that it is correctly configured.
Poorly inscribed or insecure handwriting takes care of potentially revealing an attendant to
differing risks, including unwarranted approach and data breaches.

As netting traffic increased, CGI's process-per-request model became an obstacle.


Management of a lot of simultaneous requests necessary for solid server possessions, making it
challenging to scale netting applications efficiently.

As netting development progressed, various alternatives to CGI arose, trying its deficiencies
and permissive more adept and secure dynamic content era.

While the Common Entry Connect (CGI) played an inventing part in the growth of dynamic
netting content, allure use has declined considerably on account of performance, protection,
and scalability challenges. In new netting development, planners have an off-course array of
alternatives, containing attendant-side or music languages, netting foundations, application
servers, content administration schemes, and customer-side technologies. These alternatives
offer improved efficiency, security, and scalability, making them the preferred choices for
building dynamic web applications in today's digital landscape.
5. Explain the concept of database sharding. How does data sharding contribute to
database scalability and performance? And what are the drawbacks of database
sharding?

Table sharding is a technique secondhand in table management to boost scalability and


efficiency. It involves the level partitioning of a table into smaller, more controllable
subsets popular as "shards." Each shard holds a different portion of the data and may be
stocked on separate servers or clusters. This approach helps distribute the duties and
responsibilities and approach patterns across multiple possessions, through enhancing
table efficiency and scalability.

Sharding distributes dossiers across diversified servers or clusters, allowing


simultaneous express and write movements on various shards. This considerably
established throughput as multiple undertakings may be processed together. Sharding
allows active load distribution. Requests are delivered evenly across shards, lowering
the risk of system bottlenecks on a single attendant. This guarantees that the database
can handle extreme loads of requests efficiently. Decreasing Costs by distributing
dossiers across diversified servers, sharding allows institutions to scale their databases
across. This means adjoining more servers as wanted, which may be an economical
approach compared to cross climbing a single attendant accompanying more resources.
Upgraded Data Neighborhood: Sharding may be used to locate dossiers tighter to the
users or requests that need it. This minimizes dossier transfer times and reduces
abeyance, superior to faster response occasions for queries. Raised Fault Fortitude:
Accompanying data delivered across diversified shards, if one end or attendant
experiences a bankruptcy, the overall scheme can continue to accompany the remaining
shards. This repetition improves weakness, fortitude and system dependability.

Disadvantages of Database Sharding and managing a sharded table may be complex.


Developers need to address laws that can route queries to the correct shard and
guarantee dossier consistency across shards. Operating a sharded table requires
supplementary regulatory effort. Tasks to a degree listening to shared strength, directing
backups, and ensuring dossier regularity can be more challenging than directing a
single, massive table. Query Complexity: Querying dossiers across diversified shards
may demand more intricate SQL queries or additional forms to aggregate and analyze
results from diversified shards.

Nevertheless, it suggests challenges, including raised complicatedness, data exodus


issues, and potential deficit of some ACID characteristics. Organizations concede
possibility painstakingly assess their needs and contemplate the work-offs before
executing table sharding to ensure that it joins accompanying their specific requirements
and resources. When implemented effectively, sharding can provide a powerful solution
for handling large volumes of data and high workloads in modern applications.
6. State the difference between vertical and horizontal scalability. Give some examples.

Vertical scalability, as known or named at another time or place climbing up, involves growing
the ability of a alone server or system by accumulating more CPU, Stab, depository, or
additional hardware elements to handle raised workloads.

Level Scalability or measuring out, involves adjoining more machines or servers to a network or
cluster to allocate the assigned work and improve overall scheme accomplishment.

Upright Scalability: This approach focuses on improving the existing fittings of a distinct server
or support. It usually demands more powerful and high-priced fittings components, in the way
that faster processors or best amounts of Smash.

Horizontal Scalability: This approach focuses on accumulating more servers or machines to the
network. It depends on distributing the duties and responsibilities across diversified, frequently
less powerful, merchandise fittings money.3. Limitations: Upright Scalability: Skilled is a finite
limit to by virtue of how much a distinct attendant can be scaled across. Earlier the hardware
reaches allure maximum ability, further climbing may not be doable or economical.

Level scalability may be more surely extended by accumulating supplementary servers, making
it a more flexible approach for management growing workloads.4. Complicatedness: Vertical
Scalability: Increasing more money to a single attendant may be more natural from a
management outlook as it doesn't demand handling distributed arrangements. Still, it may
demand free time all the while upgrades. Horizontal Scalability: Measuring out across can be
more intricate on account of the need to survive multiple servers, allocate dossiers, and handle
communication middle from two points bureaucracy. Still, it often admits better arrangement,
resilience and chance.

Cram is accumulating more memory to a table attendant to help its capability to handle agreeing
queries and dossier caching. Increasing Computer Capacity: Installing faster processors in a
netting attendant to handle a bigger number of incoming requests. Extending Depository:
Adding more hard drives to a file attendant to adapt best.
7. What are the trade-offs between strong consistency and eventual consistency, and how
do different databases handle these trade-offs? Show some examples.

Business-Destroy Between Forceful Constancy and Eventual Regularity: Powerful consistency


and concluding thickness represent two divergent approaches to consistency in delivered
databases. They each have their own business-offs, and the choice between the middle from
two points ruling class depends on the specific necessities of a request. Data Completeness:
Powerful consistency guarantees that all express operations return ultimate current writes. This
guarantees dossier uprightness and correctness. Purity: Powerful consistency models are
conceptually more natural for planners because they forbiddance need to give reason for the
possibility of out-of-date or causing trouble data trouble.

Attaining strong constancy frequently requires arrangement and simultaneity among delivered
growth, leading to raised abeyance for state and write movements. Chance Strong thickness
can bring about reduced chance all the while network partitions or when nodes forsake because
it may demand a majority of nodes expected usable for a write movement to assume. Regularity
prioritizes chance, allowing arrangements in the second place functioning even when network
partitions or node deficiencies happen. This makes bureaucracy more weakness tolerant.

Expectations for this assignment: 1. Three to four full pages, write an essay answering the
questions above. 2. At one or two sources from journals, news, and websites (reputable
websites such as .edu, .gov or Microsoft, Google etc.)

You might also like