til icon indicating copy to clipboard operation
til copied to clipboard

A collection of short articles about things I have learned

TIL (Today I Learned)

TIL is a collection of the things that I learned today. The contents can be anything.


Categories

  • Arcus
  • Benchmark
  • CPU
  • DBMS
  • Docker
  • Git
  • Go
  • GPU
  • Hadoop
  • IPL
  • LightningDB
  • Linux
  • MariaDB
  • MyRocks
  • MySQL
  • NVRAM
  • Oracle
  • Percona
  • PostgreSQL
  • PMDK
  • Predix
  • RocksDB
  • Rockset
  • Spark
  • SSD
  • TensorFlow
  • Vim
  • Zeppelin
  • Zero

Arcus

  • How to install Arcus on Ubuntu 16.04
  • How to install Arcus-memcached on Ubuntu 16.04
  • Arcus persistence :kr:
  • Separation of cmdlogbuf module into two modules :kr:

Benchmark

  • tpcc-mysql: Quick start guide
  • How to install SysBench 0.5 on Ubuntu
  • TPC-E vs. TPC-C :kr:
  • How to install BenchmarkSQL for Oracle
  • How to install BenchmarkSQL for PostgreSQL
  • How to install TPC-E on Ubuntu (for MySQL)
  • How to install LinkBench on Ubuntu
  • How to install TPC-H for Oracle
  • Summary of LinkBench for MySQL
  • How to install YCSB for RocksDB
  • How to install TPC-H for PostgreSQL

CPU

  • AMD uProf :kr:

DBMS

  • A comparison of buffer management algorithms between three DBMSs :kr:
  • Database Meets AI: A Survey :kr:

Docker

  • How to install MySQL and use a Docker volume on Docker
  • How to use lb-mysql on IOD SSD
  • Container networking :kr:
  • How to use Docker Hub :kr:

Git

  • Rename folders with git
  • Modify previous commit messages
  • Remove a file added in an older commit
  • Clone a single branch in Git

Go

GPU

  • How to install CUDA on Ubuntu
  • Nvidia Nsight Systems :kr:

Hadoop

  • How to install Hadoop 3 (with Yarn) on Ubuntu
  • Hadoop commands

IPL

  • Basic concept :kr:
  • Merge operation

LightningDB

  • How to deploy LightningDB
  • How to monitor the status of LTDB clusters
  • How to reset a LTDB cluster

Linux

  • Direct I/O
  • Synchronous I/O
  • Extracts certain rows from a file
  • AWK command
  • How to control cores via bash command
  • Copy and paste in tmux
  • Extract multiple lines from a file
  • How to add a kernel boot parameter
  • perf and FlameGraph :kr:
  • How to create software RAID 0 with mdadm
  • How to upgrade NVMe SSD firmware on Linux
  • How to replace the string \n with an actual newline
  • Redirect stderr to stdout
  • How to use ftrace
  • NVMe Device Driver
  • Disk Readahead

MariaDB

  • MariaDB S3 engine :kr:

MyRocks

  • Build and install the source code (5.6)
  • How to install SysBench 1.0 for MyRocks
  • How to install tpcc-mysql for MyRocks
  • How to monitor MyRocks

MySQL

  • Build and install the source code (5.6)
  • Run MySQL
  • The InnoDB recovery process
  • Types of shutdown
  • Crash recovery
  • Redo
  • Undo
  • What happens when you UPDATE
  • Change buffer
  • MySQL connection error
  • Log flush at commit
  • innodb_flush_method
  • Update root password in MySQL 5.7
  • Build and install the source code (5.7)
  • Build and install the source code (8.0)
  • Useful MySQL performance tuning tips
  • Curated contents about flushing mechanisms
  • Monitoring InnoDB mutex and lock waits
  • How InnoDB performs a checkpoint :kr:
  • InnoDB adaptive flushing :kr:
  • innodb_ruby :kr:
  • Punch hole :kr:
  • Mid-point insertion strategy in MySQL/InnoDB
  • All about InnoDB flushing :kr:
  • fallocate() and ftruncate() in MySQL/InnoDB
  • Code related to log files
  • InnoDB page splits
  • MySQL/InnoDB page checksum
  • Doublewrite buffer
  • Understanding InnoDB Lock Stats :kr:
  • How to get the LBA of DWB
  • InnoDB Flushing and Checkpoints :link:
  • Secondary Index Search in InnoDB :link:
  • MySQL Space Management :link:
  • MySQL Buffer Management :link:
  • Temporary Tablespaces :kr:

NVRAM

  • Types of NVDIMM :kr:

Oracle

  • Install Oracle 12c on Ubuntu
  • How to clean UNDO tablespaces
  • Solution to ORA-03113
  • How to use Statspack
  • How to resize the online redo log files
  • Free buffer waits in Oracle
  • Recovery after losing UNDO tablespace
  • How to resize the SGA
  • Understanding Oracle wait events :kr:
  • Oracle encoding error :kr:
  • How to add a datafile to a tablespace
  • How to relocate files in Oracle

Percona

  • Multi-threaded LRU flushing
  • innodb_empty_free_list_algorithm
  • Build and install the source code (5.6)
  • Installing Percona Monitoring and Management (PMM) on Ubuntu

PMDK

  • Building PMDK on Ubuntu

PostgreSQL

  • PostgreSQL installation from source code
  • Buffer management of PostgreSQL :kr:
  • PostgreSQL hit ratio

Predix

  • Predix overview :kr:

RocksDB

Rockset

  • Remote Compactions in RocksDB-Cloud :kr:

Spark

  • How to install Spark 3 on Ubuntu
  • How to install Spark RAPIDS
  • How to run Spark Executor via command line

SSD

  • Basic operations
  • FTL (Flash Translation Layer)
  • Device initialization
  • Logical block mapping
  • Garbage collection
  • TRIM
  • Over-provisioning
  • Writes
  • Reads
  • Concurrent reads and writes
  • How to get SMART information for NVMe

TensorFlow

  • How to use Slim
  • How to install TensorFlow GPU on Ubuntu

Vim

  • Search and replace

Zeppelin

  • How to install Zeppelin

Zero

  • Buffer Manager :kr:

About

I borrowed this idea from thoughtbot/til and jbranchaud/til.