2022 Oceanbase大赛简简单单回顾
本文最后更新于 601 天前,其中的信息可能已经有所发展或是发生改变。

趁着刚回上海,不想干活(哪天都不想干活),简单写点感受。

人菜瘾大

不过最后也算是半个 Happy Ending 了。

(segfault一定不是个好名字,997不一定是个坏名字)

赛题

赛题就是个旁路导入,在答辩开始前,我都觉得这次比赛的难度相比来说没有第一届高(主要那个 NLJ 完全没思路)。

不过后来我觉得这次比赛其实已经有点天池的味道了,虽然比赛依托于Oceanbase,但是可操作空间还是非常大的。

一些简单的感想:

在数据编码上,其实大家都已经发现了数据里很多字段其实都是一些枚举值,虽然字段类型可能是 varchar,在这点上有很多队伍的做法我很喜欢,例如预先的采样+增量式处理,或者动态维护编码表(我最喜欢这种)。

而对于最后几个长字符串字段来说,大部分队伍还是靠压缩算法来兜底(我也是),但是也有队伍专门针对这几个字段优化的,让我很羞愧。

排序上,我的思路有点被束缚住了,我完全没有必要一步实现每个桶内数据的全局有序,这一点带来的overhead 真的是挺大的。维护每个线程内部的每个桶的有序化,再加上后续的归并排序,可能是个更好的方案。

内存排序方法上,前两名其实都是用的主键+index的排序方式,看来我还挺接近他们的。

异步IO,这个东西我折腾半天没搞明白就没整了,双缓冲的异步IO对读取CSV文件来说,我觉得应该是有作用的,特别是对于我现在这种专门开了8个线程来进行读取的实现来说。

我想做但是没能力的SIMD解析真有队伍做了,虽然和我所想的用法不一样,不过好像提升还不错,tql!

更新一下,北大季军更新了一下他们的解题思路,看完后我陷入了沉思,虽然思路上有类似的地方,但是过程却完全不一样,我目前还是更多的依赖于经验主义,很多想法其实非常 heuristic,work不work全靠一把梭(评委其实也提到了这一点)。抓住指标,再加上合适的工具,然后去探寻解决方法,才是正确的道路。(不过我已经有一一一一些反感指标这个词了,我绝没有在暗示什么)

后记

这次比赛让我知道了,答辩的准备其实也是很重要的。像我这种一天写PPT,半天写讲稿的,属于是典型反面教材了,答辩就像答辩。

这次都没拍什么照,因为对结果的预期有点低。

阿里大楼,不过OB不在这里

没敢去找院长合照><

DBHammer YYDS!

本来想要再和周校长拍张照的,不过校长发言完就走了...

没听说过的原创乐队,不过还不错

P.S. 答辩还被院长喷了Orz
P.P.S 下次我还要挂DaSE的名字,如果有下次的话

评论

  1. pink
    2 年前
    2023-5-16 20:53:02

    我也是今年ob选手 ,备考dase ing~|´・ω・)ノ

    • eggtart 博主
      1 年前
      2023-7-18 9:49:44

      欢迎来DaSE~ヾ(≧∇≦*)ゝ

  2. joe
    1 年前
    2023-7-18 20:35:04

    太强了

  3. 匿名
    1 年前
    2023-7-18 20:36:21

    tql

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