MoYi123 最近的时间轴更新
MoYi123

MoYi123

V2EX 第 469223 号会员,加入于 2020-02-14 14:02:50 +08:00
MoYi123 最近回复了
1 天前
回复了 SJH0402 创建的主题 MySQL mysql 分表能带来哪些显著的,可见的提升?
@SJH0402 你要是能直接把查询优化好, 有人会不听你的方案吗?
1. 把关键词列表放到一个 list, 去重排序, 并且把原先的关键词列表替换为这里的 rank, 关键词列表变成 list<list<rank>> 即把 string 离散化.

2. 把上面的 list<string> 变成 ac 自动机, 在文本中搜索. 得到一个 list<int>

3. 在 list<list<rank>>里搜索有哪几个 list<rank>是 list<int>的子序列, 在这里面抄一个最快的算法 https://leetcode.cn/problems/number-of-matching-subsequences/description/
个人建议别熔断, 做这种事情就是纯背锅的.
26 天前
回复了 dyv9 创建的主题 MySQL 全表价格排序的性能
n = 3000000
id = [i for i in range(n)]
原价 = [random.random() * 99999999 for _ in range(n)]
厂家折扣 = [random.random() * 1000 for _ in range(n)]
卖家折扣 = [random.random() * 1000 for _ in range(n)]
买家折扣 = [random.random() * 1000 for _ in range(n)]
汇率 = [random.random() * 10 for _ in range(n)]

table = list(zip(id, 原价, 厂家折扣, 卖家折扣, 买家折扣, 汇率))


def sort_by(row):
id, 原价, 厂家折扣, 卖家折扣, 买家折扣, 汇率 = row
return 原价 - 厂家折扣 - 卖家折扣 - 买家折扣 * 汇率


import time

start = time.time()
table.sort(key=sort_by)

print(time.time() - start) # 1.0334241390228271


300w 行用 python 全部排序也才 1 秒, 数据库里 c/c++的排序怎么可能要 10 秒呢?
况且 limit n 的情况下只需要 O(n)的排序算法. python 里的还是 O(nlogn)的.

你该不会是把数据全拉到本地再计算的吧.
26 天前
回复了 Mithril 创建的主题 职场话题 如何避免波音这类问题发生在你公司
怎么上来就复读程序员思维? 我看 op 也没说要用技术来解决吧?
42 天前
回复了 zwyyy456 创建的主题 程序员 caddy 的内存占用异常高
core dump 下来, 到本地的 goland 里看
Settings -> Build, Exections, Deployment -> Deployment -> optional -> Delete remote files when local are deleted;
要快应该得搞点 simd 吧(readme 里也提到了), 这个代码里好像也没有.
43 天前
回复了 vanpeisi7 创建的主题 PostgreSQL 求助,关于 sql 查询时间取并集的情况
这个 sql 什么意思, 感觉逻辑很奇怪, 一般来说 open_time 应该小于 close_time 吧


总之想个办法, 把其中一个时间改成 between 一个较小的时间段, 性能应该就会好不少.

现在是 2 个大 set 取交集, 肯定很慢.
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5967 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 15ms · UTC 02:29 · PVG 10:29 · LAX 18:29 · JFK 21:29
Developed with CodeLauncher
♥ Do have faith in what you're doing.