# TiCrosswordPuzzle

## Crosswords Generator
+ https://crosswordlabs.com/

## Restriction
+ The anwser cannot contain white space.

## The Puzzle
Word          Clue      
region        The cloning cell in TiKV cluster. 
raft          Who is very good at reaching consensus without the algorithm. 
rocksdb       Who makes data solidly persistent in TiKV. 
pointget      I want one thing and one thing only. 
htap          Transactions and Decisions Making combined.
tiflash       Who rotates the TiKV world by 90 degrees.
tikv          The place keeps your keys and treasure.
tidb          The translator between two worlds, the Structured Principality and the Keys Wonderland. 
tso           A Prophet who controls the past controls the future. 
null          It is nothing and it is everything; It exists, and it does not exist. 
coprocessor   Where TiKV can give TiDB a hand. 
mvcc          Who makes the multi version history possible. 
acid          Three Laws of Robotics in terms of transaction. 
collation     Law & Order for alphabet. 
sqlexception  When Java and RBDMS are at the same party, there must be this guest downstairs.
autocommit    A typical behavior of an impatient candidate. 
flashback     If I could turn back time. 
percolator    A machine for making coffee in large scale as coffee beans continuously arrive.
insert        The DML command INDEX hates the most and where is least likely to be able to help.
offset        The smaller the better when you apply limitation and order at the same time.
distinct      A task that tiwns are not welcomed.

## The Puzzle with Chinese Hints
Word          Clue (Hints)
region        The cloning cell in TiKV cluster. (Hints: 在 TiKV 集群中, 数据最小的复制单位是 Region, 类似生物体中的细胞。)
raft          Who is very good at reaching consensus without the algorithm. (Hints: Raft Consensus Algorithm 即 Raft 共识算法，是 TiDB 依赖的核心技术之一，这个谜面是个文字游戏, 谁很擅长达成共识而且没有算法? "共识" 提示了 Raft Algorithm, without the algorithm 所以算法可以从字面去掉，所以 Raft。)
rocksdb       Who makes data solidly persistent in TiKV. (Hints: 大家都知道 TiKV 是依赖 RocksDB 做数据持久化的。)
pointget      I want one thing and one thing only. (Hints: 谜底是点查, 这种查询查且只期待返回一行, 使用和学习过 TiDB 的人, 不会错过。对于没有 TiDB 经验的人有难度。)
htap          Transactions and Decisions Making combined. (Hints: Transaction - OLTP, Decisions Making - OLAP, 合并, 得到 HTAP。)
tiflash       Who rotates the TiKV world by 90 degrees. (Hints: TiKV 是行存的，TiFlash 的列存的, 谁把行倒了 90 度成了列呢? 梗在这里。)
tikv          The place keeps your keys and treasure. (Hints: 业务数据都是保存在 TiKV 的, 而 TiKV 是以一个大的 KV Map 组织的, 数据全部是 Key-Value pairs。所以, 谜面: 一个保存你的钥匙和宝藏的地方？ 钥匙是 Key, 宝藏就是你的数据，数据在 Key-Valye pair 里是 Value。所以是 TiKV。 )
tidb          The translator between two worlds, the Structured Principality and the Keys Wonderland. (Hints: 结构化公国指的是结构化数据, Keys奇迹之地是指KV pair 数据, TiDB server 的主要任务之一就是把结构化表里的行记录映射成 KV，所以这个两个国家之间的翻译就是 TiDB Server，但是谜底不能有空格，所以是 TiDB。)
tso           A Prophet who controls the past controls the future. (Hints: TSO, Timestamp Oracle, Oracle、Prophet 都有先知的含义，TSO 影响着 TiDB 里所有事务的前后顺序。所以谜面一个控制过去也控制未来的先知，得到 TSO。而且 Who controls the past controls the future, 是一句西方名言，这个梗玩得很大。)
null          It is nothing and it is everything, once you touch it, you turn into it. (Hints: 数据库出生的人，对 NULL 是有特殊感觉的，NULL 本身是空，但是 NULL 在 RDBMS 里可以代表任何信息, 有专门的 SQL 函数负责把 NULL 转成需要的值，所以 NULL 在被 SELECT 的时候可以是 NULL 也可以是任何值，数据库经验的人看到谜面，再对应到四个空格时，只能填 NULL。once you touch it, you turn into it 是额外提示, 是指使用 CONCAT 函数与 NULL
连接时, 无论另一方是什么值结果都是 NULL)
coprocessor   Where TiKV can give TiDB a hand. (Hints: 这个很直接了, TiKV 上协处理器, 帮助 TiDB 执行 分布式 SQL 的)
mvcc          Who makes the multi version history possible. (Hints: Multi Version Concurrency Control, 支持 Flashback 和 Steal Read 操作，各种多版本历史支持，就是 MVCC。)
acid          Three Laws of Robotics in terms of transaction. (Hints: 机器人三大定律相当于科幻圣经之一，对于事务来说圣经是 ACID，这个不用解释了。)
collation     Law & Order for alphabet. (Hints: 数据库里控制字符排序顺序的规则: Collation。)
sqlexception  When Java and RBDMS are at the same party, there must be this guest downstairs. (Hints: 根据 JDBC 标准, 数据库操作会抛出非运行时异常SQLException, 所以必须处理。它并不是不速之客，而且一定列席，所以是 SQLException。)
autocommit    A typical behavior of an impatient candidate. (Hints: 做完一题就立刻提交, 检查的机会都不给, 这么不耐心的同学也只有 AUTOCOMMIT 了。)
flashback     If I Could Turn Back Time. (Hints: FLASHBACK 命令，这个不用解释了。If I could turn back time 也是美国知名歌曲。)
percolator    A machine for making coffee in large scale as coffee beans continuously arrive. (Hints: Percolator 论文的摘要第一句话: 在对 Web 索引文档更新时需要在新文档到达时不断转换现有文档的大型仓库。Percolator 直译就是渗滤式咖啡壶, 不断更新的文档指不断添加的咖啡豆。)
insert        The DML command INDEX hates the most and where is least likely to be able to help. (Hints: 同为 DML 的 DELETE 和 UPDATE，还可能使用 WHERE 语句并依赖索引不至于全表扫描, 但是对于 INSERT 语句, 索引起不到加快执行的作用, 而且表上多一个索引 INSERT 就要多操作一个对象。而且，谜面里的 where 是名词，指的是 WHERE 对 INSERT 这个操作来说基本帮不上忙。)
offset        The smaller the better when you apply limitation and order at the same time. (Hints: 谜面指的是 ORDER BY ... LIMIT <offset>, <n> 子句, 有经验的 SQL 开发者知道在这种结构下, <offset> 越大，SQL 语句在执行过程中获取的无用的行就越多，所以是 offset。能答出这个问题的，都是 MySQL/TiDB 老专家了。)
distinct      A task that tiwns are not welcomed. (Hints: ditinct 的功能是去重，所以这是"不欢迎双胞胎的任务"。)