Skip to content

Commit ccab372

Browse files
committed
Merge pull request #51 from taocp/master
Update teracli.md:add create doc
2 parents b126413 + 911248f commit ccab372

File tree

1 file changed

+46
-5
lines changed

1 file changed

+46
-5
lines changed

doc/teracli.md

Lines changed: 46 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,51 @@
11
teracli命令行工具使用手册
22
---
33

4-
<!--## 表格创建 (create)-->
4+
## 表格创建 (create)
5+
6+
`create <tablename> <tableschema>`
7+
8+
1. tablename不要超过256个字符,合法字符包括:数字、大小写字母、下划线`_`、连字符`-`
9+
首字符不能为数字。
10+
11+
1. tableschema字符串请用引号括起来,避免`#`等特殊符号被shell解释。
12+
13+
1. tableschema详解
14+
15+
`schema syntax:
16+
{tableprops}#lg1{lgprops}:cf1{cfprops},cf2..|lg2...
17+
(all properties are optional)`
18+
19+
span | 属性名 | 意义 | 有效取值 | 单位 | 默认值 | 其它说明
20+
--- | --- | --- | --- | --- | --- | ---
21+
table | rawkey | rawkey的拼装模式 | "readable":性能较高,但不允许包含`\0`。"binary":性能差一些,允许所有字符。 | - | "readable" |
22+
table | splitsize | 某个tablet增大到此阈值时分裂为2个子tablets| >=0,等于0时关闭split | MB | 512 |
23+
table | mergesize | 某个tablet减小到此阈值时和相邻的1个tablet合并 | >=0,等于0时关闭merge | MB | 0 | splitsize至少要为mergesize的5倍
24+
lg | storage | 存储类型 | "disk" / "flash" / "memory" | - | "disk" |
25+
lg | compress | 压缩算法 | "snappy" / "none" | - | "snappy" |
26+
lg | blocksize | LevelDB中block的大小 | >0 | KB | 4 |
27+
lg | use_memtable_on_leveldb | 是否启用内存compact | "true" / "false" | - | false |
28+
lg | sst_size | 第一层sst文件大小 | >0 | Bytes | 8,000,000 |
29+
cf | maxversions | 保存的最大版本数 | >0 | - | 1 |
30+
cf | minversions | 保存的最小版本数 | >0 | - | 1 |
31+
cf | ttl | 数据有效时间 | >=0,等于0时此数据永远有效 | second | 0 | 小于0表示提前过期;和minversions冲突时以minversions为准
32+
33+
<!--
34+
lg | memtable_ldb_write_buffer_size | 内存compact开启后,写buffer的大小 | >0 | MB | 1 | 一般不用暴露给用户
35+
lg | memtable_ldb_block_size | 内存compact开启后,压缩块的大小 | >0 | KB | 4 | 一般不用暴露给用户
36+
cf | diskquota | 存储限额 | >0 | MB | 0 | 暂未使用
37+
-->
38+
39+
例如:
40+
41+
创建一个名为`books`的表格,设置2个lg,一个名为`lg0`,包含1个cf;另一个lg名为`lg1`,包含2个cf:
42+
43+
`% ./teracli create books "#lg0:cf|lg1:cf0,cf1"`
44+
45+
如果需要,可以给table、lg或者cf添加需要的属性:
46+
47+
`% ./teracli create books "{splitsize=1024,mergesize=128}#lg0{storage=disk,compress=snappy}:cf{maxversions=3}|lg1:cf0{minversions=5},cf1"`
48+
549

650
## 表格schema更新-全量更新 (update)
751

@@ -11,10 +55,7 @@ teracli命令行工具使用手册
1155
tera会用新的schema覆盖原有schema.
1256
更新schema前需要先disable表格。
1357

14-
1. tablename不要超过256个字符,合法字符包括:数字、大小写字母、下划线`_`、连字符`-`
15-
首字符不能为数字。
16-
17-
1. tableschema字符串请用引号括起来,避免`#`等特殊符号被shell解释。
58+
1. tablename和tableschema的约束和`ctreate`一致。
1859

1960
## 表格schema更新-增量更新 (update-part)
2061

0 commit comments

Comments
 (0)