国产 无码 综合区,色欲AV无码国产永久播放,无码天堂亚洲国产AV,国产日韩欧美女同一区二区

人大金倉分析型數(shù)據(jù)庫使用之創(chuàng)建和管理表

這篇具有很好參考價值的文章主要介紹了人大金倉分析型數(shù)據(jù)庫使用之創(chuàng)建和管理表。希望對大家有所幫助。如果存在錯誤或未考慮完全的地方,請大家不吝賜教,您也可以點擊"舉報違法"按鈕提交疑問。

目錄

前言

一、創(chuàng)建表

1、選擇列的數(shù)據(jù)類型

2、設置表和列約束

3、選擇表分布策略


前言

????????數(shù)據(jù)庫的表與任何一種關系型數(shù)據(jù)庫中的表類似,不過其表中的行被分布在系統(tǒng)中的不同實例上。 當用戶創(chuàng)建一個表時,用戶會指定該表的分布策略。????????


一、創(chuàng)建表

????????CREATE TABLE命令創(chuàng)建一個表并且定義它的結果。當用戶創(chuàng)建一個表示,用戶需要定義:

  • 該表的列以及它們的數(shù)據(jù)類型
  • 大型表的表分區(qū)策略
  • 表存儲在磁盤上的方式
  • 表的分布策略,這決定了 數(shù)據(jù)庫如何在 實例 之間劃分數(shù)據(jù)
  • 任何用于限制列或者表中能包含的數(shù)據(jù)的表或者列約束

1、選擇列的數(shù)據(jù)類型

????????一個列的數(shù)據(jù)類型決定了該列能包含的數(shù)據(jù)的類型。 選擇的數(shù)據(jù)類型應使用最少的空間,但仍能容納用戶的數(shù)據(jù)并且能最好地約束數(shù)據(jù)。 例如,對字符串使用character數(shù)據(jù)類型,對于日期使用date或者timestamp數(shù)據(jù)類型,而對數(shù)字使用numeric數(shù)據(jù)類型。

????????對于包含文本數(shù)據(jù)的表列,應指定數(shù)據(jù)類型為VARCHAR或者TEXT。 不推薦指定數(shù)據(jù)類型為CHAR。 在數(shù)據(jù)庫中數(shù)據(jù)類型VARCHAR或者TEXT會把加在數(shù)據(jù)后面的邊距(在最后一個非空白字符后面增加的空白字符)處理為有效字符,而數(shù)據(jù)類型CHAR不會這樣做。

????????使用能容納用戶的數(shù)字型數(shù)據(jù)的且允許未來擴張的最小數(shù)字數(shù)據(jù)類型。 例如,為適合INTSMALLINT的數(shù)據(jù)使用BIGINT會浪費存儲空間。 如果用戶預期用戶的數(shù)據(jù)值將會隨著時間擴張,應該考慮到在裝載大量數(shù)據(jù)后從較小的數(shù)據(jù)類型更改成較大的數(shù)據(jù)類型需要很大的代價。 例如,如果用戶當期的數(shù)據(jù)值適合SMALLINT,但是很可能值會擴張,這樣INT就是更好的長期選擇。

????????對用戶計劃要用在交叉表連接中的列使用相同的數(shù)據(jù)類型。 交叉表連接通常使用一個表中的主鍵和其他表中的外鍵。 當數(shù)據(jù)類型不同時,數(shù)據(jù)庫必須轉換其中之一以便數(shù)據(jù)值能被正確地比較,這會增加不必要的開銷。

2、設置表和列約束

????????用戶可以在列和表上定義約束來限制表中的數(shù)據(jù)。數(shù)據(jù)庫支持和PostgreSQL相同的約束,但是有一些限制,包括:

  • CHECK 約束只能引用它所在的表
  • UNIQUE PRIMARY KEY約束必須和它們所在表的分布鍵和分區(qū)鍵兼容
  • 用戶在分區(qū)表上定義的約束將作為整體應用到分區(qū)表上。用戶不能在該表的單獨的部分上定義約束
  • 允許 FOREIGN KEY 約束,但不會被強制

????????檢查約束允許用戶指定一個特定列中的值必須滿足一個布爾(真值)表達式。例如,要求正的產(chǎn)品價格:

=> CREATE TABLE products
( product_no integer,
name text,
price numeric CHECK (price > 0) );
????????非空約束指定一個列不能有空值。非空約束總是被寫作為列約束。例如:
=> CREATE TABLE products
( product_no integer NOT NULL,
name text NOT NULL,
price numeric );
????????唯一約束確保一列或者一組列中包含的數(shù)據(jù)對于表中所有的行都是唯一的。 該表必須是哈希分布或復制表(不可以是DISTRIBUTED RANDOMLY )。 如果表是哈希分布的,約束列必須是該表的分布鍵列(或者是一個超集)。例如:
=> CREATE TABLE products
( product_no integer UNIQUE,
name text,
price numeric)
DISTRIBUTED BY (product_no);
????????主鍵約束是一個UNIQUE 約束和一個 NOT NULL 約束的組合。 該表必須是哈希分布(非DISTRIBUTED RANDOMLY )的,并且約束列必須是該表的分布鍵列 (或者是一個超集)。 如果一個表具有主鍵,這個列(或者這一組列)會被默認選中為該表的分布鍵。 例如:
=> CREATE TABLE products
( product_no integer PRIMARY KEY,
name text,
price numeric)
DISTRIBUTED BY (product_no);

3、選擇表分布策略

????????所有的數(shù)據(jù)庫表都會被分布。 當用戶創(chuàng)建或者修改一個表時,用戶可以有選擇地指定DISTRIBUTED BY(哈希分布),DISTRIBUTED RANDOMLY(隨機分布),或DISTRIBUTED REPLICATED(全分布)來決定該表的行分布。

????????在決定表分布策略時,請考慮以下幾點:

  • 均勻數(shù)據(jù)分布均 為了最好的性能,所有的 實例 應該包含等量的數(shù)據(jù)。如果數(shù)據(jù)不平衡或者傾斜,具有更多數(shù)據(jù)的實例 就必須做更多工作來執(zhí)行它那一部分的查詢處理。 請選擇對于每一個記錄都唯一的分布鍵,例如主鍵
  • 均勻查詢處理? 為了最好的性能,所有的 實例 應該處理等量的查詢負載。 如果一個表的數(shù)據(jù)分布策略與查詢謂詞匹配不好,查詢負載可能會傾斜。 例如,假定一個銷售事務表按照客戶ID 列(分布鍵)分布。 如果查詢中的謂詞引用了一個單一的客戶ID ,該查詢處理工作會被集中在一個 實例上

?????????復制表分布策略(DISTRIBUTED REPLICATED)應該在小表上使用。 將大表數(shù)據(jù)復制到每個節(jié)點上無論在存儲還是維護上都是有代價的。 復制表最基本的用例是:

  • 可以對節(jié)點執(zhí)行刪除用戶定義的函數(shù)限制
  • 頻繁使用的表不需要廣播到所有節(jié)點可以提高查詢性能
????????CREATE TABLE命令的可選子句 DISTRIBUTED BY, DISTRIBUTED RANDOMLY DISTRIBUTED REPLICATED 決定了表的分布策略。 默認的哈希分布策略使用PRIMARY KEY(如果有的話)或表的第一列作為分布鍵。 幾 何信息列或用戶自定義數(shù)據(jù)類型的列是不能作為 數(shù)據(jù)庫分布列的。 如果找 不到合適的哈希分布的列,數(shù)據(jù)庫就選擇隨機分布策略。復制表沒有分布列,因為每行都分布在 MPP 數(shù)據(jù)庫所有節(jié)點上。

?????????為了保證哈希分布數(shù)據(jù)的均勻分布,最好選一個唯一鍵作為分布列。 如果找不 到,則選擇DISTRIBUTED RANDOMLY。例如:

=> CREATE TABLE products
(name varchar(40),
prod_id integer,
supplier_id integer)
DISTRIBUTED BY (prod_id);

=> CREATE TABLE random_stuff
(things text,
doodads text,
etc text)
DISTRIBUTED RANDOMLY;

