AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / user-41913

Federico Ponzi's questions

Martin Hope
Federico Ponzi
Asked: 2016-07-13 01:50:14 +0800 CST

Postgresql:副本和 HA

  • 0

我有 postgresql 9.4。

我知道关于 DBA 和 SO 有很多答案,我知道 wiki 和文档。

但是无论如何,我无法以简单的方式理解拥有主 postgresql 服务器和从主服务器更新的从属 postgresql 服务器的正确方法是什么(尽快,以减少数据丢失)。

此外,我还需要一种方法来在主控失败的情况下自动将从属提升为主控。

我应该使用Repmgr吗?或者我应该只使用 Postgresql 的函数?

谢谢

postgresql replication
  • 1 个回答
  • 94 Views
Martin Hope
Federico Ponzi
Asked: 2016-01-29 06:46:39 +0800 CST

数据仓库:如何查询每日快照?

  • 9

我有一些不是时间序列的数据库快照。例如:

  • 第一天快照:

    +----+---------------+------------+------------+        
    | ID |     Title     |  Category  |    Date    |
    +----+---------------+------------+------------+
    | 1  | My First Post | helloworld | 2015-01-01 |
    +----+---------------+------------+------------+
    
  • 第 2 天快照(今天添加了一个新帖子):

    +----+----------------+------------+------------+        
    | ID |      Title     |  Category  |    Date    |
    +----+----------------+------------+------------+
    | 1  | My first post  | helloworld | 2015-01-01 |
    | 2  | My second post | other      | 2015-01-02 |
    +----+----------------+------------+------------+
    
  • 第 3 天快照(今天删除了第 2 个帖子):

    +----+---------------+------------+------------+        
    | ID |     Title     |  Category  |    Date    |
    +----+---------------+------------+------------+
    | 1  | My First Post | helloworld | 2015-01-01 |
    +----+---------------+------------+------------+
    

所以在几天之间,表格的一行可能是不变的,也可能不是。现在,我需要能够使用这样的查询:

SELECT category, COUNT(*) from day1.My_table group by category

这是一天的一张桌子。如果我们想按类别计算一个月内的每日平均帖子数,我们应该执行以下操作:

SELECT category, SUM(cnt) / 30 
from ( 
    SELECT category, COUNT(*) as cnt 
    from day1.My_table 
    group by category 
        UNION ALL SELECT category, COUNT(*) as cnt 
                  from day2.My_table 
                  group by category 
        UNION ALL ... 
        UNION ALL SELECT category, COUNT(*) as cnt 
                  from day30.My_table 
                  group by category
) group by category

另一个例子,一个月内发表的帖子数:

SELECT COUNT(distinct id) 
from ( 
    SELECT id 
    from day1.My_table 
    UNION ALL ... 
    UNION ALL SELECT id 
              from day30.My_table
) 

基本上我们需要考虑权重。如果我们有 day1.My_table 和 day5.My_table,那么第 1 天而不是第 5 天的每个帖子都将被计算为第 2、3、4 天的帖子。第 1 天和第 5 天的每个帖子都将被视为一个月中的每一天(= 直到下一个快照)。

因此,如果我想考虑平均每天 >=6 个月的帖子数,而我只有 1 个快照,我会为该快照分配 30 的权重。

因此,>= 6 个月前一个月内发布的平均帖子为:

SELECT category, SUM(cnt) / 30 
from ( 
    SELECT category, COUNT(*)*30 as cnt 
    from day1.My_table 
    group by category --- Note: I'm not considering the range defined from the user in this example.
) group by category;

正如评论还指出的那样,我需要进行如下查询:

Select category, AVG(*) 
from [fromRange-toRange].MyTable; 

对于一个极端的解决方案,我正在考虑实施一种元语言来让未来的用户(例如营销人员)进行这样的查询。

你认为有没有一种方法可以在没有元语言的情况下在 Drill 中实现这一点?我会使用递归 UDF 来执行此操作,但它们无法返回查询。

每个快照都是 250GB 大,我希望能够将这些数据集与其他外部数据进行比较(我事先不知道这些数据集的方案)。

有适合 Apache Drill 的解决方案吗?或者这个问题有其他解决方案吗?

此外,任何有关此问题的元语言或论文都值得赞赏。

编辑: 我们没有交易数据。我们有随时间变化的数据,可以添加或删除;因此,我们需要每天的快照。此外,我们事先不知道将要执行的查询,因此我们无法知道要进行哪种类型的聚合。此外,每行大约有 100 列,每个快照(Mysql 表)有 250GB。我们还需要在每一天、每一行对这些数据进行全文搜索。

搜索的一个例子可以是“有多少帖子是关于某个主题的?” 所以它必须在所有帖子中搜索 sometopic 关键字。每个快照可能有也可能没有相同的行。两个快照也可以有相同的帖子,但稍作修改。

