中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Infobright列式存儲數據庫

發布時間:2020-04-25 11:55:43 來源:網絡 閱讀:936 作者:DBAspace 欄目:數據庫

Infobright 是一個非常強大的列式存儲數據庫,基于MySQL的高效數據倉庫。

之所以使用數據倉庫,是因為目前MySQL數據庫中的數據增長很快,定期會對一些歷史記錄表進行清除,但后期的統計分析還會用到這些歷史數據,隨著數據量的增大,查詢也越來越慢,而數據庫倉庫特有的存儲格式能夠減小磁盤空間內的占用,同時列式的特點使得查詢速度大為改觀。選擇Infobright是因為它鎖支持的數據類型更多些,更接近于mysql,更節省磁盤空間,主要的統計查詢還不是在數據倉庫上,偶爾的查詢一下速度倒不是要求最優,作為社區版本(ICE版本)最×××煩是不能做DML操作的,實際測試也是那么回事,如果插入數據有些不合適的地方,需要刪除,只能drop table,然后從新建表和導入數據........

infobright的優勢:

1.    數據壓縮:適合存放很大的數據量,節約磁盤存儲

2.    查詢速度:基礎的匯總語句,sum avg  min max  count()  groupby 速度比oracle的要快,不用建立索引、不用給大表分區,省很多工作量,適合數據匯總、報表統計

infobright的局限性ICE:

1.    infobright不支持DML(只支持select)

只有select可以支持,update/insert/deltete以及truncate table 都不能使用,插入表數據:用laod data infile

2.只支持單擊、單核

由于Infobright官方已經提供好了rpm的包,所以安裝起來相對來說較為簡單:

rpm -ivh infobright-4.0.7-0-x86_64-ice.rpm --prefix=/usr/local/infobright

這樣就會安裝到/usr/local/infobright/infobright-4.0.7-0-x86_64

對于整個安裝過程,相當的簡單,比較繁瑣的是對于相關參數的設置:

A、配置內存大小

vim /usr/local/infobright-4.0.7-x86_64/data/brighthouse.ini

修改內存的配置可參加其建議值進行設置:

############  Critical MemorySettings ############

# System Memory   Server Main Heap Size     ServerCompressed Heap Size   Loader Main HeapSize

# 32GB                24000                     4000                       800

# 16GB                10000                     1000                       800

#  8GB                  4000                       500                       800

#  4GB                  1300                       400                       400

#  2GB                  600                        250                       320

B、系統自帶配置功能

sh /usr/local/infobright-4.0.7-x86_64/postconfig.sh

這個腳本可以改變datadir,cachedir,socket,port等配置,需要root來執行,執行后返回的信息如下:(如無需修改,則全部N即可)

Infobright post configuration

--------------------------------------

Using postconfig you can:

--------------------------------------

(1) Move existing data directory to other location,

(2) Move existing cachedirectoryto other location,

(3)Configure server socket,

(4)Configure server port,

(5) Relocate datadir pathto an existing data directory.

 

Please type'y'foroption that you want or press ctrl+c for exit.

 

Current configuration:

 

--------------------------------------

Current config file: [/etc/my-ib.cnf]

Current brighthouse.ini file: [/usr/local/infobright-4.0.7-x86_64/data/brighthouse.ini]

Current datadir: [/usr/local/infobright-4.0.7-x86_64/data]

Current CacheFolder in brighthouse.ini file: [/usr/local/infobright-4.0.7-x86_64/cache]

Current socket: [/tmp/mysql-ib.sock]

Current port: [5029]

--------------------------------------

 

(1) Do you want to copy current datadir [/usr/local/infobright-4.0.7-x86_64/data] to a new location? [y/n]:n

(2) Do you want tomovecurrent CacheFolder [/usr/local/infobright-4.0.7-x86_64/cache] to a new location? [y/n]:n

(3) Do you want tochangecurrent socket [/tmp/mysql-ib.sock]? [y/n]:n

(4) Do you want tochangecurrent port [5029]? [y/n]:n

(5) Do you want torelocateto an existing datadir? Current datadir is [/usr/local/infobright-4.0.7-x86_64/data]. [y/n]:n

 

