标签: partitioning

Oracle 计算分区中的行数

我有以下设置,其中包括分区。我可以使用一个查询来提供表中每个分区的计数吗?

我不喜欢通过收集统计数据而不是实际计数(*)来进行可能的估计。请注意,分区名称可以重命名!

下面是我的测试用例。感谢所有回答的人。


ALTER SESSION SET NLS_DATE_FORMAT = 'MMDDYYYY HH24:MI:SS';

CREATE TABLE dts (
   dt   DATE
)
PARTITION BY RANGE (dt)
INTERVAL (NUMTODSINTERVAL(7,'DAY'))
(
   PARTITION OLD_DATA values LESS THAN (TO_DATE('2022-01-01','YYYY-MM-DD'))
);


INSERT into dts(dt)
select to_date ( 
'01-08-2022','mm-dd-yyyy' ) + 
         ( level / 24 ) dt
from   dual
connect by level <= ( 24 + ( 24 * 
    (to_date('01-15-2022' ,'mm-dd-yyyy') -       to_date('01-08-2022','mm-dd-yyyy') )
  ) 
) ;

SELECT table_name,
       partition_name,
       num_rows
FROM   user_tab_partitions
WHERE table_name not like 'BIN$%'
ORDER BY table_name, …
Run Code Online (Sandbox Code Playgroud)

oracle partitioning count

1
推荐指数
1
解决办法
7540
查看次数

ActiveRecord、Postgres 和分区表

我已经根据此处的pg 文档在我们的 pg 8.3 数据库之一上设置了基于触发器的分区方案: 。基本上,我有一个父表和几个子表。父表上的插入触发器会将父表上的任何插入重定向到适当的子表中——这效果很好。

然而,ActiveRecord pg 适配器似乎依赖于 postgres INSERT ... RETURNING "id" 扩展来获取初始插入后返回行的 id。但触发器似乎破坏了 RETURNING 子句——尽管行已正确创建,但没有返回 id。

虽然我认为这种行为是有道理的——毕竟,主表中没有插入任何内容,我确实需要找到某种解决方法,因为将插入其他需要刚刚插入的行 ID 的子记录排。

我想我可以在插入之前向行添加某种唯一的 id,然后在插入后使用此键重新读取它,但这看起来相当混乱。有人有更好的解决方法吗?

postgresql activerecord partitioning ruby-on-rails rails-activerecord

0
推荐指数
1
解决办法
1745
查看次数

RANK()Over Partition BY不工作

当我运行下面的代码时,ROWID始终为1.我需要ID为1,对于具有相同信用值的每个项目.

;WITH CTETotal AS (SELECT
     TranRegion
    ,TranCustomer
    ,TranDocNo
    ,SUM(TranSale) 'CreditValue'
FROM dbo.Transactions

LEFT JOIN customers AS C 
      ON custregion = tranregion 
      AND custnumber = trancustomer
LEFT JOIN products AS P
      ON prodcode = tranprodcode

GROUP BY
TranRegion
,TranCustomer
,TranDocNo)

SELECT
       r.RegionDesc
      ,suppcodedesc
      ,t.tranreason as [Reason]
      ,t.trandocno as [Document Number]
      ,sum(tranqty) as Qty
      ,sum(tranmass) as Mass
      ,sum(transale) as Sale
      ,cte.CreditValue AS 'Credit Value'
      ,RANK() OVER (PARTITION BY cte.CreditValue ORDER BY cte.CreditValue)AS ROWID

FROM transactions t

LEFT JOIN dbo.Regions AS …
Run Code Online (Sandbox Code Playgroud)

t-sql sql-server partitioning

0
推荐指数
1
解决办法
3636
查看次数

蜂巢中的分区和分区有什么区别?

我不清楚hive中分区和分区之间的区别,如果你可以通过示例提供一些细节,我将非常感激.

hadoop hive partitioning

0
推荐指数
1
解决办法
7471
查看次数

