Google Cloud for Beginners – How To Choose a Database Service?

Context

  • 1: Is choosing a database easy?
  • 2: What are the different categories of databases?
    • 2.1: What are Relational Databases?
      • Relational Databases - OLTP - Online Transaction Processing
        • Cloud SQL
        • Cloud Spanner
        • Cloud SQL vs Cloud Spanner
      • Relational Database - OLAP - Online Analytics Processing
        • BigQuery - Modern Data warehouse
    • 2.2: What are NoSQL Databases?
      • Cloud Datastore and Firestore
      • Cloud BigTable
      • Choosing between Cloud Firestore, Datastore vs Cloud BigTable
    • 2.3: What are In-memory Databases?
  • 3: Let’s get a quick summary

Is Choosing a Database Easy?Datacenters

Choosing a database for your use case is not easy. A few factors you would need to consider:

  • 1: Do you want a fixed schema? Do you want flexibility in defining and changing your schema? Do you want to go schemaless?
  • 2: What level of transaction properties do you need? (atomicity and consistency)
  • 3: What kind of latency do you want? (seconds, milliseconds or microseconds)
  • 4: How many transactions do you expect? (hundreds or thousands or millions of transactions per second)
  • 5: How much data will be stored? (MBs or GBs or TBs or PBs)

Before we get into the details, let’s explore the different categories of databases:

REST API Best Practices — Design Examples From Java and Spring Web Services

REST API Best Practices

When designing a great REST API, it's important to have great microservices. How do you design your REST API? What are the best practices?

You Will Learn

  • How do you design a great REST API?
  • What should you think about when designing a REST API?
  • What are the best practices in designing RESTful Web Services?
You may also be interested in:  Top REST API Best Practices

REST API

This is the last article in a series of articles on REST APIs:

REST API — What Is HATEOAS?

REST API — What Is HATEOAS?

While viewing a web page, you can see data on the page and perform actions with it. How about a REST API? Typically, when you ask for a REST resource, you get the details of the resource back. How about sending the operations that you can do with the resource in the response?

You might also like:  RESTful Web Services With Spring Boot, Gradle, HATEOAS, and Swagger

We Learn

  • What is HATEOAS?
  • Why do you need to use HATEOAS?
  • When do you make use of HATEOAS?

REST API

This is the fifth article in a series of articles on REST APIs:

Designing a REST API — What Is a Code-First Approach?

Designing a REST API — Code-First Approach

Designing a great REST API is important to have great microservices. The Code-First approach focuses on generating the contract from code. Is it the best possible approach?

You might also like:  Code-First Approach With ASP.NET MVC Framework

You Will Learn

  • What is the Code-First approach to designing a REST API?
  • What are advantages of the Code-First approach?
  • What are disadvantages of the Code-First approach?
  • When do you adopt the Code-First approach?

REST API

This is the fourth article in a series of articles on REST APIs:

Designing REST API — What Is Contract First?

Contract First Approach

When designing a great REST API, it's important to have great microservices. Contract First approach helps you in designing a great contract before implementing it. However, it does not come easy!

You might also like:  Contract-First API Design With Apicurio and Red Hat Fuse/Camel

You Will Learn

  • What is Contract First approach of designing REST API?
  • What are advantages of Contract First approach?
  • What are disadvantages of Contract First approach?
  • When do you adopt Contract First approach?

REST API

This is the third article in a series of articles on REST APIs:

Introduction to REST API — RESTful Web Services

Intro to RESTful Web Services

REST stands for REpresentational State Transfer. It is a popular architectural approach to create your API's in today's world.

You may also like:  Get Plenty of REST: REST API Tutorials

You Will Learn

  • What is REST?
  • What are the fundamentals of REST APIs?
  • How do you make use of HTTP when building REST API?
  • What is a Resource?
  • How do you identify REST API Resources?
  • What are some of the best practices in designing REST API?

What Is REST?

The acronym REST stands for REpresentational State Transfer. It was term originally coined by Roy Fielding, who was also the inventor of the HTTP protocol. The striking feature of REST services is that they want to make the best use of HTTP. Let's now have a quick overview of HTTP.

Five Languages to Learn as a Java Programmer

Here are the five languages you MUST learn as a Java developer!

As a programmer, you want to explore new things. Learning a new language gives you a different perspective when solving problems.

So what are the five languages that a Java developer must explore?

Creating Spring Boot and React CRUD Full Stack Application with Maven

This guide helps you create a full-stack application with CRUD (Create, Read, Update and Delete) features using React for the frontend and Spring Boot as the backend REST API. 

You Will Learn

  • What a full-stack application is.
  • Why developers create full-stack applications.
  • How to you use React as a frontend framework.
  • How to you use Spring to create a backend REST Service API.
  • How to you call Spring Boot REST API from React using the axios framework.
  • How and when to use different REST API Request Methods — GET, POST, PUT and DELETE.
  • How to you perform CRUD (Create, Read, Update and Delete) operations using React and Spring Boot.
  • How to create a form in React using Formik?


Best Java Unit Testing Frameworks

Learn more about the best Java unit testing frameworks.

Unit testing is an important skill for programmers. With that said, what are the best frameworks you can use to write great unit tests in Java?

You may also like: 8 Benefits of Unit Testing

What We Will Learn

  • What are the best Java unit testing frameworks?
  • What is JUnit? How do you use JUnit for unit testing?
  • What is Mockito?
  • What is mocking?
  • How do you write unit tests with Junit, Mockito, AssertJ, and other frameworks?
  • What is the best Java unit testing framework for writing great asserts?

The Base Unit Testing Framework — JUnit/TestNG

Whenever you write a unit test, you execute the code and then check its output. You need a basic framework in place to run a large number of tests in a similar manner.

Microservices Best Practices: Why Build a Vertical Slice?

In this article, we look at what a vertical slice is and why we build it. We also discuss the best practices involved in building vertical slices.

What You Will Learn

  • What is a vertical slice?
  • When do you build a vertical slice?
  • What are the advantages of building a vertical slice?
  • What are the best practices for building a vertical slice?

Best Practices With Cloud and Microservices

This is the third article in a series of six articles on best practices with cloud and microservices. The first two articles can be found here: 

Microservices Architectures: Introduction to API Gateways

In this article, we look at what an API Gateway is, in the context of microservices.

You Will Learn

  • What  an API Gatewayis.
  • Why we need API Gateways.
  • How an API Gateway works.

Cloud and Microservices Terminology

This is the third article in a series of six articles on terminology used with cloud and microservices. The first two article can be found here:

Microservices Architectures: Centralized Configuration and Config Server

In this article, we explore the concept of centralized configuration in the context of microservices.

You Will Learn

  • What a cloud config server is.
  • What centralized configuration is.
  • Why we need centralized configuration in a microservices architecture.
  • What the important features of Spring Cloud Config Server are.

Cloud and Microservices Terminology

This is the second article in a series of six articles on terminology used with cloud and microservices. Part 1 is available here: