superares 最近的时间轴更新
superares

superares

V2EX 第 76659 号会员,加入于 2014-10-10 23:21:31 +08:00
今日活跃度排名 2237
superares 最近回复了
@Ansen678 OpenAI 封卡就是被这种玩坏的
3 天前
回复了 conky 创建的主题 分享发现 不明白为什么要用虚拟卡开 chatgpt
@caohuihe31 开的英国虚拟卡,因为之前地址填的英国的
5 天前
回复了 dreamramon 创建的主题 PostgreSQL [pg15.2]一个亿级聊天记录表的调优
来源 ChatGPT 4 ,听上去有点道理:
```
你的查询慢可能是由于几个原因:

1. 你正在计算三个不同的计数,其中两个使用 `DISTINCT`。这将要求数据库执行额外的工作来确认值的唯一性。在大数据集中,这可能会引发性能问题。

2. 你在查询中使用了 `WHERE` 子句,这将对表的所有行进行扫描,以确定哪些行满足条件。这可能需要大量时间,特别是当表的行数非常大时。

考虑到这些问题,我有以下建议:

1. **索引:**根据 `EXPLAIN` 的结果,查询正在使用一个名为 `idx_timestamp` 的索引,但由于你的查询中涉及到 `chat_id` 和 `sender_id` 的 DISTINCT 计数,你可能需要为 `chat_id` 和 `sender_id` 创建索引,以加速这部分的计算。

2. **预计算:**如果可能,你可以考虑预计算结果。例如,你可以创建一个触发器,在插入、更新或删除 `tb_groupchat` 表的行时更新计数。这样,你可以直接从预计算的值中读取计数,而不是在每次查询时计算它们。

3. **优化 DISTINCT 计数:**对于 DISTINCT 计数,如果你能容忍一些误差,你可以使用一些近似 DISTINCT 计数的方法,例如使用 HyperLogLog 算法,它可以以较小的内存开销得到近似的结果。注意,这需要 PostgreSQL 9.4 或更高版本。

4. **查询分解:**你可以考虑将查询分解为几个独立的查询,每个查询只计算一个计数。这可能会减少数据库的工作量,尽管它会增加应用程序的复杂性。

5. **硬件升级:**如果上述方法都不能满足你的需要,可能需要考虑升级硬件,例如增加内存、使用更快的存储设备,或者增加处理器核心数。

希望这些建议对你有所帮助。如果你能提供更多关于你的应用场景、数据量和性能要求的信息,我可能能提供更具体的建议。
```
6 天前
回复了 conky 创建的主题 分享发现 不明白为什么要用虚拟卡开 chatgpt
@superares #123
PS: 我说的是绑 API Key ,绑 Plus 没测试,因为我是在 AppStore 上开的 Plus
6 天前
回复了 conky 创建的主题 分享发现 不明白为什么要用虚拟卡开 chatgpt
@superares #55
修正:
刚在公司绑定失败了,到家后,看到网上说需要把 strip.com 设置和 openai.com 走一样的网络,遂将 openai.com strip.com sentry.io 设置为同一个 IP 出口,再绑定 wise 的虚拟卡成功。
大家可以试试
7 天前
回复了 conky 创建的主题 分享发现 不明白为什么要用虚拟卡开 chatgpt
已经测试了,wise 的虚拟卡在绑 OpenAI 的 API 支付方式的时候失败了。
11 天前
回复了 samyang5273 创建的主题 职场话题 传言阿里要有大动作?
@Rinndy 集团在纳斯达克上市,现在要分拆在国内上
12 天前
回复了 fengfu 创建的主题 Apple M2pro 官翻上架了, 85 折左右,感觉还可以
我在等 RISC-V
CF 的 VPN 访问自家 CDN 很快的。
说明你的网络连 CF 的 VPN 快,连 CF 的 CDN 慢
关于   ·   帮助文档   ·   博客   ·   nftychat   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   968 人在线   最高记录 5634   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 16ms · UTC 19:06 · PVG 03:06 · LAX 12:06 · JFK 15:06
Developed with CodeLauncher
♥ Do have faith in what you're doing.