Skip to content

Commit def1770

Browse files
authoredFeb 5, 2020
Added Blog Entries (#39)
* Added blog entry on Chromium browser * Added blog entry for Google Bigtable
1 parent 930099e commit def1770

File tree

4 files changed

+54
-0
lines changed

4 files changed

+54
-0
lines changed
 

‎_posts/2019-07-12-Chromium-Browser.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
---
2+
layout: post
3+
title: "Chromium Browser"
4+
date: 2019-07-12
5+
author: "Anukriti Jha"
6+
excerpt: "Chromium is the metal used for Chrome plating"
7+
image: "/images/download_chromium.png"
8+
is_pinned: false
9+
---
10+
Chrome is the most popular browser in the world, but there would be no Chrome without Chromium.
11+
Chromium is an free and open source web browser developed by Google which is the base of many web browser like Opera, Brave, Microsoft Edge, Amazon Silk among others. It is also widely used by many third party companies to make their own web browsers.
12+
Chrome browser which is not open sourced derives most of its code from Chromium browser. Chrome is feature-rich and has automatic updates which is different from Chromium which doesn't come as a stable release.
13+
Chromium is rough, and not just around the edges. In practical terms, the latest version of the Chromium browser will be far buggier, much more prone to crashes, than even the rawest version of Chrome. Google says so, in fact. "It may be tremendously buggy," warns the Chromium download page. But Chromium is more secure since it does not send crash reports or usage data to Google.
14+
On the other hand, the information Chrome can collect ranges from where users click to the device's operating system.😱😱
15+
16+
Chromium Project also announced its Chromium OS open source Project which includes the code base, user interface experiments and some initial designs for ongoing development. Chrome OS is all about the web. The entire experience takes place within the browser and there are no conventional desktop applications. This means users do not have to deal with installing, managing and updating programs. It is highly secure because every time one restarts the computer the operating system verifies the integrity of its code. If one's system has been compromised, it is designed to fix itself with a reboot.
17+
"It is an operating system for people who spend most of their time on the web."-Google Blog.
18+
19+
Check out Chromium website: https://www.chromium.org/Home
20+
21+
Download Chromium: https://download-chromium.appspot.com/
22+
23+
Also check out the Chromium blog: https://blog.chromium.org/
Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
---
2+
layout: post
3+
title: "Introduction to Google BigTable"
4+
date: 2020-02-04
5+
author: "Anukriti Jha"
6+
excerpt: "The database that powers core Google services like Search, Analytics, Maps, and Gmail."
7+
image: "/images/bigtable.png"
8+
is_pinned: false
9+
---
10+
It is a distributed storage system which is suitable for storing structured data. It resembles a relational database but has a different interface. It allows dynamic control over data layout and format.
11+
BigTable is designed to reliably scale to petabytes of data and thousands of machines. It has achieved several goals: wide applicability, scalability, high performance, and high availability. BigTable is used by more than sixty Google products and projects, including Google Analytics, Google Finance, Orkut, Personalized Search and Google Earth.
12+
13+
**Data Model**
14+
15+
Considering the example of personalized search feature of Google: It is a service that records user clicks and queries across various parameters like web search, images, news etc.
16+
Trying to design it using SQL database system,
17+
We can have a table for all user IDs with websites visited at a particular timestamp. Even considering only a one-hour time span, the number of rows can be very large and it will be difficult for creating personalized search feature for a particular user.
18+
Now, trying to design it using NoSQL database system,
19+
We can have a document with key as user ID and in it we can have a JSON like array with weblink visited with anchors within the page and also the particular timestamp. But even with this upgradation, grouping of weblinks according to domain name or timestamps is an arduous task.
20+
Now using BigTable, we can have
21+
Each user has a unique userid and is assigned a row named by that userid. All user actions are stored in a table. BigTable maintains data in lexicographic order by row key. The row range for a table is dynamically partitioned. Each row range is called a tablet, which is the unit of distribution and load balancing.
22+
A tablet can be understood further using the example of a table that stores web pages: Each row entry is a separate URL. Pages in the same domain are grouped together into contiguous rows by reversing the hostname components of the URLs. For example, we store data for maps.google.com/index.html under the key com.google.maps/index.html.
23+
Column keys are grouped into sets called column families. A column key is named using the following syntax: family: qualifier. The qualifier is the name of the referring site; the cell contents is the link text. Access control and both disk and memory accounting are performed at the column-family level. A separate column family is reserved for each type of action (for example, there is a column family that stores all web queries, a column family that stores results for images searched etc).
24+
Each cell in a BigTable can contain multiple versions of the same data; these versions are indexed by timestamp. Each data element uses as its BigTable timestamp the time at which the corresponding user action occurred. Personalized Search generates user profiles using a MapReduce over BigTable. These user profiles are used to personalize live search results.
25+
26+
**Implementation**
27+
28+
The BigTable implementation has three major components: a library that is linked into every client, one master server, and many tablet servers.
29+
The master is responsible for assigning tablets to tablet servers, detecting the addition and expiration of tablet servers, balancing tablet-server load, and garbage collection of files in GFS. In addition, it handles schema changes such as table and column family creations.
30+
Each tablet server manages a set of tablets (typically we have somewhere between ten to a thousand tablets per tablet server). The tablet server handles read and write requests to the tablets that it has loaded, and also splits tablets that have grown too large.
31+
A BigTable cluster stores a number of tables. Each table consists of a set of tablets, and each tablet contains all data associated with a row range. Initially, each table consists of just one tablet. As a table grows, it is automatically split into multiple tablets, each approximately 100-200 MB in size by default.

‎images/bigtable.png

149 KB
Loading

‎images/download_chromium.png

111 KB
Loading

0 commit comments

Comments
 (0)
Please sign in to comment.