談談Deepgreen(Greenplum)中文編碼
很多國內客戶對中文編碼要求比較苛刻,今天我們來聊聊中文編碼問題。
概念
- Deepgreen和Greenplum是基於PostgreSQL 8.2版本。
- PostgreSQL 8.2能夠以各種字符集存儲文本,比如 ISO-8859 係列和 EUC(擴展 Unix 編碼)、UTF-8 、Mule 國際編碼。缺省的字符集是在使用 initdb 初始化數據庫集群的時候選擇的。在你創建數據庫的時候是可以覆蓋這個缺省的。因此,你可以有多個數據庫,每個都有不同的字符集。
- PostgreSQL 8.2隻支持以UTF-8的形式存儲中文,不支持GBK等標準國標編碼。這也就從源頭上限製了Deepgreen和Greenplum隻能通過UTF-8的方式支持中文。
比較
- UTF-8作為一種全國家通用的編碼,可以完全表示GBK字符,包括生僻字。所以在範圍上,UTF-8更有優勢,因為不僅可以表示中文,還可以表示英文等其他語言。建議在存儲語言不固定時,選擇UTF-8更為穩妥。
- GBK作為中文編碼,在大篇幅表示中文時,會非常節省空間,所以如果項目中大部分都是中文,英文極少,可以選擇GBK。
最後更新:2017-06-13 02:31:54