????????如果沒有主鍵,但是有唯一索引存在,則選擇它為分布鍵。文章來源地址http://www.zghlxwxcb.cn/news/detail-702910.html

到了這里,關于人大金倉分析型數(shù)據(jù)庫使用之創(chuàng)建和管理表的文章就介紹完了。如果您還想了解更多內(nèi)容,請在右上角搜索TOY模板網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關文章,希望大家以后多多支持TOY模板網(wǎng)!

本文來自互聯(lián)網(wǎng)用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如若轉載,請注明出處: 如若內(nèi)容造成侵權/違法違規(guī)/事實不符,請點擊違法舉報進行投訴反饋,一經(jīng)查實,立即刪除!

領支付寶紅包贊助服務器費用

相關文章

  • 麒麟操作系統(tǒng)安裝人大金倉數(shù)據(jù)庫

    麒麟操作系統(tǒng)安裝人大金倉數(shù)據(jù)庫

    硬件:內(nèi)存512M以上,磁盤空間10G以上 軟件:主流Linux操作系統(tǒng),本機使用kylin-v10 安裝包準備:官網(wǎng)下載數(shù)據(jù)庫文件鏡像以及授權文件 https://www.kingbase.com.cn/rjcxxz/index.htm 把 /etc/systemd/logind.conf 文件中的 RemoveIPC=no 設置,再執(zhí)行一下指令 注意:創(chuàng)建安裝系統(tǒng)用戶 kingbase 之后,如

    2023年04月20日
    瀏覽(31)
  • Kettle連接人大金倉KingbaseES數(shù)據(jù)庫

    Kettle連接人大金倉KingbaseES數(shù)據(jù)庫

    一、方法1:某些情況下連接上數(shù)據(jù)庫后,加載數(shù)據(jù)較慢,甚至卡死時,可往下參考方法2。 1、驅動下載。在人大金倉官網(wǎng)–通用型數(shù)據(jù)庫–接口驅動– JDBC 驅動程序 X86(第一個驅動包)下載出來,直達鏈接(點此直達)。 2、解壓驅動包。注意,驅動包zip文件里面共有6個文

    2024年02月05日
    瀏覽(140)
  • 人大金倉 KingbaseES 數(shù)據(jù)庫更換 license文件

    人大金倉數(shù)據(jù)庫單機和集群license數(shù)量不同。 單機一般一個,集群一般兩個。 1、查找老的license.dat文件,在任何位置執(zhí)行以下命令: [root@kingbase bin]# find / -name license.dat /opt/Kingbase/ES/V8R3/license.dat /home/flysync/license.dat /data/kingbase/R6/license.dat 2、kingbase授權文件確認,一般license.dat全

    2024年02月11日
    瀏覽(92)
  • 人大金倉數(shù)據(jù)庫KingbaseES 安全功能入門學習

    人大金倉數(shù)據(jù)庫KingbaseES 安全功能入門學習

    安全、身份鑒別、用戶管理、審計 金倉數(shù)據(jù)庫管理系統(tǒng)KingbaseES V8.0支持微軟Windows 7、Windows XP、Windows 2003、 Windows 2008等32位及64位發(fā)行版本。 準備需要安裝的金倉數(shù)據(jù)庫管理系統(tǒng)KingbaseES安裝程序和jdk1.8及以上的jdk環(huán)境。 1.3.1 安裝用戶 在安裝金倉數(shù)據(jù)庫管理系統(tǒng)KingbaseES V8.0時

    2024年02月05日
    瀏覽(1450)
  • Docker部署人大金倉KingBaseEs V8數(shù)據(jù)庫

    本文章用例人大金倉版本為KingbaseEs V8R3 , 詳細信息為:kingbase (Kingbase) V008R003C002B0290。 需要安裝連接工具Dbeaver。 Dbeaver安裝教程地址 :https://blog.csdn.net/fy512/article/details/121335289 [人大金倉官網(wǎng)]https://www.kingbase.com.cn/ [人大金倉官方開發(fā)授權文件獲取] https://www.kingbase.com.cn/sqwjx

    2024年02月11日
    瀏覽(96)
  • CYQ.Data 支持 KingbaseES人大金倉數(shù)據(jù)庫

    CYQ.Data 支持 KingbaseES人大金倉數(shù)據(jù)庫

    KingbaseES是一種關系型數(shù)據(jù)庫管理系統(tǒng),也被稱為人大金倉數(shù)據(jù)庫。KingbaseES 是北京人大金倉信息技術股份有限公司研發(fā)的,具有自主知識產(chǎn)權的通用數(shù)據(jù)庫產(chǎn)品。 該產(chǎn)品面向事務處理類應用,兼顧各類數(shù)據(jù)分析類應用,可用做管理信息系統(tǒng)、業(yè)務及生產(chǎn)系統(tǒng)、決策支持系統(tǒng)、

    2024年03月10日
    瀏覽(102)
  • 麒麟V10服務器上安裝與運行人大金倉數(shù)據(jù)庫

    麒麟V10服務器上安裝與運行人大金倉數(shù)據(jù)庫

    1、簡介 人大金倉數(shù)據(jù)庫(KingbaseES)是面向事務處理類、兼顧分析類應用領域的新型數(shù)據(jù)庫產(chǎn)品,致力于解決高并發(fā)、高可靠數(shù)據(jù)存儲計算問題,是一款為企事業(yè)單位管理信息系統(tǒng)、業(yè)務系統(tǒng)量身打造的承載數(shù)據(jù)庫,目前性能已全面升級,是具有高成熟度的數(shù)據(jù)庫產(chǎn)品。 2、

    2024年02月15日
    瀏覽(21)
  • Spring Boot整合JPA和人大金倉(Kingbase8)數(shù)據(jù)庫

    在開發(fā)Java應用程序時,使用JPA(Java Persistence API)可以方便地進行數(shù)據(jù)庫操作。而人大金倉(Kingbase8)是一款基于國產(chǎn)化研發(fā)的關系型數(shù)據(jù)庫。本文將介紹如何在Spring Boot項目中整合JPA和人大金倉數(shù)據(jù)庫,并提供相關實例來演示使用方式。 在開始之前,請確保已經(jīng)滿足以下條

    2024年02月12日
    瀏覽(51)
  • 金倉數(shù)據(jù)庫KStudio使用手冊(3. 數(shù)據(jù)庫管理)

    金倉數(shù)據(jù)庫KStudio使用手冊(3. 數(shù)據(jù)庫管理)

    目錄 3.1.?數(shù)據(jù)庫連接管理?? 3.1.1.?連接的創(chuàng)建,編輯?? 3.1.2.?SSL鏈接配置?? 3.1.3.?驅動屬性?? 3.1.4.?參數(shù)中的變量?? 3.1.5.?連接、斷開連接與重新連接?? 3.2.?導航樹?? 3.2.1.?對象的過濾?? 3.2.2.?對象的分頁?? 3.3.?數(shù)據(jù)庫對象管理?? 3.3.1.?數(shù)據(jù)庫對象的創(chuàng)建和編輯??

    2023年04月17日
    瀏覽(98)
  • 【KingbaseES】銀河麒麟V10 ARM64架構_安裝人大金倉數(shù)據(jù)庫KingbaseES_V8R6(CentOS8)

    【KingbaseES】銀河麒麟V10 ARM64架構_安裝人大金倉數(shù)據(jù)庫KingbaseES_V8R6(CentOS8)

    ?? 個人主頁——??開著拖拉機回家_Linux,Java基礎學習,大數(shù)據(jù)運維-CSDN博客 ????? ???? 希望本文能夠給您帶來一定的幫助??文章粗淺,敬請批評指正!???? ???????????????? ?????????????? ???????????????????????? 感謝點贊和關注 ,每天進步

    2024年02月08日
    瀏覽(96)

覺得文章有用就打賞一下文章作者

支付寶掃一掃打賞

博客贊助

微信掃一掃打賞

請作者喝杯咖啡吧~博客贊助

支付寶掃一掃領取紅包,優(yōu)惠每天領

二維碼1

領取紅包

二維碼2

領紅包