在PG中,我有一个表,它使用partition by hash (*text*, *bigint*),看起来是previous answer,可以看到用于散列的函数,但是我不确定哪个函数是用来构建组合散列的?

它是否将分区键视为一条记录并使用hash_record

最终,我想知道这一点,以便在Java中重新构建哈希函数,以优化对特定分区的读取和写入.

推荐答案

hash_combine64用于计算最终的哈希值.根据代码中的注释,它基于Boost的hash_combine方法.此外,您可以在compute_partition_hash_value函数中找到完整的分区计算算法.

Postgresql相关问答推荐

Postgres 13.8 -如何在对数据执行窗口操作时返回所有行

DBT-DBT依赖于未找到的源

Jsonb[]字段中的PostgreSQL否定&q;-0.0

如何将 jackc/pgx 与连接池、上下文、准备好的语句等一起使用

PostgreSQL - 继承表的常见自动增量

无法从在 wsl 2 上运行的服务之一连接到在 wsl 2 上的容器中运行的 postgres 数据库

如何在 postgresql 上使用 sqlalchemy 进行正确的 upsert?

Heroku Rails 4 无法连接到服务器:connection refused

安装 pg gem 失败,mkmf.rb 找不到 ruby​​ 的头文件(Mac OSX 10.6.5)

如何在 Postgres 中的列上删除唯一约束?

在 postgreSQL 中更改序列名称

避免 created_at 和 updated_at 由 sequelize 自动生成

Postgres 日期重叠约束

Redis 可以写出到像 PostgreSQL 这样的数据库吗?

Hibernate 启动很慢

将 Windows 上的 .sql 文件导入到 postgresql

PostgreSQL 表变量

用于将布尔列排序为 true、null、false 的 SQL

pgadmin 错误:no password supplied

PostgreSQL - GROUP BY 子句或用于聚合函数