SlideShare a Scribd company logo
1 of 117
Download to read offline
Modern Web 2016
恰如其分的 MySQL 設計技巧
Ant
yftzeng@gmail.com
2016-08-24
2/117
程式開發 X 資訊安全 X 智慧財產權 X 創業
Profile
3/117
剛好符合分寸。形容做事、說話十分恰當。
4/117
Premature optimization is the root of all evil
過早最佳化是萬惡的根源
- Donald Knuth -
5/117
架構是演進的,預想有益身心健康
預先策想
6/117
GB
TB
PB
MB
7/117
新平台預計下一季上線。
營運預計導入多少流量?
我可以先行準備。
有流量再說,快就好。
那我之後 ( 有空 ) 再做。
新平台上線
8/117
為什麼網站很慢又常當機?
調整架構需要一週。
這麼久?不能快點嗎?
沒有辦法 ...
上線一週後
9/117
MVP 若沒有控制好,技術債將迅速增長
Minimum Viable Product
先前程式常不能用
遺舊程式不忍棄之
結構變動反覆無常
10/117
只做最低限度產品 (MVP)
最終得到的可能是壞產品
11/117
Pivot
ObjectGo
✖
✖
✖
✖
✖
Research Development
12/117
2015
➊ 架構先決
無視人員、流程只講技術,是耍白痴
架構會影響公司文化、商業擴展;思維更要超越程式碼層次
13/117
2015
➋ 沒有完美的架構,只有最適的架構
無視場景只講架構,是耍流氓
若無法舉出架構的缺陷,代表你還無法掌握
盲目套用別人的架構,並不會讓你變得跟他一樣好
14/117
2015
➌ 架構是演進的,預想但不過早調優
無視未來只求現有,是耍自閉
兵馬未動,糧草先行,預想下一步,下下一步,甚至下下下一步 ...
15/117
Monolith
Microservices
SOA
Nanoservices
Picoservices ?
16/117
Business
License
Elastic business
Workload
Technology
Scale-up
Application
Connection
Database
File system
OS Kernel
Hardware
Scale-out
Replication
Clustering
Sharding
Disaster Recovery
Multi Regional Resiliency
CONSILIENCE
Architecture
and more ...
17/117
Business
License
Elastic business
Workload
Technology
Scale-up
Application
Connection
Database
File system
OS Kernel
Hardware
Scale-out
Replication
Clustering
Sharding
Disaster Recovery
Multi Regional Resiliency
CONSILIENCE
Architecture
and more ...
18/117
License
19/117
License
程式原始碼是否在意授權對方修改、散布?
GNU GPL 的互惠性 / 感染性
散布于對方時,強制啟動授權
( 接案 ) 軟體交付時
嵌入式設備
自己的程式 GPL 程式
GPL 程式
20/117
License
C/Java + MySQL/Percona →
PHP/PDO + MySQL/Percona →
C/Java/PHP + MariaDB →
自己的程式 Database
GPL 程式
21/117
Business
License
Elastic business
Workload
Technology
Scale-up
Application
Connection
Database
File system
OS Kernel
Hardware
Scale-out
Replication
Clustering
Sharding
Disaster Recovery
Multi Regional Resiliency
CONSILIENCE
Architecture
and more ...
22/117
當業務需求變更程式設計時
預想但不過早調優
總工程師不該把每次新需求都認為獨立需求
( 多想二分鐘,團隊可以不必自虐 )
Elastic business
23/117
狀態
原表格設計
Elastic business
id name ... is_deleted
1 Apple ... 0
2 Banana ... 1
24/117
狀態
新業務需要儲存「鎖定」狀態
Elastic business
id name ... is_deleted
1 Apple ... 0
2 Banana ... 1
id name ... is_deleted is_locked
1 Apple ... 0 1
2 Banana ... 1 0
25/117
狀態
其實若狀態是互斥的,則可以合併
Elastic business
id name ... status
1 Apple ... 0
2 Banana ... 1
id name ... is_deleted is_locked
1 Apple ... 0 1
2 Banana ... 1 0
{ 0: deleted, 1: enabled, 2: locked }
26/117
標籤雲
原表格設計
Elastic business
id name tag1
1 Apple admin
2 Banana reporter
3 Cherry reporter
SELECT * FROM {Table}
WHERE tag1 = ‘admin’
27/117
標籤雲
新增標籤
Elastic business
id name tag1 tag2 tag3
1 Apple admin reporter programmer
2 Banana reporter programmer NULL
3 Cherry reporter admin NULL
SELECT * FROM {Table}
WHERE (tag1 = ‘admin’ OR tag2 = ‘admin’ OR tag3 = ‘admin’)
AND (tag1 = ‘reporter’ OR tag2 = ‘reporter’ OR tag3 = ‘reporter’)
SELECT * FROM {Table}
WHERE ‘admin’ IN (tag1, tag2, tag3)
AND ‘reporter’ IN (tag1, tag2, tag3)
ALTER TABLE !!
28/117
Tag
Elastic business
id tag
1 admin
1 reporter
1 programmer
2 reporter
... ...
新方法
標籤雲
id name X X X
1 Apple X X X
2 Banana X X X
SELECT * FROM {Table}
INNER JOIN ‘Tag’ AS t1 USING (id)
INNER JOIN ‘Tag’ AS t2 USING (id)
WHERE t1.tag = ‘admin’
AND t2.tag = ‘reporter’
29/117
Elastic business
或是 M:N
標籤雲
id name
1 Apple
2 Banana
id tag_id
1 1
1 2
1 3
2 2
2 3
tag_id name
1 admin
2 reporter
3 programmer
30/117
Elastic business
廣告需求
營運有新的需求,受眾在
一天內不要看到相同廣告。
瞭解,預計一個工作天。
第一天
31/117
Elastic business
廣告需求
營運有新的需求,受眾在
小時內不要看到相同廣告。
瞭解,預計二個工作天。
第二天
時間粒度不同
32/117
Elastic business
廣告需求
營運有新的需求,受眾在
一天內不要看到同類廣告。
瞭解,預計八個工作天。
第三天
目標粒度不同
不能一次講清楚嗎?
33/117
Elastic business
廣告需求
受眾在 M 時間內不要看到 N 廣告
預想
該需求的延伸會是什麼?
M → 年 / 季 / 月 / 週 / 時 / 分 / 秒
N → 相同 / 同類
看到的次數? 1/2/3...
裝置有別?
區域?
廣告主屬性?
34/117
Business
License
Elastic business
Workload
Technology
Scale-up
Application
Connection
Database
File system
OS Kernel
Hardware
Scale-out
Replication
Clustering
Sharding
Disaster Recovery
Multi Regional Resiliency
CONSILIENCE
Architecture
and more ...
35/117
Workload
Processing Intensive Capacity
CPU intensive
Memory intensive
Storage/IO intensive
Bandwidth intensive
OLTP
OLAP
Data warehouse
Throughput
Latency
Memory footprint
Service-level agreement
Bond
Performance
Security
Cost restriction
36/117
OLTP (On-Line Transaction Processing)
➊ 應用 : Customer-oriented
➋ 回應時間 (response time) 要求較高。
➌ 併發 (concurrency) 要求較多。
➍ 資料處理量 (volume) 少。
➎ 交易 (transaction) 完整性高。
➏ 安全性 (security) 要求較高。
Workload
Processing
37/117
Workload
OLAP (On-Line Analytical Processing)
➊ 應用 : Market-oriented
➋ 回應時間 (response time) 要求較低。
➌ 併發 (concurrency) 要求較少。
➍ 資料處理量 (volume) 多。
➎ 交易 (transaction) 完整性低。
➏ 安全性 (security) 要求較低。
Processing
38/117
Workload
Data warehouse
➊ 應用 : Subject-oriented
➋ 熱資料 (Hot) 本地、快取、粒度、一致性。
➌ 暖資料 (Warm) 分布、快取、複製。
➍ 冷資料 (Cold) 索引、壓縮、合併、備份。
Processing
39/117
Workload
Intensive
BandwidthCPU
Memory Storage/IO
40/117
Workload
Capacity
Latency
Memory
footprint
Trade-off
Throughput
41/117
2015
High throughput Low latency
42/117
2015
千萬人同時在線
電子商務、線上媒體
低延遲回應
廣告平台 (30ms) 、高頻交易 (0.5~3ms) 、醫療等關鍵設備
43/117
機房只能給你 4U 共 2 台機器,
請您務必提供每秒 1 萬次的處理效能。
每次請求包括產生 46 張圖片及 46 次加密演算法
Workload
Capacity
44/117
Workload
Capacity
45/117
Workload
Capacity
Optimal capacity
46/117
Workload
Capacity
Optimal capacity
47/117
Workload
Capacity
Language / Framework / Algorithm / Hardware
300 Server → Performance +10x → 30 Server
(Price cost reduction)
(Maintenance cost reduction)
48/117
Workload
Bond
Security
Cost
Restriction
Trade-off
Performance
49/117
Business
License
Elastic business
Workload
Technology
Scale-up
Application
Connection
Database
File system
OS Kernel
Hardware
Scale-out
Replication
Clustering
Sharding
Disaster Recovery
Multi Regional Resiliency
Architecture
and more ...
CONSILIENCE
50/117
Scale-up
Hardware
CPU
➊ 快取對 InnoDB 影響很大 (CPU Cache) 。
➋ 超執行緒 (Hyper threading) 有助益。
➌ 通常啟用 Node Interleaving ,可避免 NUMA 問題。
➍ 多核心處理
MySQL 5.5
最佳表現為 16 核心,同時連線數 128 。
MySQL 5.6
支援至少 64 核心,同時連線數處理不受影響;
但 RW 在同時處理 128 連線數後顯著下降。
MySQL 5.7
支援至少 64 核心,同時連線數處理不受影響;
解決 RW 同時處理連線數下降問題。
51/117
Scale-up
Hardware
CPUs
North Bridge
(MCH)
Memory
PCIe
FSB (10.6 GB/s)
Intel Xeon (Older)
CPUs
North Bridge
(IOH)
Memory
PCIe
QBI (25.6 GB/s)
Intel Xeon (Newer)
52/117
Scale-up
Hardware
Memory
➊ 原則上愈多愈好
➋ 確保能把所需資料表全儲存在記憶體中。
53/117
Scale-up
Hardware
Storage
➊ 原則上, PCIe NVMe SSD > SSD > HDD 。
Ref: http://agigatech.com/blog/ssds-some-cold-hard-numbers-to-flavor-your-opinions/
54/117
Scale-up
Hardware
Storage
➊ 原則上, PCIe NVMe SSD > SSD > HDD 。
➋ 區塊大小 (Block size) 對 SSD 很重要。
55/117
Ref: http://www.thessdreview.com/our-reviews/intel-ssd-dc-p3608-review-1-6tb-over-5gbs-and-850k-iops/2/
56/117
Ref: http://jdevelopment.nl/2009/02/
Bandwidth
IOPS
57/117
Ref: http://jdevelopment.nl/2009/02/
Bandwidth
IOPS
ThroughputLatency
58/117
Scale-up
Hardware
Storage
➊ 原則上, PCIe NVMe SSD > SSD > HDD 。
➋ 區塊大小 (Block size) 對 SSD 很重要。
➌ 循序寫 +RAID 的 HDD 不比 SSD 差。
59/117Ref: SSD Deployment Strategies for MySQL (2010-04-15).pdf (p16)
Ref: http://yoshinorimatsunobu.blogspot.tw/2009/05/tables-on-ssd-redobinlogsystem.html
RAID-10 > RAID-5 (RAID 控制器很重要 )
battery backed up write cache (BBWC)
60/117
Scale-up
OS Kernel
➊ vm.swappiness = 1
61/117
Scale-up
OS Kernel
➊ vm.swappiness = 1
➋ vm.dirty_background_ratio / vm.dirty_ratio
62/117
Scale-up
OS Kernel
➊ vm.swappiness = 1
➋ vm.dirty_background_ratio / vm.dirty_ratio
➌ IO scheduler (DEADLINE or NOOP)
63/117
Scale-up
File system
OLTP
Ext4 / XFS
Journal / O_DIRECT
COMPRESSION
...
64/117
Scale-up
Database
Design
Configuration
MT-malloc: jemalloc / tcmalloc / etc.
DB Engine: InnoDB / TokuDB / RocksDB
Schema design / ID
Index
Partitions
default_time_zone = ‘+00:00’
max_connections
sort_buffer_size
join_buffer_size
read_buffer_size
innodb_use_native_aio = 1
innodb_file_per_table = 1
innodb_buffer_pool_size = { 65~80% of Mem }
innodb_thread_concurrency = { 2xCPUs }
innodb_read_io_threads = { CPUs }
innodb_write_io_threads = { CPUs }
65/117
Scale-up
Database
OLTP
innodb_flush_method
innodb_max_dirty_pages_pct
innodb_page_size
innodb_io_capacity
innodb_flush_neighbors
innodb_random_read_ahead
innodb_read_ahead_threshold
...
66/117
Scale-up
Connection
Connection pool (Client/Application)
➊ 不是所有應用程式都支援。
➋ 無法得知伺服器的狀態及承載。
➌ 遭遇錯誤時,必須執行完整的資源清理。
➍ 會保持連線,佔用伺服器連線數及線程快取。
67/117
Scale-up
Connection
DatabaseApplication
架構問題
最大連線數 100 最大連線數 200
68/117
Scale-up
Connection
DatabaseApplication
架構問題
最大連線數 200
{ 剩餘連線數 100}
最大連線數 100
keep
69/117
Scale-up
Connection
DatabaseApplication
架構問題
最大連線數 100
Application
最大連線數 100
keep
keep
最大連線數 200
{ 剩餘連線數 0}
70/117
Scale-up
Connection
DatabaseApplication
架構問題
最大連線數 100
Application
最大連線數 100
Application
最大連線數 100
keep
keep
最大連線數 200
{ 剩餘連線數 0}
71/117
Scale-up
Connection
架構問題
MySQL
➊ 線程模式。
➋ 不需 Connection pool 就可以支持高併發。
➌ 支持短連接使用資料庫。
➍ 新版 5.7 建立連線的開銷更少。
5.6 版的 62.5% ;
5.5 版的 40% 。
72/117
Scale-up
Application
效能通常有 99% 的問題在於 Application
➊ N+1 queries / ORM
➋ Bad SQL
➌ Bad Schema Design
➍ Big SQL
➎ Big Transaction
➏ Big Batch
73/117
Scale-up
Application
效能通常有 99% 的問題在於 Application
➊ N+1 queries / ORM
➋ Bad SQL
➌ Bad Schema Design
➍ Big SQL
➎ Big Transaction
➏ Big Batch
74/117
Scale-up
Application
(MySQL) CHAR vs. VARCHAR
➀ 如果更新頻繁且長度不一, CHAR 通常比較快。
➁ 在 MySQL 5.7.7 之後, CHAR 通常比 VARCHAR 快。
75/117
Scale-up
Application
(MySQL) VARCHAR vs. VARCHAR
➀ 某些編碼下, VARCHAR(760) 與 VARCHAR(770) 快得多。
➁ 某些編碼下, VARCHAR(190) 比 VARCHAR(200) 快得多。
➂ 不過在 MySQL 5.7.7 之後,前兩者幾乎沒什麼差別。
雖然只差 10 ,但效能在這長度間有個跳躍
雖然只差 10 ,但效能在這長度間有個跳躍
76/117
Scale-up
Application
INDEX
➀ Primary Index 對 MySQL 很重要,循序式比亂序式快。
➁ Index 愈多不一定愈好。
➂ Composite Index 需善用。
77/117
Business
License
Elastic business
Workload
Technology
Scale-up
Application
Connection
Database
File system
OS Kernel
Hardware
Scale-out
Replication
Clustering
Sharding
Disaster Recovery
Multi Regional Resiliency
Architecture
and more ...
CONSILIENCE
78/117
Replication
Scale-out
Master
ReplicaReplica Replica
79/117
Replication
Scale-out
Master
ReplicaReplica Replica
Applications
writeread
80/117
Clustering
Scale-out
81/117
2015
Database
#1
Database
#2
Database
#3
...
Applications
RW RW RW RW
Master-Master
82/117
2015
Database
#1
Database
#2
Database
#3
...
Applications
RW RW RW RW
UPDATE t
SET …
WHERE id = 1
T1
Master-Master
UPDATE t
SET …
WHERE id = 1
T2
83/117
2015
Database
#1
Database
#2
Database
#3
...
Applications
RW RW RW RW
UPDATE t
SET …
WHERE id = 1
T1
Master-Master
UPDATE t
SET …
WHERE id = 1
T2
100 → 200 100 → 200
84/117
2015
Database
#1
Database
#2
Database
#3
...
Applications
RW RW RW RW
UPDATE t
SET …
WHERE id = 1
T1
Master-Master
UPDATE t
SET …
WHERE id = 1
T2
100 → 200 100 → 200
Deadlock / Rollback
85/117
2015
Database
#1
Database
#2
Database
#3
...
Applications
Master-Master
Load balancing
W R
RR
86/117
2015
Database
#1
Database
#2
Database
#3
...
Applications
UPDATE t
SET …
WHERE id = 1
T1
Master-Master
SELECT ...
T2
W R
RR
T3
SELECT ...
T4
SELECT ...
T5
Load balancing
87/117
2015
Database
#1
Database
#2
Database
#3
...
Applications
UPDATE t
SET …
WHERE id = 1
T1
Master-Master
SELECT ...
T2
W R
RR
T3
SELECT ...
T4
SELECT ...
T5
Load balancingLoad balancing
HA
Monitor
88/117
2015
Percona XtraDB Cluster: Multi-node writing and Unexpected deadlocks
2012-08-17
https://www.percona.com/blog/2012/08/17/percona-xtradb-cluster-multi-node-writing-and-unexpected-deadlocks/
Avoiding Deadlocks in Galera - Set up HAProxy for single-node writes
and multi-node reads
2013-09-17
http://www.severalnines.com/blog/avoiding-deadlocks-galera-set-haproxy-single-node-writes-and-multi-node-reads
Optimizing Percona XtraDB Cluster for write hotspots
2015-06-03
https://www.percona.com/blog/2015/06/03/optimizing-percona-xtradb-cluster-write-hotspots/
89/117
2015
Database
#1
Database
#2
Database
#3
...
Applications
UPDATE t
SET …
WHERE id = 1
T1
Master-Master
SELECT ...
T2
W R
RR
T3
SELECT ...
T4
SELECT ...
T5
Load balancingLoad balancing
HA
Monitor
Hot-Spot
1
Complexity
2
90/117
2015
Database
#1
Database
#2
Database
#3
...
Applications
RW RW RW RW
Master-Master
Smart Client
91/117
Sharding
Scale-out
92/117
Disaster Recovery
Scale-out
93/117
Disaster Recovery
Scale-out
Latency ?
Bandwidth ?
94/117
Multi Regional Resiliency
Scale-out
Ref: https://cloud.google.com/solutions/scalable-and-resilient-apps
95/117
Multi Regional Resiliency
Scale-out
Ref: https://securosis.com/blog/resilient-cloud-network-architectures-design-patterns
96/117
Business
License
Elastic business
Workload
Technology
Scale-up
Application
Connection
Database
File system
OS Kernel
Hardware
Scale-out
Replication
Clustering
Sharding
Disaster Recovery
Multi Regional Resiliency
CONSILIENCE
Architecture
and more ...
97/117
大數據
BigData
98/117
Ref: https://www.talend.com/blog/2015/07/15/hadoop-summit-2015-takeaway-the-lambda-architecture
99/117
Ref: http://www.slideshare.net/akirillov/data-processing-platforms-architectures-with-spark-mesos-akka-cassandra-and-kafka#p4
100/117
Ref: https://medium.baqend.com/nosql-databases-a-survey-and-decision-guidance-ea7823a822d
101/117
2015
我們很少在大數據架構中
見到 RDBMS 的蹤影
但 Google/Facebook/Twitter/Uber/Alibaba ...
102/117
大數據
BigData
微服務
Micro-services
X
103/117
大數據
BigData
Hadoop (Java)
Spark (Java/Scala)
Cassandra (Java)
Kafka (Java/Scala)
Pig (Java)
Hive (Java)
HBase (Java)
Flink (Java)
ElasticSearch (Java)
JVM 的天下
104/117
Ref: http://eugenedvorkin.com/seven-micro-services-architecture-advantages/
105/117
部署快
( 起滅快 )
效能高
( 機數少 )
開發速
( 碼量少 )
體積小
編譯式
GC編譯式
JIT
保護編程下限
(IDE/ 除錯 )
保障破壞下限
106/117
部署快
( 起滅快 )
效能高
( 機數少 )
開發速
( 碼量少 )
體積小
編譯式
GC編譯式
容器化
Java 混合雲
JIT
保護編程下限
(IDE/ 除錯 )
保障破壞下限
107/117
Java
Container Size
Oracle JDK (~350 MB)
Oracle JRE (~70 MB)
Oracle Server JRE (~70 MB)
Alpine Java Docker Container ?
只是 JRE 本身
108/117
Java
Container Size
docker-alpine-java
<snip>
curl -jksSLH "Cookie: oraclelicense=accept-securebackup-cookie" ...
rm -rf /opt/jdk/*src.zip 
/opt/jdk/lib/missioncontrol 
/opt/jdk/lib/visualvm 
/opt/jdk/lib/*javafx* 
/opt/jdk/jre/plugin 
/opt/jdk/jre/bin/javaws 
...
</snip>
Ref: https://github.com/anapsix/docker-alpine-java/blob/master/8/92b14/jdk/standard/Dockerfile
109/117
Business
License
Elastic business
Workload
Technology
Scale-up
Application
Connection
Database
File system
OS Kernel
Hardware
Scale-out
Replication
Clustering
Sharding
Disaster Recovery
Multi Regional Resiliency
License
CONSILIENCE
and more ...
110/117
Java
▐ 問題一 :
Oracle/Java 安裝前需人工同意 Oracle/Java 授權。
▐ 問題二
Oracle/Java 為整體不可分割之授權。
<snip>
(i) you distribute the Redistributables complete and unmodified,
and only bundled as part of Programs,
</snip>
Ref: http://www.oracle.com/technetwork/java/javase/terms/license/index.html
License
Oracle Java 部署時,不得刪減任何程式及文件
111/117
Java
▐ 問題一 :
Oracle/Java 安裝前需人工同意 Oracle/Java 授權。
▐ 問題二
Oracle/Java 為整體不可分割之授權。
<snip>
(i) you distribute the Redistributables complete and unmodified,
and only bundled as part of Programs,
</snip>
Ref: http://www.oracle.com/technetwork/java/javase/terms/license/index.html
License
Oracle Java 部署時,不得刪減任何程式及文件
OpenJDK
( openjdk-7-jre-headless )
有些人不敢用
112/117
部署快
( 起滅快 )
效能高
( 機數少 )
開發速
( 碼量少 )
體積小
編譯式
GC編譯式
容器化
Java 混合雲
JIT
保護編程下限
(IDE/ 除錯 )
保障破壞下限
113/117
部署快
( 起滅快 )
效能高
( 機數少 )
開發速
( 碼量少 )
體積小
編譯式
GC編譯式
容器化
Java 混合雲
JIT
保護編程下限
(IDE/ 除錯 )
保障破壞下限
Go
114/117
大數據
BigData
小結
▐ 未捨棄既有累積的知識 (RDBMS)
▐ 降低開發與維運人員的焦慮感 ( 專注,技術深化 )
▐ 系統異質性低 ( 出錯少,除錯易 )
▐ 依然相容現行大數據架構
▐ 支持容器化、混合雲、私有雲 ( 顧問性質 )
▐ 大數據核心與對外服務層權責分離 ( 兼具安全性 )
▐ 其實大多時候我們不需要大數據解決方案
資料多≠需要大數據解決方案,或許只是垃圾數據多
微服務
Micro-
services
處理慢≠需要大數據解決方案,大多都是程式差,架構弱
115/117
GoGo
HDFS/RDBMS
HDFS/RDBMS
Go
MySQL
MySQL
116/117
2015
➊ 架構先決
➋ 沒有完美的架構,只有最適的架構
➌ 架構是演進的,預想但不過早調優
117/117
yftzeng@gmail.com
https://www.facebook.com/yftzeng.tw
Contact

More Related Content

What's hot

KubeCon EU 2016: Full Automatic Database: PostgreSQL HA with Kubernetes
KubeCon EU 2016: Full Automatic Database: PostgreSQL HA with KubernetesKubeCon EU 2016: Full Automatic Database: PostgreSQL HA with Kubernetes
KubeCon EU 2016: Full Automatic Database: PostgreSQL HA with KubernetesKubeAcademy
 
Linux tuning to improve PostgreSQL performance
Linux tuning to improve PostgreSQL performanceLinux tuning to improve PostgreSQL performance
Linux tuning to improve PostgreSQL performancePostgreSQL-Consulting
 
SSD Deployment Strategies for MySQL
SSD Deployment Strategies for MySQLSSD Deployment Strategies for MySQL
SSD Deployment Strategies for MySQLYoshinori Matsunobu
 
Keepalived+MaxScale+MariaDB_운영매뉴얼_1.0.docx
Keepalived+MaxScale+MariaDB_운영매뉴얼_1.0.docxKeepalived+MaxScale+MariaDB_운영매뉴얼_1.0.docx
Keepalived+MaxScale+MariaDB_운영매뉴얼_1.0.docxNeoClova
 
Streaming replication in practice
Streaming replication in practiceStreaming replication in practice
Streaming replication in practiceAlexey Lesovsky
 
M|18 Deep Dive: InnoDB Transactions and Write Paths
M|18 Deep Dive: InnoDB Transactions and Write PathsM|18 Deep Dive: InnoDB Transactions and Write Paths
M|18 Deep Dive: InnoDB Transactions and Write PathsMariaDB plc
 
Spark performance tuning - Maksud Ibrahimov
Spark performance tuning - Maksud IbrahimovSpark performance tuning - Maksud Ibrahimov
Spark performance tuning - Maksud IbrahimovMaksud Ibrahimov
 
Almost Perfect Service Discovery and Failover with ProxySQL and Orchestrator
Almost Perfect Service Discovery and Failover with ProxySQL and OrchestratorAlmost Perfect Service Discovery and Failover with ProxySQL and Orchestrator
Almost Perfect Service Discovery and Failover with ProxySQL and OrchestratorJean-François Gagné
 
MySQL GTID 시작하기
MySQL GTID 시작하기MySQL GTID 시작하기
MySQL GTID 시작하기I Goo Lee
 
Memory Compaction in Linux Kernel.pdf
Memory Compaction in Linux Kernel.pdfMemory Compaction in Linux Kernel.pdf
Memory Compaction in Linux Kernel.pdfAdrian Huang
 
What is new in MariaDB 10.6?
What is new in MariaDB 10.6?What is new in MariaDB 10.6?
What is new in MariaDB 10.6?Mydbops
 
InnoDB Flushing and Checkpoints
InnoDB Flushing and CheckpointsInnoDB Flushing and Checkpoints
InnoDB Flushing and CheckpointsMIJIN AN
 
Bucket your partitions wisely - Cassandra summit 2016
Bucket your partitions wisely - Cassandra summit 2016Bucket your partitions wisely - Cassandra summit 2016
Bucket your partitions wisely - Cassandra summit 2016Markus Höfer
 
MySQL Buffer Management
MySQL Buffer ManagementMySQL Buffer Management
MySQL Buffer ManagementMIJIN AN
 
Building ZingMe News Feed System
Building ZingMe News Feed SystemBuilding ZingMe News Feed System
Building ZingMe News Feed SystemChau Thanh
 
Linux and H/W optimizations for MySQL
Linux and H/W optimizations for MySQLLinux and H/W optimizations for MySQL
Linux and H/W optimizations for MySQLYoshinori Matsunobu
 
Redo log improvements MYSQL 8.0
Redo log improvements MYSQL 8.0Redo log improvements MYSQL 8.0
Redo log improvements MYSQL 8.0Mydbops
 
Everything you always wanted to know about Redis but were afraid to ask
Everything you always wanted to know about Redis but were afraid to askEverything you always wanted to know about Redis but were afraid to ask
Everything you always wanted to know about Redis but were afraid to askCarlos Abalde
 
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScale
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScaleThe Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScale
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScaleColin Charles
 

What's hot (20)

KubeCon EU 2016: Full Automatic Database: PostgreSQL HA with Kubernetes
KubeCon EU 2016: Full Automatic Database: PostgreSQL HA with KubernetesKubeCon EU 2016: Full Automatic Database: PostgreSQL HA with Kubernetes
KubeCon EU 2016: Full Automatic Database: PostgreSQL HA with Kubernetes
 
Linux tuning to improve PostgreSQL performance
Linux tuning to improve PostgreSQL performanceLinux tuning to improve PostgreSQL performance
Linux tuning to improve PostgreSQL performance
 
SSD Deployment Strategies for MySQL
SSD Deployment Strategies for MySQLSSD Deployment Strategies for MySQL
SSD Deployment Strategies for MySQL
 
Keepalived+MaxScale+MariaDB_운영매뉴얼_1.0.docx
Keepalived+MaxScale+MariaDB_운영매뉴얼_1.0.docxKeepalived+MaxScale+MariaDB_운영매뉴얼_1.0.docx
Keepalived+MaxScale+MariaDB_운영매뉴얼_1.0.docx
 
Streaming replication in practice
Streaming replication in practiceStreaming replication in practice
Streaming replication in practice
 
M|18 Deep Dive: InnoDB Transactions and Write Paths
M|18 Deep Dive: InnoDB Transactions and Write PathsM|18 Deep Dive: InnoDB Transactions and Write Paths
M|18 Deep Dive: InnoDB Transactions and Write Paths
 
Spark performance tuning - Maksud Ibrahimov
Spark performance tuning - Maksud IbrahimovSpark performance tuning - Maksud Ibrahimov
Spark performance tuning - Maksud Ibrahimov
 
Almost Perfect Service Discovery and Failover with ProxySQL and Orchestrator
Almost Perfect Service Discovery and Failover with ProxySQL and OrchestratorAlmost Perfect Service Discovery and Failover with ProxySQL and Orchestrator
Almost Perfect Service Discovery and Failover with ProxySQL and Orchestrator
 
MySQL GTID 시작하기
MySQL GTID 시작하기MySQL GTID 시작하기
MySQL GTID 시작하기
 
Memory Compaction in Linux Kernel.pdf
Memory Compaction in Linux Kernel.pdfMemory Compaction in Linux Kernel.pdf
Memory Compaction in Linux Kernel.pdf
 
What is new in MariaDB 10.6?
What is new in MariaDB 10.6?What is new in MariaDB 10.6?
What is new in MariaDB 10.6?
 
CephFS Update
CephFS UpdateCephFS Update
CephFS Update
 
InnoDB Flushing and Checkpoints
InnoDB Flushing and CheckpointsInnoDB Flushing and Checkpoints
InnoDB Flushing and Checkpoints
 
Bucket your partitions wisely - Cassandra summit 2016
Bucket your partitions wisely - Cassandra summit 2016Bucket your partitions wisely - Cassandra summit 2016
Bucket your partitions wisely - Cassandra summit 2016
 
MySQL Buffer Management
MySQL Buffer ManagementMySQL Buffer Management
MySQL Buffer Management
 
Building ZingMe News Feed System
Building ZingMe News Feed SystemBuilding ZingMe News Feed System
Building ZingMe News Feed System
 
Linux and H/W optimizations for MySQL
Linux and H/W optimizations for MySQLLinux and H/W optimizations for MySQL
Linux and H/W optimizations for MySQL
 
Redo log improvements MYSQL 8.0
Redo log improvements MYSQL 8.0Redo log improvements MYSQL 8.0
Redo log improvements MYSQL 8.0
 
Everything you always wanted to know about Redis but were afraid to ask
Everything you always wanted to know about Redis but were afraid to askEverything you always wanted to know about Redis but were afraid to ask
Everything you always wanted to know about Redis but were afraid to ask
 
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScale
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScaleThe Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScale
The Proxy Wars - MySQL Router, ProxySQL, MariaDB MaxScale
 

Viewers also liked

談 Uber 從 PostgreSQL 轉用 MySQL 的技術爭議
談 Uber 從 PostgreSQL 轉用 MySQL 的技術爭議談 Uber 從 PostgreSQL 轉用 MySQL 的技術爭議
談 Uber 從 PostgreSQL 轉用 MySQL 的技術爭議Yi-Feng Tzeng
 
善用 MySQL 及 PostgreSQL - RDBMS 的逆襲 - part1
善用 MySQL 及 PostgreSQL - RDBMS 的逆襲 - part1善用 MySQL 及 PostgreSQL - RDBMS 的逆襲 - part1
善用 MySQL 及 PostgreSQL - RDBMS 的逆襲 - part1Yi-Feng Tzeng
 
淺入淺出 MySQL & PostgreSQL
淺入淺出 MySQL & PostgreSQL淺入淺出 MySQL & PostgreSQL
淺入淺出 MySQL & PostgreSQLYi-Feng Tzeng
 
資料庫索引數據結構及主鍵設計(b+tree)(part 1)
資料庫索引數據結構及主鍵設計(b+tree)(part 1)資料庫索引數據結構及主鍵設計(b+tree)(part 1)
資料庫索引數據結構及主鍵設計(b+tree)(part 1)Yi-Feng Tzeng
 
軟體接案自由職業者 (Freelancer) 意想不到的風險
軟體接案自由職業者 (Freelancer) 意想不到的風險軟體接案自由職業者 (Freelancer) 意想不到的風險
軟體接案自由職業者 (Freelancer) 意想不到的風險Yi-Feng Tzeng
 
2013-04-13_JSTW-security-for-frontend-engineer (前傳)
2013-04-13_JSTW-security-for-frontend-engineer (前傳)2013-04-13_JSTW-security-for-frontend-engineer (前傳)
2013-04-13_JSTW-security-for-frontend-engineer (前傳)Yi-Feng Tzeng
 
2016 ModernWeb 分享 - 恰如其分 MySQL 程式設計 (修)
2016 ModernWeb 分享 - 恰如其分 MySQL 程式設計 (修)2016 ModernWeb 分享 - 恰如其分 MySQL 程式設計 (修)
2016 ModernWeb 分享 - 恰如其分 MySQL 程式設計 (修)Win Yu
 
Enterprise Architecture Case in PHP (MUZIK Online)
Enterprise Architecture Case in PHP (MUZIK Online)Enterprise Architecture Case in PHP (MUZIK Online)
Enterprise Architecture Case in PHP (MUZIK Online)Yi-Feng Tzeng
 
Redis, another step on the road
Redis, another step on the roadRedis, another step on the road
Redis, another step on the roadYi-Feng Tzeng
 
2013-05-18_JSDC.TW-security-for-frontend-engineer-final (後傳)
2013-05-18_JSDC.TW-security-for-frontend-engineer-final (後傳)2013-05-18_JSDC.TW-security-for-frontend-engineer-final (後傳)
2013-05-18_JSDC.TW-security-for-frontend-engineer-final (後傳)Yi-Feng Tzeng
 
無瑕的程式碼 Clean Code 心得分享
無瑕的程式碼 Clean Code 心得分享無瑕的程式碼 Clean Code 心得分享
無瑕的程式碼 Clean Code 心得分享Win Yu
 
The Future of Classical Music
The Future of Classical MusicThe Future of Classical Music
The Future of Classical MusicYi-Feng Tzeng
 
PHPConf.TW 2012: A step to better PHP
PHPConf.TW 2012: A step to better PHPPHPConf.TW 2012: A step to better PHP
PHPConf.TW 2012: A step to better PHPYi-Feng Tzeng
 
2014-10-25 App 及 Maker 開發者防身術 (MOPCON 2014)
2014-10-25 App 及 Maker 開發者防身術 (MOPCON 2014)2014-10-25 App 及 Maker 開發者防身術 (MOPCON 2014)
2014-10-25 App 及 Maker 開發者防身術 (MOPCON 2014)Yi-Feng Tzeng
 
大型 Web Application 轉移到 微服務的經驗分享
大型 Web Application 轉移到微服務的經驗分享大型 Web Application 轉移到微服務的經驗分享
大型 Web Application 轉移到 微服務的經驗分享Andrew Wu
 
20130112 web conf-面向網站經營者及網站用戶的個資法衝擊
20130112 web conf-面向網站經營者及網站用戶的個資法衝擊20130112 web conf-面向網站經營者及網站用戶的個資法衝擊
20130112 web conf-面向網站經營者及網站用戶的個資法衝擊Yi-Feng Tzeng
 
[BizLePro] 主題講座 #5:台灣C2C第三方支付服務之發展_20130513_gillight
[BizLePro] 主題講座 #5:台灣C2C第三方支付服務之發展_20130513_gillight[BizLePro] 主題講座 #5:台灣C2C第三方支付服務之發展_20130513_gillight
[BizLePro] 主題講座 #5:台灣C2C第三方支付服務之發展_20130513_gillightYi-Feng Tzeng
 
[BizLePro] 主題講座 #4:給資訊人的智財導論_20130429_richard
[BizLePro] 主題講座 #4:給資訊人的智財導論_20130429_richard[BizLePro] 主題講座 #4:給資訊人的智財導論_20130429_richard
[BizLePro] 主題講座 #4:給資訊人的智財導論_20130429_richardYi-Feng Tzeng
 
[BizLePro] 主題講座 #7:商業利用怎麼行? - 從開源授權十個常見 FAQ 來了解
[BizLePro] 主題講座 #7:商業利用怎麼行? - 從開源授權十個常見 FAQ 來了解[BizLePro] 主題講座 #7:商業利用怎麼行? - 從開源授權十個常見 FAQ 來了解
[BizLePro] 主題講座 #7:商業利用怎麼行? - 從開源授權十個常見 FAQ 來了解Yi-Feng Tzeng
 
2014-04-24 社群經營的法律議題-ant
2014-04-24 社群經營的法律議題-ant2014-04-24 社群經營的法律議題-ant
2014-04-24 社群經營的法律議題-antYi-Feng Tzeng
 

Viewers also liked (20)

談 Uber 從 PostgreSQL 轉用 MySQL 的技術爭議
談 Uber 從 PostgreSQL 轉用 MySQL 的技術爭議談 Uber 從 PostgreSQL 轉用 MySQL 的技術爭議
談 Uber 從 PostgreSQL 轉用 MySQL 的技術爭議
 
善用 MySQL 及 PostgreSQL - RDBMS 的逆襲 - part1
善用 MySQL 及 PostgreSQL - RDBMS 的逆襲 - part1善用 MySQL 及 PostgreSQL - RDBMS 的逆襲 - part1
善用 MySQL 及 PostgreSQL - RDBMS 的逆襲 - part1
 
淺入淺出 MySQL & PostgreSQL
淺入淺出 MySQL & PostgreSQL淺入淺出 MySQL & PostgreSQL
淺入淺出 MySQL & PostgreSQL
 
資料庫索引數據結構及主鍵設計(b+tree)(part 1)
資料庫索引數據結構及主鍵設計(b+tree)(part 1)資料庫索引數據結構及主鍵設計(b+tree)(part 1)
資料庫索引數據結構及主鍵設計(b+tree)(part 1)
 
軟體接案自由職業者 (Freelancer) 意想不到的風險
軟體接案自由職業者 (Freelancer) 意想不到的風險軟體接案自由職業者 (Freelancer) 意想不到的風險
軟體接案自由職業者 (Freelancer) 意想不到的風險
 
2013-04-13_JSTW-security-for-frontend-engineer (前傳)
2013-04-13_JSTW-security-for-frontend-engineer (前傳)2013-04-13_JSTW-security-for-frontend-engineer (前傳)
2013-04-13_JSTW-security-for-frontend-engineer (前傳)
 
2016 ModernWeb 分享 - 恰如其分 MySQL 程式設計 (修)
2016 ModernWeb 分享 - 恰如其分 MySQL 程式設計 (修)2016 ModernWeb 分享 - 恰如其分 MySQL 程式設計 (修)
2016 ModernWeb 分享 - 恰如其分 MySQL 程式設計 (修)
 
Enterprise Architecture Case in PHP (MUZIK Online)
Enterprise Architecture Case in PHP (MUZIK Online)Enterprise Architecture Case in PHP (MUZIK Online)
Enterprise Architecture Case in PHP (MUZIK Online)
 
Redis, another step on the road
Redis, another step on the roadRedis, another step on the road
Redis, another step on the road
 
2013-05-18_JSDC.TW-security-for-frontend-engineer-final (後傳)
2013-05-18_JSDC.TW-security-for-frontend-engineer-final (後傳)2013-05-18_JSDC.TW-security-for-frontend-engineer-final (後傳)
2013-05-18_JSDC.TW-security-for-frontend-engineer-final (後傳)
 
無瑕的程式碼 Clean Code 心得分享
無瑕的程式碼 Clean Code 心得分享無瑕的程式碼 Clean Code 心得分享
無瑕的程式碼 Clean Code 心得分享
 
The Future of Classical Music
The Future of Classical MusicThe Future of Classical Music
The Future of Classical Music
 
PHPConf.TW 2012: A step to better PHP
PHPConf.TW 2012: A step to better PHPPHPConf.TW 2012: A step to better PHP
PHPConf.TW 2012: A step to better PHP
 
2014-10-25 App 及 Maker 開發者防身術 (MOPCON 2014)
2014-10-25 App 及 Maker 開發者防身術 (MOPCON 2014)2014-10-25 App 及 Maker 開發者防身術 (MOPCON 2014)
2014-10-25 App 及 Maker 開發者防身術 (MOPCON 2014)
 
大型 Web Application 轉移到 微服務的經驗分享
大型 Web Application 轉移到微服務的經驗分享大型 Web Application 轉移到微服務的經驗分享
大型 Web Application 轉移到 微服務的經驗分享
 
20130112 web conf-面向網站經營者及網站用戶的個資法衝擊
20130112 web conf-面向網站經營者及網站用戶的個資法衝擊20130112 web conf-面向網站經營者及網站用戶的個資法衝擊
20130112 web conf-面向網站經營者及網站用戶的個資法衝擊
 
[BizLePro] 主題講座 #5:台灣C2C第三方支付服務之發展_20130513_gillight
[BizLePro] 主題講座 #5:台灣C2C第三方支付服務之發展_20130513_gillight[BizLePro] 主題講座 #5:台灣C2C第三方支付服務之發展_20130513_gillight
[BizLePro] 主題講座 #5:台灣C2C第三方支付服務之發展_20130513_gillight
 
[BizLePro] 主題講座 #4:給資訊人的智財導論_20130429_richard
[BizLePro] 主題講座 #4:給資訊人的智財導論_20130429_richard[BizLePro] 主題講座 #4:給資訊人的智財導論_20130429_richard
[BizLePro] 主題講座 #4:給資訊人的智財導論_20130429_richard
 
[BizLePro] 主題講座 #7:商業利用怎麼行? - 從開源授權十個常見 FAQ 來了解
[BizLePro] 主題講座 #7:商業利用怎麼行? - 從開源授權十個常見 FAQ 來了解[BizLePro] 主題講座 #7:商業利用怎麼行? - 從開源授權十個常見 FAQ 來了解
[BizLePro] 主題講座 #7:商業利用怎麼行? - 從開源授權十個常見 FAQ 來了解
 
2014-04-24 社群經營的法律議題-ant
2014-04-24 社群經營的法律議題-ant2014-04-24 社群經營的法律議題-ant
2014-04-24 社群經營的法律議題-ant
 

Similar to 恰如其分的 MySQL 設計技巧 [Modern Web 2016]

Taobao数据库这5年
Taobao数据库这5年Taobao数据库这5年
Taobao数据库这5年yp_fangdong
 
Modern Web Architecture Design Journey
Modern Web Architecture Design JourneyModern Web Architecture Design Journey
Modern Web Architecture Design JourneyYi-Feng Tzeng
 
Python小团队不妨知道的技术
Python小团队不妨知道的技术Python小团队不妨知道的技术
Python小团队不妨知道的技术jie.wang
 
Dreaming Infrastructure
Dreaming InfrastructureDreaming Infrastructure
Dreaming Infrastructurekyhpudding
 
十二項架構設計原則
十二項架構設計原則十二項架構設計原則
十二項架構設計原則Philip Zheng
 
网站存储经验谈pdf
网站存储经验谈pdf网站存储经验谈pdf
网站存储经验谈pdfYu Lin
 
网站存储经验谈-pdf
网站存储经验谈-pdf网站存储经验谈-pdf
网站存储经验谈-pdfYu Lin
 
FreeNAS 企業應用經驗分享 [2016/12/17] @台中資策會
FreeNAS 企業應用經驗分享 [2016/12/17] @台中資策會FreeNAS 企業應用經驗分享 [2016/12/17] @台中資策會
FreeNAS 企業應用經驗分享 [2016/12/17] @台中資策會Jason Cheng
 
Sina my sq概述及优化
Sina my sq概述及优化Sina my sq概述及优化
Sina my sq概述及优化pigso
 
110329 luopeng-sysopt-openkavass
110329 luopeng-sysopt-openkavass110329 luopeng-sysopt-openkavass
110329 luopeng-sysopt-openkavassZoom Quiet
 
Big Data, NoSQL, and MongoDB
Big Data, NoSQL, and MongoDBBig Data, NoSQL, and MongoDB
Big Data, NoSQL, and MongoDBMonster Supreme
 
微服務資料管理的天堂路 - CQRS / Event Sourcing 的應用與實踐
微服務資料管理的天堂路 - CQRS / Event Sourcing 的應用與實踐微服務資料管理的天堂路 - CQRS / Event Sourcing 的應用與實踐
微服務資料管理的天堂路 - CQRS / Event Sourcing 的應用與實踐Andrew Wu
 
Ria的强力后盾:rest+海量存储
Ria的强力后盾:rest+海量存储 Ria的强力后盾:rest+海量存储
Ria的强力后盾:rest+海量存储 zhen chen
 
大规模数据处理
大规模数据处理大规模数据处理
大规模数据处理Kay Yan
 
对MySQL应用的一些总结
对MySQL应用的一些总结对MySQL应用的一些总结
对MySQL应用的一些总结Lixun Peng
 
一个“兼职Dba”的数据库运维经验谈
一个“兼职Dba”的数据库运维经验谈一个“兼职Dba”的数据库运维经验谈
一个“兼职Dba”的数据库运维经验谈Liang Xie
 
前端性能优化和自动化
前端性能优化和自动化前端性能优化和自动化
前端性能优化和自动化kaven yan
 
應用Ceph技術打造軟體定義儲存新局
應用Ceph技術打造軟體定義儲存新局應用Ceph技術打造軟體定義儲存新局
應用Ceph技術打造軟體定義儲存新局Alex Lau
 
Database与ssd的实践与探索
Database与ssd的实践与探索Database与ssd的实践与探索
Database与ssd的实践与探索freezr
 

Similar to 恰如其分的 MySQL 設計技巧 [Modern Web 2016] (20)

Taobao数据库这5年
Taobao数据库这5年Taobao数据库这5年
Taobao数据库这5年
 
Modern Web Architecture Design Journey
Modern Web Architecture Design JourneyModern Web Architecture Design Journey
Modern Web Architecture Design Journey
 
Python小团队不妨知道的技术
Python小团队不妨知道的技术Python小团队不妨知道的技术
Python小团队不妨知道的技术
 
Dreaming Infrastructure
Dreaming InfrastructureDreaming Infrastructure
Dreaming Infrastructure
 
十二項架構設計原則
十二項架構設計原則十二項架構設計原則
十二項架構設計原則
 
网站存储经验谈pdf
网站存储经验谈pdf网站存储经验谈pdf
网站存储经验谈pdf
 
网站存储经验谈-pdf
网站存储经验谈-pdf网站存储经验谈-pdf
网站存储经验谈-pdf
 
FreeNAS 企業應用經驗分享 [2016/12/17] @台中資策會
FreeNAS 企業應用經驗分享 [2016/12/17] @台中資策會FreeNAS 企業應用經驗分享 [2016/12/17] @台中資策會
FreeNAS 企業應用經驗分享 [2016/12/17] @台中資策會
 
Sina my sq概述及优化
Sina my sq概述及优化Sina my sq概述及优化
Sina my sq概述及优化
 
110329 luopeng-sysopt-openkavass
110329 luopeng-sysopt-openkavass110329 luopeng-sysopt-openkavass
110329 luopeng-sysopt-openkavass
 
Big Data, NoSQL, and MongoDB
Big Data, NoSQL, and MongoDBBig Data, NoSQL, and MongoDB
Big Data, NoSQL, and MongoDB
 
微服務資料管理的天堂路 - CQRS / Event Sourcing 的應用與實踐
微服務資料管理的天堂路 - CQRS / Event Sourcing 的應用與實踐微服務資料管理的天堂路 - CQRS / Event Sourcing 的應用與實踐
微服務資料管理的天堂路 - CQRS / Event Sourcing 的應用與實踐
 
Ria的强力后盾:rest+海量存储
Ria的强力后盾:rest+海量存储 Ria的强力后盾:rest+海量存储
Ria的强力后盾:rest+海量存储
 
大规模数据处理
大规模数据处理大规模数据处理
大规模数据处理
 
Sth About SSD
Sth About SSDSth About SSD
Sth About SSD
 
对MySQL应用的一些总结
对MySQL应用的一些总结对MySQL应用的一些总结
对MySQL应用的一些总结
 
一个“兼职Dba”的数据库运维经验谈
一个“兼职Dba”的数据库运维经验谈一个“兼职Dba”的数据库运维经验谈
一个“兼职Dba”的数据库运维经验谈
 
前端性能优化和自动化
前端性能优化和自动化前端性能优化和自动化
前端性能优化和自动化
 
應用Ceph技術打造軟體定義儲存新局
應用Ceph技術打造軟體定義儲存新局應用Ceph技術打造軟體定義儲存新局
應用Ceph技術打造軟體定義儲存新局
 
Database与ssd的实践与探索
Database与ssd的实践与探索Database与ssd的实践与探索
Database与ssd的实践与探索
 

More from Yi-Feng Tzeng

重新想像:如何做技術選型決策 / Rethinking : Technical Decision
重新想像:如何做技術選型決策 / Rethinking : Technical Decision重新想像:如何做技術選型決策 / Rethinking : Technical Decision
重新想像:如何做技術選型決策 / Rethinking : Technical DecisionYi-Feng Tzeng
 
擁抱開源:企業應如何善用開源技術,才能得其利而防其弊-加強版
擁抱開源:企業應如何善用開源技術,才能得其利而防其弊-加強版擁抱開源:企業應如何善用開源技術,才能得其利而防其弊-加強版
擁抱開源:企業應如何善用開源技術,才能得其利而防其弊-加強版Yi-Feng Tzeng
 
Testing in Production, Deploy on Fridays
Testing in Production, Deploy on FridaysTesting in Production, Deploy on Fridays
Testing in Production, Deploy on FridaysYi-Feng Tzeng
 
COSCUP 2020 Day 2 - Opening Keynote
COSCUP 2020 Day 2 - Opening KeynoteCOSCUP 2020 Day 2 - Opening Keynote
COSCUP 2020 Day 2 - Opening KeynoteYi-Feng Tzeng
 
COSCUP 2020 Day 1 - Opening Keynote
COSCUP 2020 Day 1 - Opening KeynoteCOSCUP 2020 Day 1 - Opening Keynote
COSCUP 2020 Day 1 - Opening KeynoteYi-Feng Tzeng
 
Severless PHP Case : Agile Dashboard via GitLab Board API
Severless PHP Case : Agile Dashboard via GitLab Board APISeverless PHP Case : Agile Dashboard via GitLab Board API
Severless PHP Case : Agile Dashboard via GitLab Board APIYi-Feng Tzeng
 
給資安工程師開源授權觀念
給資安工程師開源授權觀念給資安工程師開源授權觀念
給資安工程師開源授權觀念Yi-Feng Tzeng
 
Progressive Deployment & NoDeploy
Progressive Deployment & NoDeployProgressive Deployment & NoDeploy
Progressive Deployment & NoDeployYi-Feng Tzeng
 
Dev(Sec)Ops - Architecture for Security and Compliance
Dev(Sec)Ops - Architecture for Security and ComplianceDev(Sec)Ops - Architecture for Security and Compliance
Dev(Sec)Ops - Architecture for Security and ComplianceYi-Feng Tzeng
 
擁抱開源:企業應如何善用開源技術,才能得其利而防其弊
擁抱開源:企業應如何善用開源技術,才能得其利而防其弊擁抱開源:企業應如何善用開源技術,才能得其利而防其弊
擁抱開源:企業應如何善用開源技術,才能得其利而防其弊Yi-Feng Tzeng
 
淺談量子機器學習 - 當機器學習遇見量子計算
淺談量子機器學習 - 當機器學習遇見量子計算淺談量子機器學習 - 當機器學習遇見量子計算
淺談量子機器學習 - 當機器學習遇見量子計算Yi-Feng Tzeng
 
A Modern Web Architecture for (GDPR) Compliance
A Modern Web Architecture for (GDPR) ComplianceA Modern Web Architecture for (GDPR) Compliance
A Modern Web Architecture for (GDPR) ComplianceYi-Feng Tzeng
 
量子技術 (2018 03-31)
量子技術 (2018 03-31)量子技術 (2018 03-31)
量子技術 (2018 03-31)Yi-Feng Tzeng
 
邏輯優化的灰色面:針對網頁應用的時序攻擊 (2018臺灣資安大會: 軟體安全論壇)
邏輯優化的灰色面:針對網頁應用的時序攻擊 (2018臺灣資安大會: 軟體安全論壇)邏輯優化的灰色面:針對網頁應用的時序攻擊 (2018臺灣資安大會: 軟體安全論壇)
邏輯優化的灰色面:針對網頁應用的時序攻擊 (2018臺灣資安大會: 軟體安全論壇)Yi-Feng Tzeng
 
2014 03-14 PunApp-InstAll15-山寨的界限
2014 03-14 PunApp-InstAll15-山寨的界限2014 03-14 PunApp-InstAll15-山寨的界限
2014 03-14 PunApp-InstAll15-山寨的界限Yi-Feng Tzeng
 

More from Yi-Feng Tzeng (16)

重新想像:如何做技術選型決策 / Rethinking : Technical Decision
重新想像:如何做技術選型決策 / Rethinking : Technical Decision重新想像:如何做技術選型決策 / Rethinking : Technical Decision
重新想像:如何做技術選型決策 / Rethinking : Technical Decision
 
擁抱開源:企業應如何善用開源技術,才能得其利而防其弊-加強版
擁抱開源:企業應如何善用開源技術,才能得其利而防其弊-加強版擁抱開源:企業應如何善用開源技術,才能得其利而防其弊-加強版
擁抱開源:企業應如何善用開源技術,才能得其利而防其弊-加強版
 
Testing in Production, Deploy on Fridays
Testing in Production, Deploy on FridaysTesting in Production, Deploy on Fridays
Testing in Production, Deploy on Fridays
 
COSCUP 2020 Day 2 - Opening Keynote
COSCUP 2020 Day 2 - Opening KeynoteCOSCUP 2020 Day 2 - Opening Keynote
COSCUP 2020 Day 2 - Opening Keynote
 
COSCUP 2020 Day 1 - Opening Keynote
COSCUP 2020 Day 1 - Opening KeynoteCOSCUP 2020 Day 1 - Opening Keynote
COSCUP 2020 Day 1 - Opening Keynote
 
Severless PHP Case : Agile Dashboard via GitLab Board API
Severless PHP Case : Agile Dashboard via GitLab Board APISeverless PHP Case : Agile Dashboard via GitLab Board API
Severless PHP Case : Agile Dashboard via GitLab Board API
 
給資安工程師開源授權觀念
給資安工程師開源授權觀念給資安工程師開源授權觀念
給資安工程師開源授權觀念
 
Progressive Deployment & NoDeploy
Progressive Deployment & NoDeployProgressive Deployment & NoDeploy
Progressive Deployment & NoDeploy
 
Dev(Sec)Ops - Architecture for Security and Compliance
Dev(Sec)Ops - Architecture for Security and ComplianceDev(Sec)Ops - Architecture for Security and Compliance
Dev(Sec)Ops - Architecture for Security and Compliance
 
擁抱開源:企業應如何善用開源技術,才能得其利而防其弊
擁抱開源:企業應如何善用開源技術,才能得其利而防其弊擁抱開源:企業應如何善用開源技術,才能得其利而防其弊
擁抱開源:企業應如何善用開源技術,才能得其利而防其弊
 
淺談量子機器學習 - 當機器學習遇見量子計算
淺談量子機器學習 - 當機器學習遇見量子計算淺談量子機器學習 - 當機器學習遇見量子計算
淺談量子機器學習 - 當機器學習遇見量子計算
 
A Modern Web Architecture for (GDPR) Compliance
A Modern Web Architecture for (GDPR) ComplianceA Modern Web Architecture for (GDPR) Compliance
A Modern Web Architecture for (GDPR) Compliance
 
量子技術 (2018 03-31)
量子技術 (2018 03-31)量子技術 (2018 03-31)
量子技術 (2018 03-31)
 
Swoole Love PHP
Swoole Love PHPSwoole Love PHP
Swoole Love PHP
 
邏輯優化的灰色面:針對網頁應用的時序攻擊 (2018臺灣資安大會: 軟體安全論壇)
邏輯優化的灰色面:針對網頁應用的時序攻擊 (2018臺灣資安大會: 軟體安全論壇)邏輯優化的灰色面:針對網頁應用的時序攻擊 (2018臺灣資安大會: 軟體安全論壇)
邏輯優化的灰色面:針對網頁應用的時序攻擊 (2018臺灣資安大會: 軟體安全論壇)
 
2014 03-14 PunApp-InstAll15-山寨的界限
2014 03-14 PunApp-InstAll15-山寨的界限2014 03-14 PunApp-InstAll15-山寨的界限
2014 03-14 PunApp-InstAll15-山寨的界限
 

恰如其分的 MySQL 設計技巧 [Modern Web 2016]