iT邦幫忙

第 12 屆 iThome 鐵人賽

DAY 7
0

數字類型的型態

  • int (32位元)
  • bigint (64位元)
  • smallint (16位元)
  • tinyint (8位元)
  • varint (arbitrary-precision 任意精準度)
  • float (32位元浮點數)
  • double (64位元浮點數)
  • decimal

文字類型的型態

  • varchar (UTF-8 encoding)
  • text (UTF-8 encoding)
  • ascii (ASCII encoding)

時間、識別類型的型態

date、time 建議帶入時區,如ISO 8601之類的格式。

  • date
  • time
  • uuid

UUID的標準型式包含32個16進位數字,以連字號分為五段,形式為 8-4-4-4-12 的32個字元。

在CASSANDRA/SCYLLA的UUID,是屬於第4類的UUID,也就是隨機產生

例如:

01234567-0123-0123-0123-0123456789ab
  • timeuuid

第一類的UUID,根據系統時間、mac網卡位置、加上某個序列號。

有效避免產生碰撞,類似snowflake的產生方式。

其他類型的型態

  • boolean (輸入不管大小寫,輸出一律為大寫TRUE/FALSE)
  • blob (二進位大型物件)
  • inet (存IPv4 IPv6的網路位址格式)
  • counter

集合的型態

  • set (無序的資料集合)

欄位就可以放如下範例的資料
ex: set<text>

['apple','banana','melon']
  • list (有序的資料集合)

新增資料時,預設會串到資料的最後面

  • map (key-value 的儲存)
    ex: map<text, int>
{
    'cat':10,
    'dog':21
}

使用者自行定義型態(user-defined type)

官方的建議是說,若在text的資料型態裡面,其實是存入自己一個自定義的資料格式,譬如說一包json格式的資料,那麼就可以考慮在keyspace自行定義一個型態,可以減少系統解析時的負擔。

參考資料


上一篇
Day6. 入門級動手做#1
下一篇
Day8. column 的詳細構成
系列文
scylla 從零開始攻略30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言