--------------------------------------

--------------------------------------

No changes has been made.

--------------------------------------

C、設置字符集

infobright默認情況下不支持中文,為了更好的支持中文,需要設置默認的字符集。

vim /etc/my-ib.cnf

找到如下內容

collation_server=latin1_bin

character_set_server=latin1

將其修改為:

collation_server=utf8_bin

character_set_server=utf8

D、安裝啟動腳本

cp /usr/local/infobright-4.0.7-x86_64/share/mysql/mysql.server /etc/init.d/mysqld-ib

vim /etc/init.d/mysqld-ib

找到如下兩行代碼:

conf=@BH_CONF@

user=@BH_USER@

修改為:

conf=/etc/my-ib.cnf

user=root##這里只能用root啟動服務,其他用戶需要研究如何啟動

相關的其他指令:

/etc/init.d/mysqld-ib stop

/etc/init.d/mysqld-ib restart

添加開機啟動:

chkconfig --add mysqld-ib

E、Mysql安全設置

PATH=$PATH:/usr/local/infobright-4.0.7-x86_64/bin

mysql_secure_installation

完成后再給mysql添加一個遠程連接的賬號,只想如下命令進入mysql client:

mysql -uroot -p

添加完遠程用戶方法如下:

GRANT ALL PRIVILEGESON *.* TO'infobright'@'%'IDENTIFIEDBY'password'WITHGRANTOPTION;
FLUSHPRIVILEGES;

mysql數據導入到infobright中

CREATE TABLE `ricci_var` (

  `id`int(11) DEFAULT NULL,

 `name` varchar(20) DEFAULT NULL,

 `c_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATECURRENT_TIMESTAMP

) ENGINE=InnoDB

select * from ricci_var into outfile'/tmp/var.csv' fields terminated by ',' optionally enclosed by '"' lines terminated by '\n'

###紅色部分在導入的數據設置的分隔符等信息,導入也要相同

#導出數據的時候需要存放在數據庫目錄下或者/tmp目錄下,MySQL5.7是沒有權限導出需要設置

secure_file_priv配置對數據導入導出的影響:

secure_file_priv  mysqld 用這個配置項來完成對數據導入導出的限制

1、限制mysqld 不允許導入 | 導出

 mysqld --secure_file_prive=null

2、限制mysqld 的導入 | 導出只能發生在/tmp/目錄下

 mysqld --secure_file_priv=/tmp/

3、不對mysqld 的導入| 導出做限制

 /etc/my.cnf
    [mysqld]
    secure_file_priv

把數據導入infobright庫里

在inf庫里添加相同類型的表在導入數據:

load data infile "/tmp/var.csv"into table var fields terminated by ',' optionally enclosed by '"' linesterminated by '\n'

文本數據導入inf里:

[root@localhost home]# cat aa.txt 

1,"noe,two or three",2222

2,3,4

create table aa(id int,textfiedl varchar(40),number int)

load data infile "/home/aa.txt" into table aa fields terminated by ',' enclosed by '"';

mysql> select * from aa;

+------+------------------+--------+

| id   | textfiedl        | number |

+------+------------------+--------+

|    1 | noe,two or three |   2222 |

|    2 | 3                |      4 |

+------+------------------+--------+

(1)“”是為了將列區分開

(2)每行寫好后必須回車,不然導不進去

##自己驗證正確性把

導數據庫的時候不建議使用客戶端工具來搞,總感覺好多坑的。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

武宁县| 金乡县| 格尔木市| 沁阳市| 绍兴县| 仪陇县| 桦川县| 彭州市| 河北省| 云和县| 儋州市| 会宁县| 盱眙县| 广德县| 沂水县| 临沂市| 张家港市| 文昌市| 于都县| 泰兴市| 锦州市| 巴林左旗| 吉林省| 九龙城区| 日喀则市| 梓潼县| 绩溪县| 高台县| 泰和县| 共和县| 龙泉市| 海口市| 托里县| 潜山县| 蒙山县| 肃北| 通辽市| 攀枝花市| 房山区| 蚌埠市| 海阳市|