Photo by Joshua Sortino on Unsplash

Table of Contents

  1. Disk — RAID and Volume
  2. File Storage, Block Storage, and Object Storage
  3. Hadoop Distributed File System (HDFS)
  4. Storage comparisons
  5. Choose the right datastore
  6. Storage options in the Cloud

1. Disk — RAID and Volume

1.1 RAID

RAID (Redundant Array of Inexpensive Disks or Redundant Array of Independent Disks) is a data storage virtualization technology that combines multiple physical…

Photo by Anne Nygård on Unsplash


The main functionality of a standard system:

  • Store data so that they, or another application, can find it again later (databases)
  • Remember the result of an expensive operation, to speed up reads (caches)
  • Allow users to search data by keyword or filter it in various ways (search indexes)
  • Send a…

Photo by Science in HD on Unsplash


Server provisioning is the process of setting up a server to be used in a network based on the required resources. Provisioning can encompass all of the operations needed to create a new machine and bring it to a working state and includes defining the desired state of the system…

Photo by isword on Unsplash


  1. Write InSpec Profiles once and use them everywhere
  2. Test-Driven Development using InSpec Profiles
  3. Test locally and build/release using CI/CD pipelines
  4. Use chef_cookbook_generator to generate the cookbooks and policies
  5. Use data bags even with kitchen test
  6. Use Azure DevOps as repositories and CI/CD pipelines
  7. Use kitchen-azurerm as the test driver
  8. Use…

Photo by timJ on Unsplash

When we practice solving coding problems, everyone may face problems that ask us to find the longest *** for the given input and logic, many know there are techniques to solve it, after solving quite a few them, I’ like to share what I have learned.

General Tips and Techniques

Generally, we can use…

Table of Contents

  1. Concurrency
  2. Networking
  3. Abstraction
  4. Read-world performance and estimation
  5. Map-reduce
  6. Hadoop and Spark

1. Concurrency

1.1 Threads and processes

  • A thread is a basic unit of CPU utilization. It is also referred to as a “lightweight process”.
  • A process is an instance of a computer program that is being executed. It contains the program code and its current…

Larry | Peng Yang

Software Engineer in Tokyo. Aim to understand computer science very well. LinkedIn:

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store