SlideShare a Scribd company logo
1 of 81
Download to read offline
MariaDB ColumnStore
はじめませんか?
JPMUG 代表 カワノ
ColumnStoreとは?
ColumnStoreの歴史
ColumnStoreとは?
チューニングレスで⾼い検索パフォーマ
ンスを実現するDWH特化型データベース
ColumnStoreとは?
• 分析/集計処理に最適なカラムストアエンジン
• MySQLとの互換性
• 専⽤HD不要
• リニアにスケールアウト
ColumnStoreとは?
パフォーマンス改善の切り札
アーキテクチャ
• ⼤規模並列処理(Massively	Parallel	Processing)
アーキテクチャ
⼤規模並列処理
Clients
User
Module
Performance
Module
ColumnStore Distributed
Data	Storage
User	sessions
MariaDB
SQL	Front	End
Query	Engine
Local	Storage,	SAN
EBS,HDFS…
アーキテクチャ
対称型マルチプロセッシング(SMP)
Clients
User
Module
Performance
Module
ColumnStore Distributed
Data	Storage
User	sessions
MariaDB
SQL	Front	End
Query	Engine
Local	Storage,	SAN
EBS,HDFS…
アーキテクチャ
⼤規模並列処理
• ユーザーモジュール
• MariaDB Serverインスタンスと並⾏スケーリングを扱うためのプロセス
アーキテクチャ
⼤規模並列処理
• パフォーマンスモジュール
• パフォーマンスモジュールはデータの保存、検索、管理を受け持ち、クエ
リー操作に対するブロックへのリクエストを処理し、クエリーに応えるプ
ロセス。
アーキテクチャ
⼤規模並列処理
• ストレージ
• オンプレミスで動作するときは、ローカルストレージや、SANなどの共通
ストレージを使⽤可能
• Amazon	EC2環境では、ephemeralまたはElastic	Block	Store	(EBS)を使⽤可能
• シェアードナッシング環境でデータの冗⻑化が必要な場合、GlusterFSや
Apache	Hadoop	Distributed	File	System	(HDFS)を使⽤可能
アーキテクチャ
システムデータベース
• calpontsys :	
• ColumnStoreテーブルのメタデータを管理
• infinidb_querystats :	
• クエリパフォーマンス情報を管理
• infinidb_vtable :	
• クエリ実⾏の⼀部である⼀時テーブルの作成に使⽤されます。
ColumnStoreクエリを実⾏するすべてのユーザーは、このデータベース
上で、⼀時テーブルオプションを作成する必要があります。
アーキテクチャ
Extent	Map
• 物理的なセグメントファイル内
に存在する論理ブロック
• エクステント及び対応するブ
ロックを管理
• データの抽出と配置は、エクス
テントマップにより⾼速で処理
される
• リアルタイム解凍と圧縮
• バージョンバッファーファイル
(UNDO)
アーキテクチャ
Extent	Map
SELECT
COL	– D
FROM
TABLE
WHERE
COL	- D BETWEEN	110 AND	180
;
アーキテクチャ
Extent	Map
SELECT
COL	– D
FROM
TABLE
WHERE
COL	- D BETWEEN	110 AND	180
;
リニアにスケールアウト
17
おまけ
Transaction
Engine Transactions XA
Columnstore YES NO
MyISAM NO NO
InnoDB YES YES
Transaction
ColumnStore vs	InnoDB
sysbench
# sysbench --test=oltp --db-driver=mysql --mysql-socket=/usr/local/mariadb/columnstore/mysql/lib/mysql/mysql.sock
--num-threads=1 --max-requests=500 --max-time=0 --oltp-test-mode=complex --mysql-user=sbtest
--mysql-password=sbtest --oltp-test-mode=nontrx --oltp-nontrx-mode=insert run
※ columnstoreは並列度が1じゃないとlockエラーするのでnum-threads=1で⽐較
Columnstore Install
Install
Preparing for ColumnStore Installation
https://mariadb.com/kb/en/the-mariadb-library/preparing-for-columnstore-installation/
• 上記サイトを参考にCentOS 7.2 にSingle Server構成でインストール
Item Description
Physical	Server 8	core	Intel	/	AMD,	32GB	Memory
Storage
Local	disk	with	appropriate	RAID	redundancy	or	
network	attached	storage
Minimum	Hardware	Specification
Install
ColumnStore関連パッケージインストール
#	yum	-y	install	boost	expect	perl perl-DBI	openssl zlib file	sudo libaio rsync snappy	
net-tools	perl-DBD-MySQL
RPMパッケージ取得 &	解凍
#	wget
https://downloads.mariadb.com/ColumnStore/1.0.9/centos/x86_64/7/mariadb-
columnstore-1.0.9-1-centos7.x86_64.rpm.tar.gz
#	tar	zxvf mariadb-columnstore-1.0.9-1-centos7.x86_64.rpm.tar.gz	#	rpm	-ivh *.rpm
Install
RPMパッケージインストール
#	rpm	-ivh *.rpm
RPMパッケージ確認
#	rpm	-qa |	grep	mariadb
mariadb-columnstore-libs-1.0.9-1.x86_64
mariadb-columnstore-platform-1.0.9-1.x86_64
mariadb-columnstore-common-1.0.9-1.el7.centos.x86_64
mariadb-columnstore-client-1.0.9-1.el7.centos.x86_64
…
Install
ColumnStore初期設定
#	/usr/local/mariadb/columnstore/bin/postConfigure
Select	the	type	of	System	Server	install	[1=single,	2=multi]	(2)	>	1
Enter	System	Name	(columnstore-1)	>	columnstore-1
Select	the	type	of	Data	Storage	[1=internal,	2=external]	(1)	>	1
Enter	the	list	(Nx,Ny,Nz)	or	range	(Nx-Nz)	of	DBRoot IDs	assigned	to	module	'pm1'	(1)	>	1
=====	Performing	Configuration	Setup	and	MariaDB ColumnStore Startup	=====
...
Enter	'mcsmysql'	to	access	the	MariaDB ColumnStore SQL	console
Enter	'mcsadmin'	to	access	the	MariaDB ColumnStore Admin	console
Console
SQLコンソール mcsmysql
• MariaDB CoumnStore ⽤コンソール
• mysql コンソールと使⽤⽅法は同⼀
管理コンソール mcsadmin
• ColumnStore Administrative Console
• 起動/停⽌
• UM/PM構成管理
• 統計情報取得
管理
mcsadmin Command
[myuser@srv1~]#	mcsadmin
MariaDB Columnstore Admin	Console			enter	'help'	for	list	of	
commands			enter	'exit'	to	exit	the	MariaDB Columnstore Command	
Console			use	up/down	arrows	to	recall	commandsActive Alarm	Counts:	
Critical	=	0,	Major	=	0,	Minor	=	0,	Warning	=	0,	Info	=	0Critical	Active	
Alarms:
mcsadmin>	quit
管理
System	operation
停⽌
[myuser@srv1~]#	mcsadmin stopSystem [y]
起動
[myuser@srv1~]#	mcsadmin startSystem
再起動
[myuser@srv1~]#	mcsadmin restartSystem [y]
管理
Viewing	system	status
[myuser@srv1~]#	mcsadmin getSystemStatus
getsystemstatus Wed Aug	30	14:27:23	2017
System	columnstore-1
System	and Module	statuses
Component Status																							Last	Status	Change
------------------ ------------------------- --------------------------------------
System								 ACTIVE																							Fri Jun 10 01:50:46 2016
Module pm1				ACTIVE																					 Fri Jun 10 01:50:43 2016
管理
Viewing	process	status
[myuser@srv1~]#	mcsadmin getProcessStatus
getprocessstatus Wed Aug	30	14:27:23	2017
System	columnstore-1
MariaDB Columnstore Process statuses
Process Module		Status					Last	Status	Change	 ProcessID
--------------------- ----------- ----------- ---------------------------------- -------------
ProcessMonitor pm1								ACTIVE			Fri	Jun	10	01:50:04	2016	 2487
ProcessManager pm1	 ACTIVE			Fri	Jun	10	01:50:10	2016	 2673
…
管理
Viewing	network	configuration
[myuser@srv1~]#	mcsadmin getSystemNetworkConfig
getsystemstatus Wed Aug	30	14:27:23	2017
System	columnstore-1
System	and Module	statuses
Component Status																							Last	Status	Change
------------------ ------------------------- --------------------------------------
System								 ACTIVE																							Fri Jun 10 01:50:46 2016
Module pm1				ACTIVE																					 Fri Jun 10 01:50:43 2016
管理
Viewing	module	configuration
[myuser@srv1~]#	mcsadmin getModuleConfig
getmoduleconfig Wed Aug	30	14:27:23	2017
Module	Name	Configuration
Module	'um1'	Configuration information
ModuleType =	um
ModuleDesc =	User	Module	#1
ModuleIPAdd NIC	ID	1	=	10.100.7.80
ModuleHostName NIC	ID	1	=	srvhst2
…
管理
Command	repeat	option
[myuser@srv1~]#	mcsadmin getProcessStatus -r2
repeating	the	command	'getProcessStatus'	every	2	seconds,	enter	
CTRL-D	to	stop
…
Data	import
インポート
• cpimport インポート専⽤コマンド
• ⾼速にデータロード可能
• LOAD	DATA	INFILE	,	INSERT	INTO	SELECT	FROM
もサポート
• 内部的にはcpimportコマンドで実⾏
cpimport
インポート
cpimport 読み込み対象ファイル
• 区切り⽂字は ”	|	”	がデフォルト
• -s	オプションで区切り⽂字指定
• テーブルカラムとデータの並び順を⼀致させる
• ⼀致しない場合は別途 job	file	を作成する必要がある
• ⽇付フォーマットは”	yyyy-mm-dd “にしておく
• フォーマット違いは全て 0000-00-00	00:00:00 になる
インポート
cpimport
• データロード中でもテーブル参照可能
• ロード完了後に追加分の参照ができるようになる
• トランザクションログへの出⼒はされない
インポート
cpimport 実⾏例
[myuser@srv1~]# cpimport sample	table1	/tmp/table1.csv	–s ‘,’	–E ‘”’
Locale	is	:	C
Column	delimiter	:	,
Enclosed	by	Character	:	”
Using	table	OID	3278	as	the	default	JOB	ID
Input	file(s)	will	be	read	from	:	/root/tmp
…
2017-08-31	16:16:37	(18403)	INFO	:	For	table	sample.table1:	10000	rows	
processed	and	10000	rows	inserted.
…
2017-08-31	16:16:37	(18403)	INFO	:	Bulk	load	completed,	total	run	time	:	
1.22974	seconds
DB TABLE File	path option
INSERT	SELECT
LOAD	DATA	INFILE
インポート
INSERT	SELECT使⽤時の注意点
• デフォルトの区切り⽂字が ’	7 ‘
• データに 7	が含まれる場合
infinidb_import_for_batchinsert_delimiter変数の値を
任意のascii_valueに変更する必要がある
インポート
INSERT	SELECT,	LOAD	DATA	INFILE
共通の注意点
• ロードするデータファイルサイズが⼤きい場合
バッファサイズ不⾜でロードに失敗する
• ERROR	1815	(HY000)	at	line	1	in	file:	’table1.sql':	Internal	error:	CAL0006:	IDB-
2008:	The	version	buffer	overflowed.	Increase	VersionBufferFileSize or	limit	
the	rows	to	be	processed.
インポート
INSERT	SELECT,	LOAD	DATA	INFILE
共通の注意点
• VersionBufferFileSizeの変更⼿順は2つ
• Columnstore.xml を編集
• configxml.sh スクリプトでColumnstore.xmlを編集
• Columnstore.xml とは?
• ColumnStore 専⽤の設定ファイルを記述したXMLファイル
インポート
VersionBufferFileSize確認/変更
[myuser@srv1~]# cd	/usr/local/mariadb/columnstore/etc/
[myuser@srv1~]# vi	Columnstore.xml
…
<VersionBuffer>
<!-- VersionBufferFileSize must	be	a	multiple	of	8192.																								
One	version	buffer	file	will	be	put	on	each	DB	root.	-->																
<VersionBufferFileSize>1GB</VersionBufferFileSize>								
</VersionBuffer>
…
インポート
VersionBufferFileSize確認/変更
[myuser@srv1~]# cd	/usr/local/mariadb/columnstore/bin/
[myuser@srv1~]# configxml.sh getconfig VersionBuffer VersionBufferFileSize
Current	value	of	VersionBuffer /	VersionBufferFileSize is	1GB
[myuser@srv1~]# configxml.sh setconfig VersionBuffer VersionBufferFileSize 10GB
Old	value	of	VersionBuffer /	VersionBufferFileSize is	1GB
VersionBuffer /	VersionBufferFileSize now	set	to	10GB
section variablecommand
インポート
cpimport vs	LOAD	DATA	INFILE
CSV 10,000,000件 約1GB
データサイズの確認
データサイズの確認
• columnstore_info Stored	Procedure
• total_usage()
• table_usage()
ColumnStore Information	Schema	Tables
https://mariadb.com/kb/en/the-mariadb-library/columnstore-information-
schema-tables/#columnstore_extents
データサイズの確認
全体の使⽤サイズ
MariaDB [(none)]> call	columnstore_info.total_usage();
+-------------------------+----------------------------+
|	TOTAL_DATA_SIZE	|	TOTAL_DISK_USAGE	|
+-------------------------+----------------------------+	
|	1.49	GB	 |	1.58	GB |
+-------------------------+----------------------------+
データサイズの確認
Table毎の使⽤サイズ
MariaDB [(none)]> call	columnstore_info.table_usage(NULL,NULL);
+-----------------------+---------------------+---------------------------+-------------------------+---------------------+
|	TABLE_SCHEMA	|	TABLE_NAME				|	DATA_DISK_USAGE	|	DICT_DISK_USAGE	|	TOTAL_USAGE	|
+-----------------------+---------------------+---------------------------+-------------------------+---------------------+	
|	loadtest |	load_cpimport |	638.90	MB |	140.08	MB |	778.98	MB								|
|	loadtest |	load_infile |	638.89	MB |	140.08	MB |	778.97	MB			 |
+-----------------------+---------------------+---------------------------+-------------------------+---------------------+
Cross-Engine	Joins	setting
クロス・エンジン結合設定
• ColumnStoreテーブルと⾮ColumnStoreテーブルを結合する場合
別途設定が必要
• Columnstore.xml 定義変更
• ColumnStore 再起動
ColumnStoreクロス・エンジン結合の構成
https://mariadb.com/kb/ja/configuring-columnstore-cross-engine-joins/
クロス・エンジン結合設定
CrossEngineSupport変更
[myuser@srv1~]# cd	/usr/local/mariadb/columnstore/etc/
[myuser@srv1~]# vi	Columnstore.xml
…
<CrossEngineSupport>
<Host>127.0.0.1</Host>
<Port>3306</Port>
<User>mydbuser</User>
<Password>pwd</Password>
</CrossEngineSupport>
…
Execution	plan
実⾏計画及び統計情報の取得
• EXPLAINでは有益な情報を得られない
• 専⽤関数 calSetTrace(),	calGetTrace()	を使⽤する
実⾏計画及び統計情報の取得
calSetTrace(),	calGetTrace()	
MariaDB [test]> select calSetTrace(1);
MariaDB [test]> select item,name from snmp.raw_201607		limit 1000;
MariaDB [test]> select calGetTrace();
Desc Mode Table TableOID ReferencedColumns PIO		LIO						PBE										Elapsed Rows
BPS				PM						 raw_201607			 3000 (item,time) 0 2287 34078 0.014 1915
TNS			UM						 - - - - - - 0.006 1000
MariaDB [test]> select calSetTrace(0);
実⾏計画及び統計情報の取得
実⾏計画の⾒⽅
Desc Mode Table TableOID ReferencedColumns PIO LIO PBE Elapsed Rows
BPS PM raw_201607 3000 (item,time) 0 2287 34078 0.014 1915
TNS UM 0.005 1000
実⾏計画及び統計情報の取得
実⾏計画の⾒⽅
Desc Mode Table TableOID ReferencedColumns PIO LIO PBE Elapsed Rows
BPS PM raw_201607 3000 (item,time) 0 2287 34078 0.014 1915
TNS UM 0.005 1000
BPS Batch	Primitive	Step 列ブロック⾛査及びデータ取得
CES Cross	Engine	Step クロスエンジンJoinの実⾏
DSS Dictionary	Structure	Step 特定の可変⻑⽂字列値に対するディクショナリスキャン
HJS Hash	Join	Step Hash	join	の実⾏
HVS Having	Step 実⾏結果に対するHavingの実⾏
SQS Sub	Query	Step サブクエリ実⾏
TAS Tuple	Aggregation	step PMノードからUMで中間集約結果受信
TNS Tuple	Annexation	Step 結果作成(filter,	order	by,	limit…)
TUS Tuple	Union	step サブクエリ結果結合
TCS Tuple	Constant	Step 定数処理
WFS Window	Function	Step Window function実⾏
実⾏計画及び統計情報の取得
実⾏計画の⾒⽅
Desc Mode Table TableOID ReferencedColumns PIO LIO PBE Elapsed Rows
BPS PM raw_201607 3000 (item,time) 0 2287 34078 0.014 1915
TNS UM 0.005 1000
Partition Blocks Eliminated
• エクステントマップにより読み⾶ばしたブロックサイズ
• この値が0の場合、エクステントマップの恩恵を得られていない
実⾏計画及び統計情報の取得
キャッシュクリア
MariaDB [test]> select	calFlushCache();	
MariaDB [test]> select item,name from snmp.raw_201607		limit 1000;
MariaDB [test]> select calGetTrace();
Desc Mode Table TableOID ReferencedColumns PIO		 LIO						PBE										Elapsed Rows
BPS				PM						 raw_201607			 3000 (item,time) 37341 2287 34078 0.014 1915
TNS			UM						 - - - - - - 0.006 1000
MariaDB [test]> select calSetTrace(0);
実⾏計画及び統計情報の取得
select	calGetStats();
MariaDB [test]> select	count(*)	from	wide2;
…
1	row	in	set	(0.22	sec)
MariaDB [test]> select	calGetStats();
Query	Stats:	MaxMemPct-0;NumTempFiles-0;TempFileSpace-0B;ApproxPhyI/O-1931;
CacheI/O-2446;BlocksTouched-2443;	PartitionBlocksEliminated-0;MsgBytesIn-73KB;
MsgBytesOut-1KB;Mode-Distributed
Extent	Map
エクステントマップ確認
• 調査対象のカラムOID取得
• editemプロセスからエクステントマップ情報を取得
• 引数にカラムID必須
エクステントマップ確認
カラムOID取得
Select
`schema`,
`tablename`,
`columnname`,
`objectid`
From
calpontsys.syscolumn
Where
`schema`	 =	‘対象スキーマ名’
and	`tablename`	=	‘対象テーブル名’
and	`tablename`	=	‘対象カラム名’
;
エクステントマップ確認
editemプロセスから情報取得
[myuser@srv1~]# /usr/local/mariadb/columnstore/bin/editem -o	3019
Col	OID	=	3019,	NumExtents =	1,	width	=	4
234496	- 238591	(4096)	min:	0,	max:	3,	seqNum:	10,	state:	valid,	fbo:	0,	
DBRoot:	1,	part#:	0,	seg#:	0,	HWM:	0;	status:	avail
…
エクステントマップ確認
editemプロセスから情報取得
[myuser@srv1~]# /usr/local/mariadb/columnstore/bin/editem -o	3298
Col	OID	=	3298,	NumExtents =	2,	width	=	8
1311744	- 1319935	(8192)	min:	notset,	max:	notset,	seqNum:	0,	state:	
valid,	fbo:	0,	DBRoot:	1,	part#:	0,	seg#:	0,	HWM:	8191;	status:	avail
1418240	- 1426431	(8192)	min:	notset,	max:	notset,	seqNum:	0,	state:	
invalid,	fbo:	0,	DBRoot:	1,	part#:	0,	seg#:	1,	HWM:	1575;	status:	avail
エクステントマップが
機能しない(使えない)パターン
Datatypes Colmun Size Enable
TINYINT - ●
SMALLINT - ●
INTEGER	/	INT - ●
BIGINT - ●
DECIMAL	/	
NUMERIC
- ●
DOUBLE	/	REAL - ×
FLOAT - ×
DATE - ●
DATETIME - ●
CHAR 8バイト以下 ●
9バイト以上 ×
VARCHAR 7バイト以下 ●
8バイト以上 ×
• その他
• ⽇本語(UTF-8)の場合
1⽂字あたり3バイトなので注意
• Min/Max値に差が無い場合
制限
• primary	keyの指定ができない
• Indexの作成ができない
• レプリケーション⾮対応
• 対応カラム型に制限あり
Datatypes Column	Size Description
BIGINT 8-bytes
A	large	integer.	Numeric	value	with	scale	0.	Signed:	-9,223,372,036,854,775,806	to+9,223,372,036,854,775,807	
Unsigned:	0	to	+18,446,744,073,709,551,613
CHAR 1,	2,	4,	or	8	bytes Holds	letters	and	special	characters	of	fixed	length.	Max	length	is	255.	Default	and	minimum	size	is	1	byte.
DATE 4-bytes
Date	has	year,	month,	and	day.	The	internal	representation	of	a	date	is	a	string	of	4	bytes.	The	first	2	bytes	represent	the	
year,	.5	bytes	the	month,	and	.75	bytes	the	day	in	the	following	format:	YYYY-MM-DD.	Supported	range	is	1000-01-01	to	
9999-12-31.
DATETIME 8-bytes A	date	and	time	combination.	Supported	range	is	1000-01-01	00:00:00	to	9999-12-31	23:59:59.
DECIMAL/NUMERIC 2,	4,	or	8	bytes
A	packed	fixed-point	number	that	can	have	a	specific	total	number	of	digits	and	with	a	set	number	of	digits	after	a	
decimal.	The	maximum	precision	(total	number	of	digits)	that	can	be	specified	is	18.
DOUBLE/REAL 8	bytes
Stored	in	64-bit	IEEE-754	floating	point	format.	As	such,	the	number	of	significant	digits	is	about	15	and	the	range	of	
values	is	approximately	+/-1e308.	The	MySQL	extension	to	specify	precision	and	scale	is	not	supported.	“REAL”	is	a	
synonym	for	“DOUBLE”.
FLOAT 4	bytes
Stored	in	32-bit	IEEE-754	floating	point	format.	As	such,	the	number	of	significant	digits	is	about	6and	the	range	of	
values	is	approximately	+/- 1e38.The	MySQL	extension	to	specify	precision	and	scale	is	not	supported.
INTEGER/INT 4-bytes
A	normal-size	integer.	Numeric	value	with	scale	0.	Signed:	-2,147,483,646	to	2,147,483,647.	Unsigned:	0	to	
4,294,967,293
SMALLINT 2-bytes A	small	integer.	Signed:	-32,766	to	32,767.	Unsigned:	0	to	65,533.
TINYINT 1-byte A	very	small	integer.	Numeric	value	with	scale	0.	Signed:	-126	to	+127.	Unsigned:	0	to	253.
VARCHAR
1,	2,	4,	or	8	bytes	or	
8-byte	token
Holds	letters,	numbers,	and	special	characters	of	variable	length.	Max	length	=	8000	bytes	or	characters	and	minimum	
length	=	1	byte	or	character.
まとめ
ColumnStoreとは?
チューニングレスで⾼い検索パフォーマ
ンスを実現するDWH特化型データベース
ColumnStoreとは?
•コア数,ノード数を増やすことで
リニアにスケールアウト
•エクステントマップによるI/Oコスト削減
ColumnStoreとは?
要件をきちんと把握した上であれば
使えます!
ColumnStore始めませんか?
ColumnStore 1.1
ColumnStore 1.1
• 1.1ではいくつかのエキサイティングな新機能が追加
• Column	StoreエンジンとMariaDBサーバーはGPLライセンス
• ⼀部の新しいコンポーネントはLGPLとBSLのライセンス
ColumnStore1.1
Features
Data engine MariaDB 10.2	base
Streaming/API バルクインポートAPI
High	Availability GlusterFSサポート(HA)
Analytics ユーザー定義集計関数,	Window	Functions
Data	Types TEXT型,	Blob型のサポート
Ease	of	Use バックアップ&リストアツールの提供
Performance クエリ&メモリ処理改善
Security MariaDB Audit pluginと統合
Certifications
ColumnStore1.1
Data	Streaming	:	ColumnStore Data	API
•ストリーミングバルクインサート
• 直接PMノードへ書き込み要求を⾏う
• ⼀括インポートのために巨⼤なCSVファイルを作成する必要が
ない
• C++
• LGPL	licensed
ColumnStore Bulk	Write	SDK
https://mariadb.com/kb/en/library/columnstore-bulk-write-sdk/
Thank	you	so,	so	much!

More Related Content

What's hot

[B31,32]SQL Server Internal と パフォーマンスチューニング by Yukio Kumazawa
[B31,32]SQL Server Internal と パフォーマンスチューニング by Yukio Kumazawa[B31,32]SQL Server Internal と パフォーマンスチューニング by Yukio Kumazawa
[B31,32]SQL Server Internal と パフォーマンスチューニング by Yukio Kumazawa
Insight Technology, Inc.
 

What's hot (20)

Handling Schema Changes Using pt-online-schema change.
Handling Schema Changes Using pt-online-schema change.Handling Schema Changes Using pt-online-schema change.
Handling Schema Changes Using pt-online-schema change.
 
SQLアンチパターン - ナイーブツリー
SQLアンチパターン - ナイーブツリーSQLアンチパターン - ナイーブツリー
SQLアンチパターン - ナイーブツリー
 
PostgreSQL14の pg_stat_statements 改善(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQL14の pg_stat_statements 改善(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)PostgreSQL14の pg_stat_statements 改善(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
PostgreSQL14の pg_stat_statements 改善(第23回PostgreSQLアンカンファレンス@オンライン 発表資料)
 
PostgreSQL 15の新機能を徹底解説
PostgreSQL 15の新機能を徹底解説PostgreSQL 15の新機能を徹底解説
PostgreSQL 15の新機能を徹底解説
 
YugabyteDBの拡張機能(YugabyteDB Meetup #2 発表資料)
YugabyteDBの拡張機能(YugabyteDB Meetup #2 発表資料)YugabyteDBの拡張機能(YugabyteDB Meetup #2 発表資料)
YugabyteDBの拡張機能(YugabyteDB Meetup #2 発表資料)
 
YugabyteDBを使ってみよう - part2 -(NewSQL/分散SQLデータベースよろず勉強会 #2 発表資料)
YugabyteDBを使ってみよう - part2 -(NewSQL/分散SQLデータベースよろず勉強会 #2 発表資料)YugabyteDBを使ってみよう - part2 -(NewSQL/分散SQLデータベースよろず勉強会 #2 発表資料)
YugabyteDBを使ってみよう - part2 -(NewSQL/分散SQLデータベースよろず勉強会 #2 発表資料)
 
Cloud Nativeとは?
Cloud Nativeとは?Cloud Nativeとは?
Cloud Nativeとは?
 
既定の環境のストレージ容量
既定の環境のストレージ容量既定の環境のストレージ容量
既定の環境のストレージ容量
 
Let's scale-out PostgreSQL using Citus (Japanese)
Let's scale-out PostgreSQL using Citus (Japanese)Let's scale-out PostgreSQL using Citus (Japanese)
Let's scale-out PostgreSQL using Citus (Japanese)
 
決済システムの内製化への旅 - SpringとPCFで作るクラウドネイティブなシステム開発 #jsug #sf_h1
決済システムの内製化への旅 - SpringとPCFで作るクラウドネイティブなシステム開発 #jsug #sf_h1決済システムの内製化への旅 - SpringとPCFで作るクラウドネイティブなシステム開発 #jsug #sf_h1
決済システムの内製化への旅 - SpringとPCFで作るクラウドネイティブなシステム開発 #jsug #sf_h1
 
PostgreSQLでスケールアウト
PostgreSQLでスケールアウトPostgreSQLでスケールアウト
PostgreSQLでスケールアウト
 
JDK 16 で導入された JEP 396 にご注意!! (JJUG CCC 2021 Spring)
JDK 16 で導入された JEP 396 にご注意!! (JJUG CCC 2021 Spring)JDK 16 で導入された JEP 396 にご注意!! (JJUG CCC 2021 Spring)
JDK 16 で導入された JEP 396 にご注意!! (JJUG CCC 2021 Spring)
 
PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...
PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...
PostgreSQL 12は ここがスゴイ! ~性能改善やpluggable storage engineなどの新機能を徹底解説~ (NTTデータ テクノ...
 
[B31,32]SQL Server Internal と パフォーマンスチューニング by Yukio Kumazawa
[B31,32]SQL Server Internal と パフォーマンスチューニング by Yukio Kumazawa[B31,32]SQL Server Internal と パフォーマンスチューニング by Yukio Kumazawa
[B31,32]SQL Server Internal と パフォーマンスチューニング by Yukio Kumazawa
 
OpenTelemetryを用いたObservability基礎の実装 with AWS Distro for OpenTelemetry(Kuberne...
OpenTelemetryを用いたObservability基礎の実装 with AWS Distro for OpenTelemetry(Kuberne...OpenTelemetryを用いたObservability基礎の実装 with AWS Distro for OpenTelemetry(Kuberne...
OpenTelemetryを用いたObservability基礎の実装 with AWS Distro for OpenTelemetry(Kuberne...
 
PostgreSQLセキュリティ総復習
PostgreSQLセキュリティ総復習PostgreSQLセキュリティ総復習
PostgreSQLセキュリティ総復習
 
1日5分でPostgreSQLに詳しくなるアプリの開発 ~PostgRESTを使ってみた~(第38回PostgreSQLアンカンファレンス@オンライン 発...
1日5分でPostgreSQLに詳しくなるアプリの開発 ~PostgRESTを使ってみた~(第38回PostgreSQLアンカンファレンス@オンライン 発...1日5分でPostgreSQLに詳しくなるアプリの開発 ~PostgRESTを使ってみた~(第38回PostgreSQLアンカンファレンス@オンライン 発...
1日5分でPostgreSQLに詳しくなるアプリの開発 ~PostgRESTを使ってみた~(第38回PostgreSQLアンカンファレンス@オンライン 発...
 
[Pgday.Seoul 2019] Citus를 이용한 분산 데이터베이스
[Pgday.Seoul 2019] Citus를 이용한 분산 데이터베이스[Pgday.Seoul 2019] Citus를 이용한 분산 데이터베이스
[Pgday.Seoul 2019] Citus를 이용한 분산 데이터베이스
 
From my sql to postgresql using kafka+debezium
From my sql to postgresql using kafka+debeziumFrom my sql to postgresql using kafka+debezium
From my sql to postgresql using kafka+debezium
 
スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)
スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)
スケールアウトするPostgreSQLを目指して!その第一歩!(NTTデータ テクノロジーカンファレンス 2020 発表資料)
 

Similar to MariaDB ColumnStore 始めませんか?

C11,12 SQL Server 2012 Performance Tuning by Yukio Kumazawa
C11,12 SQL Server 2012 Performance Tuning by Yukio KumazawaC11,12 SQL Server 2012 Performance Tuning by Yukio Kumazawa
C11,12 SQL Server 2012 Performance Tuning by Yukio Kumazawa
Insight Technology, Inc.
 

Similar to MariaDB ColumnStore 始めませんか? (20)

AWSのデータベースサービス全体像
AWSのデータベースサービス全体像AWSのデータベースサービス全体像
AWSのデータベースサービス全体像
 
OSC ver : MariaDB ColumnStore ベンチマークしちゃいませんか?
OSC ver : MariaDB ColumnStore ベンチマークしちゃいませんか?OSC ver : MariaDB ColumnStore ベンチマークしちゃいませんか?
OSC ver : MariaDB ColumnStore ベンチマークしちゃいませんか?
 
LINEのMySQL運用について 修正版
LINEのMySQL運用について 修正版LINEのMySQL運用について 修正版
LINEのMySQL運用について 修正版
 
Snowflake Elastic Data Warehouse as a Service
Snowflake Elastic Data Warehouse as a ServiceSnowflake Elastic Data Warehouse as a Service
Snowflake Elastic Data Warehouse as a Service
 
SQL Server 2019 とともに知る Microsoft Data Platform
SQL Server 2019 とともに知る Microsoft Data PlatformSQL Server 2019 とともに知る Microsoft Data Platform
SQL Server 2019 とともに知る Microsoft Data Platform
 
SQL Azure のシームレスな管理
SQL Azure のシームレスな管理SQL Azure のシームレスな管理
SQL Azure のシームレスな管理
 
LINEのMySQL運用について
LINEのMySQL運用についてLINEのMySQL運用について
LINEのMySQL運用について
 
[ウェビナー] Build 2018 アップデート ~ データ プラットフォーム/IoT編 ~
[ウェビナー] Build 2018 アップデート ~ データ プラットフォーム/IoT編 ~[ウェビナー] Build 2018 アップデート ~ データ プラットフォーム/IoT編 ~
[ウェビナー] Build 2018 アップデート ~ データ プラットフォーム/IoT編 ~
 
スケーラブルMoodle@Moodle Moot 2017JP
スケーラブルMoodle@Moodle Moot 2017JPスケーラブルMoodle@Moodle Moot 2017JP
スケーラブルMoodle@Moodle Moot 2017JP
 
Dat004 開発者に捧ぐ「sql server_2016_
Dat004 開発者に捧ぐ「sql server_2016_Dat004 開発者に捧ぐ「sql server_2016_
Dat004 開発者に捧ぐ「sql server_2016_
 
Windows Server 2016 で作るシンプルなハイパーコンバージドインフラ (Microsoft TechSummit 2016)
Windows Server 2016 で作るシンプルなハイパーコンバージドインフラ (Microsoft TechSummit 2016)Windows Server 2016 で作るシンプルなハイパーコンバージドインフラ (Microsoft TechSummit 2016)
Windows Server 2016 で作るシンプルなハイパーコンバージドインフラ (Microsoft TechSummit 2016)
 
MySQl 5.6新機能解説@第一回 中国地方DB勉強会
MySQl 5.6新機能解説@第一回 中国地方DB勉強会MySQl 5.6新機能解説@第一回 中国地方DB勉強会
MySQl 5.6新機能解説@第一回 中国地方DB勉強会
 
[Japan Tech summit 2017] DAL 003
[Japan Tech summit 2017] DAL 003[Japan Tech summit 2017] DAL 003
[Japan Tech summit 2017] DAL 003
 
Sql server 2016 ctp 3.0 新機能
Sql server 2016 ctp 3.0 新機能Sql server 2016 ctp 3.0 新機能
Sql server 2016 ctp 3.0 新機能
 
Azure Arc Automanage Machine Configuration による構成の管理と適用
Azure Arc Automanage Machine Configuration による構成の管理と適用Azure Arc Automanage Machine Configuration による構成の管理と適用
Azure Arc Automanage Machine Configuration による構成の管理と適用
 
CAメインフレーム システムリソース削減に貢献する製品について
CAメインフレーム システムリソース削減に貢献する製品についてCAメインフレーム システムリソース削減に貢献する製品について
CAメインフレーム システムリソース削減に貢献する製品について
 
[SCCM 友の会] System Center Configuration Manager この秋おさえておきたい最新機能!
[SCCM 友の会]  System Center Configuration Manager  この秋おさえておきたい最新機能![SCCM 友の会]  System Center Configuration Manager  この秋おさえておきたい最新機能!
[SCCM 友の会] System Center Configuration Manager この秋おさえておきたい最新機能!
 
System Center Operations Managerによる仮想環境の高度な管理
System Center Operations Managerによる仮想環境の高度な管理System Center Operations Managerによる仮想環境の高度な管理
System Center Operations Managerによる仮想環境の高度な管理
 
SQL Server 2008/2008 R2/ 2012(/ 2014) 新機能
SQL Server 2008/2008 R2/ 2012(/ 2014) 新機能SQL Server 2008/2008 R2/ 2012(/ 2014) 新機能
SQL Server 2008/2008 R2/ 2012(/ 2014) 新機能
 
C11,12 SQL Server 2012 Performance Tuning by Yukio Kumazawa
C11,12 SQL Server 2012 Performance Tuning by Yukio KumazawaC11,12 SQL Server 2012 Performance Tuning by Yukio Kumazawa
C11,12 SQL Server 2012 Performance Tuning by Yukio Kumazawa
 

Recently uploaded

Recently uploaded (7)

LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
LoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイスLoRaWANスマート距離検出センサー  DS20L  カタログ  LiDARデバイス
LoRaWANスマート距離検出センサー DS20L カタログ LiDARデバイス
 
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その22024/04/26の勉強会で発表されたものです。
 
新人研修 後半 2024/04/26の勉強会で発表されたものです。
新人研修 後半        2024/04/26の勉強会で発表されたものです。新人研修 後半        2024/04/26の勉強会で発表されたものです。
新人研修 後半 2024/04/26の勉強会で発表されたものです。
 
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアルLoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
LoRaWAN スマート距離検出デバイスDS20L日本語マニュアル
 
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
NewSQLの可用性構成パターン(OCHaCafe Season 8 #4 発表資料)
 
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
Amazon SES を勉強してみる その32024/04/26の勉強会で発表されたものです。
 
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
業務で生成AIを活用したい人のための生成AI入門講座(社外公開版:キンドリルジャパン社内勉強会:2024年4月発表)
 

MariaDB ColumnStore 始めませんか?