mysql database-design
  • 2 个回答
  • 1955 Views
Martin Hope
Federico Ponzi
Asked: 2014-10-01 09:09:53 +0800 CST

如何在postgresql中保存年限

  • 3

我必须保存几年的时间间隔,例如:

id intervalYears
1  2014/2015
2  2015/2016
3  2016/2017

等等。这些年就像学年,所以第一年必须小于第二年,但大于或等于实际年份。

那么,如何保存这个数据类型呢?我应该分开日期并添加一些约束吗?

postgresql datatypes
  • 2 个回答
  • 1026 Views
Martin Hope
Federico Ponzi
Asked: 2014-09-28 00:26:13 +0800 CST

我可以创建一个年份范围内的域吗

  • 2

我必须创建一个间隔两年的自定义域,但实际上我需要这两年。例如:

'2013/2014'
'2015/2016'

有没有办法将这两年都打包在一个域​​中,或者我必须将它们分开在关系的两个属性中?

postgresql domain
  • 1 个回答
  • 83 Views
Martin Hope
Federico Ponzi
Asked: 2014-08-28 09:03:05 +0800 CST

引用另一个 id 字段的 id 字段的类型

  • 1

我在postgresql上。我有一个表用户(id 序列不为空)和另一个表客户端(id)我需要创建一个:外键客户端(id)引用用户(id)。

客户端(id)类型应该是什么?整数还是串行?感谢帮助。

postgresql
  • 1 个回答
  • 1440 Views
Martin Hope
Federico Ponzi
Asked: 2014-07-01 11:05:11 +0800 CST

插入不带引号的空值

  • -2

我正在创建一个依赖于 PostgreSQL 的 PHP 应用程序。现在我有这个查询:

 $query= 'INSERT INTO "users" ("name", "username", "email", "phone") VALUES (\''. $name .'\', \''. $username .'\', \''. $email.'\', '. $phone .')';

$email,$phone并且$name值可以为空。

当我运行这个查询时,我得到一个语法错误。

所以我的问题是:要插入一个空值,我必须手动写入空值还是我在查询中遗漏了什么?

编辑:
似乎我被迫将 null 写为值。

postgresql php
  • 1 个回答
  • 2744 Views

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    连接到 PostgreSQL 服务器:致命:主机没有 pg_hba.conf 条目

    • 12 个回答
  • Marko Smith

    如何让sqlplus的输出出现在一行中?

    • 3 个回答
  • Marko Smith

    选择具有最大日期或最晚日期的日期

    • 3 个回答
  • Marko Smith

    如何列出 PostgreSQL 中的所有模式?

    • 4 个回答
  • Marko Smith

    列出指定表的所有列

    • 5 个回答
  • Marko Smith

    如何在不修改我自己的 tnsnames.ora 的情况下使用 sqlplus 连接到位于另一台主机上的 Oracle 数据库

    • 4 个回答
  • Marko Smith

    你如何mysqldump特定的表?

    • 4 个回答
  • Marko Smith

    使用 psql 列出数据库权限

    • 10 个回答
  • Marko Smith

    如何从 PostgreSQL 中的选择查询中将值插入表中?

    • 4 个回答
  • Marko Smith

    如何使用 psql 列出所有数据库和表?

    • 7 个回答
  • Martin Hope
    Jin 连接到 PostgreSQL 服务器:致命:主机没有 pg_hba.conf 条目 2014-12-02 02:54:58 +0800 CST
  • Martin Hope
    Stéphane 如何列出 PostgreSQL 中的所有模式? 2013-04-16 11:19:16 +0800 CST
  • Martin Hope
    Mike Walsh 为什么事务日志不断增长或空间不足? 2012-12-05 18:11:22 +0800 CST
  • Martin Hope
    Stephane Rolland 列出指定表的所有列 2012-08-14 04:44:44 +0800 CST
  • Martin Hope
    haxney MySQL 能否合理地对数十亿行执行查询? 2012-07-03 11:36:13 +0800 CST
  • Martin Hope
    qazwsx 如何监控大型 .sql 文件的导入进度? 2012-05-03 08:54:41 +0800 CST
  • Martin Hope
    markdorison 你如何mysqldump特定的表? 2011-12-17 12:39:37 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 对 SQL 查询进行计时? 2011-06-04 02:22:54 +0800 CST
  • Martin Hope
    Jonas 如何从 PostgreSQL 中的选择查询中将值插入表中? 2011-05-28 00:33:05 +0800 CST
  • Martin Hope
    Jonas 如何使用 psql 列出所有数据库和表? 2011-02-18 00:45:49 +0800 CST

热门标签

sql-server mysql postgresql sql-server-2014 sql-server-2016 oracle sql-server-2008 database-design query-performance sql-server-2017

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve