ls -l 技術/
技術 (53)
2025
-
MySQL Row Constructor Expression
MySQL/MariaDB 中,Row Constructor Expression 是一種語法,用於同時處理多個列的值。它可以用來進行多列比較、插入多行數據、或作為查詢條件,這種語法在特定場景下非常有用。
2023
-
MySQL DataType / Schema CheatSheet
MySQL Schema CheatSheet 以及開發設計考量特性
2022
-
MySQL 字串(char/varchar) 欄位搜尋數字(integer)
一條用數字 id 查詢 varchar 欄位的 SQL 跑了近 2 分鐘。透過 profiling、show index 與 explain 找出吃不到 index 的原因。
2021
-
MySQL Index Cardinality 索引基數
認識索引基數,以及判斷 Index 是否會被 Query Optimizer 使用的依據
-
資料庫到底要不要做正規化
Normalize until it hurts, denormalize until it works. 資料庫的設計有個基本的作法是 - 正規化
-
優雅導入 PHP CS_Sniffer 至 Legacy 專案
Linter 如何優雅導入 Legacy 專案而不造成團隊太大的開發負擔
-
解密 PHP_CodeSniffer Configuration File
解密 PHP CodeSniffer 的 XML configuration file,針對自己團隊專案作客製化
-
從 MVC 談後端作業流 (Backend HTTP Workflow)
以 MVC 框架角度切入探討專案的可維護性,整理歸後端的作業流 Backend HTTP Workflow 進而釐清元件的邊界切分,使軟體設計更接近 SOLID、DRY、KISS 原則,同時使專案更容易修改、測試增進軟體專案品質
-
PHP Linter 和 Formater 選擇
剖析常見的 PHP Linter 和 Foramter 工具,協助選擇適應自己及團隊的開發工具。
-
ElasticSearch 維運 - Shrink Shard
在 ElasticSearch 中如何縮小已經存在的 Indices Shard 個數
-
ElasticSearch 維運 - Reindex
在 ElasticSearch 使用 Reindex 的時機跟作法
-
ElasticSearch 維運 - Forced Merge
在 ElasticSearch 中改變 Alias Pointer
-
ElasticSearch 維運 - Change Alias Pointer
在 ElasticSearch 中改變 Alias Pointer
-
ES Merge multiple indices in one by reindex API
如何透過 Reindex 以及 alias 搭配不停機 indices 合併?
2020
-
Elasticsearch 維運紀錄 - Troubleshooting
Elasticsearch 維運常用的 RESTful API 組合小抄,從查看 Elasticsearch 系統狀態到操作資料處理,以及相關調整經驗包含ES Shard 以及 Replica 參數設定造成的影響等等,並提及常見的 ES troubleshooting 相關經驗分享
-
Pytest Example and Cheat Sheet 小抄
Pytest 常用情境小抄: fixture, mark.parametrize, raises(Exception), capsys.readouterr(), side_effect, mocker object assertion
2019
-
Spark Cheat Sheet for Scala/Python
Spark Cheat Sheet for scala and python
-
AWS ElasticSearch 升級紀錄 5/6
Upgrading ElasticSearch from 5 to 6
-
導入 Python Linter - 使用 Prospector
如何導入 Python Linter Tool,使用 Prospector 多合一整合工具守護你的程式碼品質
-
Clarify Three Types of Method in Python
釐清三種 Python Method 呼叫方式,Instance Method, Class Method, Static Method 差異