lmshl 最近的时间轴更新
lmshl

lmshl

V2EX 第 69210 号会员,加入于 2014-07-28 18:09:34 +08:00
今日活跃度排名 30383
10 年资深全栈、架构求职 - 上海
  •  2   
    求职  •  lmshl  •  2023-08-08 19:13:01 PM  •  最后回复来自 yudoo
    60
    Scala 语法糖多吗?
    程序员  •  lmshl  •  2022-05-14 00:52:10 AM  •  最后回复来自 hepin1989
    22
    [北京/上海]全栈工程师求职
    求职  •  lmshl  •  2016-03-03 16:19:20 PM  •  最后回复来自 guoxing
    9
    lmshl 最近回复了
    25 天前
    回复了 magic3584 创建的主题 Android 怎么在 Java 里调用 Kotlin 的 suspend 方法
    1. asCompletableFuture
    https://kotlinlang.org/api/kotlinx.coroutines/kotlinx-coroutines-core/kotlinx.coroutines.future/
    UI 代码里可以用, 非阻塞
    2. runBlocking
    https://kotlinlang.org/api/kotlinx.coroutines/kotlinx-coroutines-core/kotlinx.coroutines/run-blocking.html
    非 UI 代码里可以用, 阻塞

    建议都用 Kotlin 写, 没啥必要 Java/Kotlin 混写
    4C8G 的生产 PG 数据库表示单表两亿行不痛不痒, 你还可以再用点力.
    支撑 100+TPS 的时候瞄了一眼 CPU 占用率还不到 1 核
    77 天前
    回复了 MoeMagicMango 创建的主题 程序员 小 心 任 何 二 次 接 手 的 代 码
    这代码写的挺不错的啊,没看出来哪里有问题
    200 天前
    回复了 wuoty 创建的主题 JavaScript 请教 JS 中有关 Promise 和回调函数的写法问题
    ```
    import { fromEvent } from 'rxjs';

    const clicks = fromEvent(img, 'onload');
    clicks.subscribe(x => { <你的业务逻辑> });
    ```
    不要自作聪明发明那些不可维护的代码,你能想得到的场景,早已有无数前辈替你趟过坑。
    等你哪天觉得 “RxJS 不过如此,我还有个更好的想法” 的时候,再发明也不迟(顺便发几篇论文)
    版本答案:RocksDB (与其他 leveldb family 产品)

    解析:203 亿个 bloomfilter 在 p=0.01 下所需的内存空间约为 23.75GB 。实际上,去重所需的空间会少于 203 亿,所以在这个内存空间下,实际 p 值将进一步降低。

    大部分人可能对 bloomfilter 的使用存在误解,他们只考虑在只有 bloomfilter 单一算法存在的前提下来解决需求,这显然是错误的。现代数据库对 bloomfilter 的应用主要是用来降低 miss key 对磁盘 IO 的影响。如果 bloomfilter 认为这个 key 没有出现过,那么这个 key 确实没有出现过。当 bloomfilter 认为它可能出现过,那么出现的概率为 1-p ,此时需要回表二次确认(磁盘 IO )。

    假设一个典型的重复度为 10 倍的 200 亿数据表文件,在这个空间下,p 值会低至 1e-20 。

    那么对这个文件去重,总共会发生 200 亿次内存 bloomfilter 读取,20 亿次 bloomfilter 写入+磁盘顺序写入,以及 180 亿次磁盘随机读取。(考虑到数据库对磁盘的批量写入优化,sstable/memtable 这个数值将会被巨幅降低)

    假设一个重复度为 0.1 倍的 200 亿数据表文件,在这个空间下,p 值变化不大。

    那么对这个文件去重,总共发生 200 亿次内存 bloomfilter 读取,180 亿次 bloomfilter 写入+磁盘顺序写入,以及 20 亿次磁盘随机读取。(同上)

    根据网上其他人做的吞吐量测试,rocksdb 在现代硬件条件下可以稳定达到 10k*rows/s 以上的写入性能,或>1GB/s 的写入吞吐量。乐观地估计,6.2TB 的文件应该能在 2 小时到 2 天左右完成去重。
    218 天前
    回复了 Gabrielle70 创建的主题 程序员 学一门 IT 技术: 精学和泛学哪种效率高?
    我没有泛学也没有精学,我就直接开写
    反正你泛学精学的目标也是最终变成自己的技能,能写得出来。
    那为何不直接开始写。

    学习学习,学只是一半,习是另一半。只学不习永远学不会
    先把 Explain 贴上来再说
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1114 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 16ms · UTC 18:42 · PVG 02:42 · LAX 10:42 · JFK 13:42
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.