`
blueoxygen
  • 浏览: 1199578 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

Pooled table and Cluster table

    博客分类:
  • SAP
阅读更多
很多人可能不知道他们和透明表的区别,和为什么定义这两个表。
只知道类似BSEG这样的簇表没法JOIN,原理就不懂了。

前阵子把公司Bao同志做的KS翻了出来,再次复习了一下簇表,以及JCO+簇表的实战演练。
不知道的小朋友先补补吧。
http://www.sap-img.com/abap/the-different-types-of-sap-tables.htm
http://blog.csdn.net/kevingao/archive/2005/04/04/335724.aspx
http://help.sap.com/saphelp_nw04/helpdata/en/cf/21f0b7446011d189700000e8322d00/frameset.htm

关于cluster database 以后再说,在这里,感谢留言朋友的指正。
正在调查中,有些关联的关系可能是我想当然了:)

分享到:
评论
15 楼 jgtang82 2007-09-12  
blueoxygen分析的很detail,不错:)
14 楼 blueoxygen 2007-09-12  
OPEN SQL是会解析成不同的NATIVE SQL,关于簇表的用FIELD JOIN问题,JOIN一般都是JOIN内键与外键。
那么拿BSEG来说,他的table cluster是RFBLG。
我们可以看到他的结构是
MANDT CLNT 3
BUKRS CHAR 4
BELNR CHAR 10
GJAHR NUMC 4
PAGENO INT2 5
TIMESTMP CHAR 14
PAGELG INT2 5
VARDATA RAW 3800
BSEG本身的BUZEI已经不在table cluster的KEY中。
他和其他字段内容,被共通写进了VARDATA中。此刻无论如何转化成NATIVE SQL,我想没有一种NAVIVE SQL能够会再讲JOIN能够自动解析到表中某个字段的内容的某个内容。

关于DB中实际存在的物理表,可以在数据库中找到RFBLG这样一个与数据字典对应的table cluster物理表。字段结构与其一模一样。所以,JOIN就更不可能了。
13 楼 jgtang82 2007-09-12  
for all entries 在后台数据库不同时解析生成的Native SQL也不同的, 这也是我昨天说SAP DAL做的强大的一个原因之一.回过头来想想我们做的所谓的架构,还是比较初级的.:)
12 楼 blueoxygen 2007-09-12  
我刚发现哦,你说的INDX-type table是SAP NW04的Help里的叫法
http://help.sap.com/saphelp_nw04/helpdata/en/fc/eb3c05358411d1829f0000e829fbfe/content.htm

我说的cluster database是4.7的叫法
http://help.sap.com/saphelp_47x200/helpdata/en/fc/eb3c05358411d1829f0000e829fbfe/content.htm

唉,估计SAP自己也感觉到叫做cluster database不好了。可是这个INDX-TYPE table,我感觉也够晦涩。
11 楼 blueoxygen 2007-09-12  
因为cluster table和table cluster的特殊性,使我误以为他们使用的是cluster database(http://help.sap.com/saphelp_47x200/helpdata/en/fc/eb3c05358411d1829f0000e829fbfe/content.htm)
也就是你说的INDX-type db table。
不过我今天有空会研究一下,找出来到底底层有没有共通性。
因为从原理来看,table cluster就是个cluster database.

其实for all entries操作你也知道,那根本不是任何标准SQL中的join了,只是好像Join而已.
10 楼 jgtang82 2007-09-12  
Data Cluster: We can look it like a package consisted of a set of objects. For instance, a data cluster maybe is a string, an itab, a structure or something else.
而Data Cluster可以存在Memory和Database中,当存在DB中时那个table就叫做INDX-type db table.

另外pooled/cluster tables 之间是不能做Join操作的.但对单表操作的Open SQL是可用的, 需要Join时有两种做法:
1. 使用它们的索引表(如果有的话)
2. For all entries in
:)
9 楼 jgtang82 2007-09-12  
Data Cluster: We can look it like a package consisted of a set of objects. For instance, a data cluster maybe is a string, an itab, a structure or something else.
而Data Cluster可以存在Memory和Database中,当存在DB中时那个table就叫做INDX-type db table.

另外pooled/cluster tables 之间是不能做Join操作的.但对单表操作的Open SQL是可用的, 需要Join时有两种做法:
1. 使用它们的索引表(如果有的话)
2. For all entries in
:)
8 楼 blueoxygen 2007-09-11  
我感觉有些问题我可能搞混了,明天需要查资料,上系统来确认一下。因为我想当然的以为table cluster应用了cluster database技术...看来未必,或者说,不是这么一回事。
7 楼 jgtang82 2007-09-11  
呵呵,我明天上班的时候再看下我的Knowledge base,确认一下具体的叫法。原理方面其实help上面说的很清楚的,SAP的数据访问层做的不是一般的强的。

Table Pool & pool table
Table Cluster & cluster table
table cluster/cluster table
data cluster
Extract dataset
logical database
这些内容确实有不少人没搞的很清楚。
6 楼 blueoxygen 2007-09-11  
可能是我写的太糊涂了。
直接用OPEN SQL可操作的,是cluster table和pooled table,需要用IMPORT EXPORT操作的是SAP有严格定义的table cluster, table pool,这个四个名词是按照SAP HELP上来的。
可能你说的的table cluster就是我指的cluster table,比如我说的BSEG。
那样就没啥问题了。不过还是不能JOIN
5 楼 blueoxygen 2007-09-11  
不是多个表,而是数据字典中虚拟的多个表,在真实DB里,实际是一张表。口误
4 楼 blueoxygen 2007-09-11  
hoho,是嘛?
你测试一下INNER JOIN一下BSEG,肯定不让滴呀。
他们的底层原理是在真实DB里,多个表放在一个表里,也就是table cluster, table pooled,怎么join呢?
3 楼 jgtang82 2007-09-11  
table cluster一般是不能包含像LRAW,LCHAR等这样的数据类型的。我想你这里说的table cluster应该是指INDX-type table.:)它有特定的结构,最后一列放一个data cluster,这种类型的表用Import和Export这种的语句对其内容进行访问。
像cluster table 和 pooled table是可以用Open SQL直接访问的,Join操作也是可以的。
2 楼 blueoxygen 2007-09-11  
pooled table和cluster table是没啥关系,只是有区别而已。
只是绝大多数我们接触的都是透明表,尤其add-on table,自己几乎很少建pooled,cluster table。
另外,pooled table的建立就要指定table pool, cluster table的建立也要指定table cluster.当然,table cluster可以单独建立,作为某种解决方案。
比如用来存储图片,附件等超大型长度文件。
1 楼 jgtang82 2007-09-11  
你说的与Pooled table和cluster table好像没什么关系吧?应该是INDX-Type database table 吧?

Table Pool:Database table in the database that contains the data of several pool tables which were defined in ABAP dictionary.

Table Cluster:Database table in the database that contains the data of several cluster tables which were defined in ABAP dictionary.

相关推荐

    R2CNN: Rotational Region CNN for Orientation Robust Scene Text Detection

    Second, for each axis-aligned text box proposed by RPN, we extract its pooled features with different pooled sizes and the concatenated features are used to simultaneously predict the text/non-text ...

    SAP方丈-ABAP通过表结构查表字段.doc

    在 SAP 系统中,表结构可以分为两类:Transparent Table 和Pooled Table。Transparent Table 是指 SAP 系统中的基本表结构,用于存储和管理数据。Pooled Table 是指 SAP 系统中的池表结构,用于存储和管理数据。 二...

    Pooled响应式后台管理模板.zip

    综上所述,"Pooled响应式后台管理模板"是一个全面的解决方案,它将Bootstrap的强大功能与响应式设计相结合,为后台管理提供了一套直观、易用且跨平台的界面。无论你是开发者还是设计者,都可以利用这套模板快速构建...

    ABAP基础(总结得很好).pdf

    - **共享表(Pooled Table)**:多个共享表共用一个物理表,适用于存储较小的数据集,同样不支持索引。 #### 四、ABAP字典中的视图 - **数据库视图(Database View)**:直接映射到数据库表。 - **投影视图(Project ...

    pooled-pg:与 pg 兼容的 PostgreSQL 驱动程序,具有更有效的池化策略

    由于 pooled-pg 旨在与 pg 兼容,只需将pg替换为pooled-pg ! 池化是使用generic-pool ,它应该比pg自己的池化更强大,根据它不是 100% 可靠的。 pg.connect() 在以下行中,更改pg : var pg = require('pg'); ...

    RemObjects SDK for Delphi

    Pooled: multiple server instances are accessible by clients. This works exactly the same as Singleton, unless the first server instance is busy. Note: to test this sample properly, you need to run ...

    koa-pooled-mongo:Koa-pooled-mongo 是 koa 的 mongodb 中间件,支持连接池。 这个想法的灵感来自 Koa-mongo。 但是这个使用 co-mongo 而不是原生的 mongodb lib 来支持基于生成器的流量控制

    koa-pooled-mongo Koa-pooled-mongo 是 koa 的 mongodb 中间件,支持连接池。 这个想法的灵感来自 Koa-mongo。 但是这个使用 co-mongo 而不是原生的 mongodb lib 来支持基于生成器的流量控制。 随着时间的推移,还...

    第四章 数据字典和数据表的读取.pdf

    - **存储表(Pooled Table)**:多个逻辑表共享一个物理表,适用于存储较少的数据量。 - **簇表(Cluster Table)**:将多个表合并成一个物理表,以减少空间需求。 - **视图(Generated View Structure)**:基于一...

    mybatis动态创建数据库表

    <dataSource type="POOLED"> ``` 总结,MyBatis动态创建数据库表的能力主要依赖于与数据库交互的SQL语句,通过自定义Mapper和XML配置文件,可以实现数据库表的创建、数据的插入和更新。在实际应用中...

    incremental_learning.pytorch:渐进式学习论文实施的集合,包括PODNet(ECCV20)和Ghost(CVPR-W21)

    不断学习的增量学习者存储我在博士学位论文(2019-)期间完成的所有公共作品的存储库。 您可以在其中找到已知的实现(iCaRL等),也可以... author={Douillard, Arthur and Cord, Matthieu and Ollion, Charles and R

    k-Nearest Neighbor Classification

    of the k nearest neighbors is then pooled by means of Dempster's rule of combination. This approach provides a global treatment of such issues as ambiguity and distance rejection, and imperfect ...

    pooled_redis:无需全局变量即可访问redis连接的简单方法

    安装将此行添加到应用程序的 Gemfile 中: gem 'pooled_redis'用法使用Redis.new支持的选项将redis部分添加到您的database.yml development : redis : db : 2production : redis : url : ' redis://mymaster ' ...

    TDD, 轨迹池深层卷积描述符.zip

    TDD, 轨迹池深层卷积描述符 基于的轨迹池深层卷积本文提供了跟踪轨迹池深层卷积描述符( TDD )的代码,如下所述:Action Recognition with Trajectory-Pooled Deep-Convolutional Descriptors

    Mybatis 逆向工程/ 自动生成代码

    <dataSource type="POOLED"> ``` 接下来,你需要指定生成代码的目标包名,这将决定生成的 Java 类会被放在哪个目录下。比如: ```xml <targetPackage>com.example.myproject.model</targetPackage> ...

    近三年来有关动作识别的几篇论文

    Action Recognition with Trajectory-Pooled Deep-Convolutional Descriptors 2015 CVPR ActivityNet A Large-Scale Video Benchmark for Human Activity Understanding 2015 CVPR Bag of Visual Words and Fusion ...

    pooled-ws-client-test:池化 JAX-WS 客户端示例

    #Pooled WS 客户端示例 这是一个示例项目,展示了一种利用 Apache Commons Pool 创建和维护 JAX-WS 客户端代理池的方法。 将部署两件事:一个 JAX-WS 端点和一个“客户端”servlet。 调用 servlet 时,它将创建一个...

    mybatis_generator_1.3.1

    <dataSource type="POOLED"> ... ``` 接着,你可以定义生成的Java模型类、Mapper接口和XML映射文件。MBG支持多种代码生成策略,可以根据需要定制。例如: ```xml <table tableName="my_table" ...

    mongo-wrapper-pooled:使用 generic-pool 连接池的 mongodb 包装库

    mongo-wrapper-pooled 使用 generic-pool 连接池的 mongodb 包装库 用法 初始化 var MongoWrapper = require ( 'mongo-wrapper-pooled' ) ; var settings = { host : 'localhost' , port : '27017' , db : '...

    IDL Analyst.pdf

    - **IMSL_POOLED_COV**: Computes the pooled covariance matrix, which is useful in comparing the variability across different groups. - **IMSL_ROBUST_COV**: Provides a robust estimate of the covariance ...

    Pooled-Storage Filesystem- PFS for Linux-开源

    Pooled-Storage Filesystem(PFS)是针对这个问题提出的一种创新方案,尤其对于Linux用户来说,它提供了一种打破传统固定大小卷限制的途径。 标题中的“PFS for Linux - 开源”表明这是一个专为Linux操作系统设计的...

Global site tag (gtag.js) - Google Analytics