在Hive中使用RANK OVER功能

我正在尝试在Hive中运行此查询,以仅返回在adimpression表中更常出现的前10个网址.

select
        ranked_mytable.url,
        ranked_mytable.cnt

from
        ( select iq.url, iq.cnt, rank() over (partition by iq.url order by iq.cnt desc) rnk
        from
                ( select url, count(*) cnt
                from store.adimpression ai
                        inner join zuppa.adgroupcreativesubscription agcs
                                on agcs.id = ai.adgroupcreativesubscriptionid
                        inner join zuppa.adgroup ag
                                on ag.id = agcs.adgroupid
                where ai.datehour >= '2014-05-15 00:00:00'
                        and ag.siteid = 1240
                group by url
                ) iq
        ) ranked_mytable

where
      ranked_mytable.rnk <= 10

order by
        ranked_mytable.url,
        ranked_mytable.rnk desc

;
Run Code Online (Sandbox Code Playgroud)

不幸的是我收到一条错误消息:

FAILED: SemanticException [Error 10002]: Line 26:23 Invalid column reference …
Run Code Online (Sandbox Code Playgroud)

hadoop hive partitioning rank

0
推荐指数
2
解决办法
5万
查看次数

确定R中ram的大小

有什么方法可以报告 R 中可用系统 RAM 的总量吗?我需要一个可以在任何系统上运行的选项,而不仅仅是 Windows。

根据可用的 RAM 量,我想对数据进行分区并以并行串行方式运行作业。如果 RAM 大小足够大,我会使用更多核心,如果大小很小,我会使用更少核心和更多分区。

memory parallel-processing partitioning r

0
推荐指数
1
解决办法
476
查看次数

Oracle 中的全局非分区索引

我正在阅读 Oracle 分区索引的文档。人们随处都可以发现本地分区索引和全局分区索引之间的区别,这对我来说是很清楚的。

我很困惑,“全局”一词并不意味着索引根本已分区。

例如,Thomas Kyte 在“专家 Oracle 数据库架构”中有几个示例,如下所示:

create index partitioned_idx_global
on partitioned(timestamp)
GLOBAL;
Index created.
Run Code Online (Sandbox Code Playgroud)

人们可以在其他地方找到类似的示例,其中关键字 GLOBAL 后面没有任何分区描述。

GLOBAL 之后没有分区子句,这似乎与CREATE INDEX docs中允许的内容形成对比。

非分区全局索引的文档对我来说也没有多大意义。

全局非分区索引的行为与本地非分区索引类似。

“本地非分区索引”到底是什么?它甚至不应该存在。

所以最终我的问题是消除混乱。常规索引和全局非分区索引有什么区别?上面书中引用的语法是否“合法”?

oracle indexing partitioning

0
推荐指数
1
解决办法
1471
查看次数

F# List.partition 的 LINQ 等效项

使用 LINQ,如何以与 F# 的List.paritionIEnumerable函数等效的方式对an 进行分区?结果应该是根据谓词将源序列划分为两个序列,每个源项评估一次谓词。

linq partitioning

0
推荐指数
1
解决办法
403
查看次数

CosmosDB 令人困惑的分区键

我正在研究 CosmosDB 的 Python 示例(请参阅CosmosDB for Python),我看到一个容器定义如下:

    partition_key = PartitionKey(path='/id', kind='Hash')
    db.create_container(id=id, partition_key=partition_key)
Run Code Online (Sandbox Code Playgroud)

读取项目的代码:

response = container.read_item(item=doc_id, partition_key=doc_id)

Run Code Online (Sandbox Code Playgroud)

现在我的困惑是为什么选择与唯一文档 ID 相同的分区键。那么,这里分区有什么用呢?

在我看来,分区适用于共享某些公共组的键,例如食物组的分区。

python partitioning azure-cosmosdb

0
推荐指数
1
解决办法
1410
查看次数