
ãæ¬¡äžä»£é«éRDBå"Tsurugi"ãTsurugi ã®ãã©ãããã©ãŒã 察å¿ã®çŸç¶
ã¯ããã«
æ¬é£èŒã§ã¯ Tsurugi ã®æ°æ©èœã®ç޹ä»ã掻çšäºäŸãå€ã玹ä»ããŠããŠããŸãããä»å㯠Tsurugi ã®ãœãŒã¹ãã¡ã€ã«ã GitHub tsurugidb Releases ããããŠã³ããŒãããŠèªåã§ãã«ããã人ã察象ãšãããããŸããŸãªãã©ãããã©ãŒã ã«ã€ããŠã® Tips ãšãªããŸãã
2026幎3ææç¹ã§ã®æ
å ±ãèšèŒããŠããŸãã
Ubuntu 22.04 LTS (jammy), 24.04 LTS (noble)
Tsurugi 㯠Ubuntu ã® LTS ããŒãžã§ã³ãã¡ã€ã³ãµããŒããã©ãããã©ãŒã ãšããŠãããçŸåš 22.04 LTS (jammy) ãš 24.04 LTS (noble) ããµããŒããã©ãããã©ãŒã ãšããŠããŸããç¹çãã¹ãåé¡ã¯ãããŸããã
No news is good news.
次æ Ubuntu LTS (26.04 resolute) 察å¿ã«ã€ããŠ
次ã«ã2026幎4æã«ãªãªãŒã¹äºå®ã® Ubuntu 26.04 ãžã®å¯Ÿå¿ã«ã€ããŠã®æ
å ±ã§ãã
次æ Ubuntu LTS ãžã®å¯Ÿå¿ãé æ¬¡é²ããŠããŸãã以äžã® Ubuntu ãœãããŠã§ã¢ããã±ãŒãžã®æŽæ°ã«äŒŽããã«ãåé¡ã«å¯Ÿå¿ããŠããŸãã
GLIBC 2.43 (glibc 2.43-2ubuntu1)
CMake 4.2.3 (cmake 4.2.3-2ubuntu2)
GCC 15 (gcc-15 15.2.0-15ubuntu1)
LLVM 21 (llvm-toolchain-21 1:21.1.8-6ubuntu1)
Boost 1.90 (boost1.90 1.90.0-5ubuntu2)
mpdecimal 4 ã® Debian/Ubuntu åããã±ãŒãžåãšããã±ãŒãžæ§æå€æŽ (mpdecimal 4.0.1-6)
ãã Ubuntu 26.04 LTS Beta ãåºãŠããã®ã§æ£åŒçãŸã§å€§ããªå€åã¯ãªããšæããŸãããæŽæ°ã«äŒŽã Tsurugi ã§åé¡ãçºçããå Žåã«ã¯é 次察å¿ããŠãããŸãã
Tsurugi ã¯ã©ã€ãã©ãªãšã㊠Apache Arrow ã䜿çšããŠããŸããããã®æ°ããŒãžã§ã³ Apache Arrow 24 ãžã®å¯Ÿå¿ãé²ããŠããŸãã Tsurugi ã®æšæºãã«ãã»ã€ã³ã¹ããŒã«ã¹ã¯ãªããã§ã¯ Apache Arrow ã«ã€ããŠã¯ Apache å ¬åŒã®ãã€ããªããã±ãŒãžã䜿çšããããã«ãªã£ãŠããŸããããã® Apache Arrow ã® Ubuntu 26.04 çšå ¬åŒãã€ããªã¯ Ubuntu 26.04 æ£åŒçãåºãŠããæäŸãããèŠèŸŒã¿ã§ãããã® Apache å ¬åŒãã€ããªãåºãåŸã« Tsurugi åŽã®ç¢ºèªäœæ¥ã宿œããŸãã®ã§ã Tsurugi ã Ubuntu 26.04 察å¿ãå®äºããã®ã¯ãã®ããšã«ãªããŸãã
AlmaLinux 9.x, Rocky Linux 9.x
ãããã® RHEL 9 ç³»ãã£ã¹ããªãã¥ãŒã·ã§ã³ã«ã€ããŠã¯ã詊éšç察å¿ãšããäœçœ®ã¥ãã§ãããã«ãããŠåããããšãåºæ¥ãŸããã§ãããããã€ã泚æãã¹ãç¹ããããŸãã Tsurugi ã®ã¬ã€ãã³ã¹ææž ã«æ³šææžãããããŸããããœãŒã¹ãããã«ãããéã«ã¯ã³ã³ãã€ã©ãšã㊠Clang ã䜿ãç¹ãšãèšå®ãã¡ã€ã«ã® pid_directory é
ç®ã§ãã
pid_directory ã®ã»ãã¯ã€ã³ã¹ããŒã«ã¹ã¯ãªããã®æåŸã§ç®ãåŒãèŠåãåºãã®ã§æ°ãä»ããããã§ãããã³ã³ãã€ã©ã®ã»ãã¯ãã®ãŸãŸã§ããã«ããæåãåããŠããŸãã®ã§ãæ°ã¥ããªããšãã®ãŸãŸã«ãªã£ãŠããŸããŸãã
å¥ã®ã³ã³ãã€ã©ã䜿ãã¹ããªã®ã¯ RHEL 9ç³»ã§æšæºã€ã³ã¹ããŒã«ããã GCC é¢é£ããã±ãŒãžã«æ·±å»ãªæ§èœäžã®åé¡ããããæšæºã³ã³ãã€ã©ã® GCC 11 ã§ãã«ããããšãã®ãã°ã®åœ±é¿ãåãã Tsurugi ã®æ§èœãããªãå£åããŠããŸãããã§ãããã®åé¡ã¯ GCC 14 ã§çŽãããããã GCC ã§ã¯ãªã Clang ã䜿ãããEPEL ã® gcc-toolset-14 çã®ããã±ãŒãžã®æ°ãã GCC ã䜿ãããšã§åé¿ã§ããŸãã
RHEL 9 ç³»ãã£ã¹ããªãã¥ãŒã·ã§ã³ãå©çšãããŠããæ¹ã®äžã«ã¯ããªããããããã© AlmaLinux ã§ããã«ãã§ããããããããã詊ããŠã¿ãã£ãšããããã«ãåºæ¥ããã§ãèšãã»ã©éããªããããšãã人ããããªãã«ããã®ã§ã¯ãªãããšæããŸãã®ã§ãããã§æ¹ããŠæ³šæåèµ·ããŸããã
ãªããã®åé¡ãèµ·ãããã«ã€ããŠã®èª¬æã¯é·ããªãã®ã§ãæ¬çš¿ã®æ«å°Ÿã«ããŸããšããŠã€ããŠãããŸãã
Debian 13 (trixie)
Ubuntu ã® Upstream ã§ãã Debian 㯠Tsurugi ã®ãµããŒããã©ãããã©ãŒã ã§ã¯ãããŸãããããããã Ubuntu ãšåãããã«åäœããŸããçŸåšã® stable ããŒãžã§ã³ã§ãã Debian 13 (trixie) ã§ãã«ãããã«ããã£ãŠã¯ããã€ãåé¡ãèŠã€ãããŸããããããã€ã㯠Tsurugi åŽã§ã¯ãŒã¯ã¢ã©ãŠã³ããå ¥ããŠå¯Ÿå¿ããŸããã
ä»ã®ãšãã察å¿ã§ããŠããªãã®ã¯ pkgconf ããã±ãŒãžã®åé¡ã§ããtrixie ã®ããŒãžã§ã³ã§ãã pkgconf 1.8.1 (1.8.1-4) ã«ã¯ ããã±ãŒãžäŸåé¢ä¿ã°ã©ãã®ç®åºã極ããŠé ãåé¡ãååšããŸãããã®ããã Tsurugi ãã«ãæã« CMake ã®ãã«ãã·ã¹ãã çæãã§ãŒãºã®åŠçã§ Google 補ã©ã€ãã©ãªãæ¢ãã«è¡ããšãã«é·æéåŸ ããããŸããDebian ã®éçºç (ããã³ Ubuntu 26.04) ã§ã¯å æ¥ãã§ãã pkgconf 2.5.1 ã«æŽæ°ãããããåé¡ã¯è§£æ¶ãããŸãããã trixie ã§ã® pkgconf ããŒãžã§ã³ã¯ãã®ãŸãŸã§ãDebian backports ã«ããªãã®ã§ããè¡åãã解決ããããšãã§ããŸããã testing ããããã±ãŒãžãæã£ãŠããŠå ¥ããã° (ããã±ãŒãžç«¶åçèµ·ããã) åé¡ãè§£æ¶ãããããšã確èªããŸããããæšå¥šã¯ããŠããŸãããåæ§ã«ããããèªèº«ã§ãœãŒã¹ãããã«ããããçã§è§£æ¶ãããšæããŸããã宿œã¯èªå·±è²¬ä»»ã§ãé¡ãããŸãã
ãããã«
ä»å㯠Ubuntu 26.04 ãªãªãŒã¹çŽåãšããããšã§ãTsurugi ã®ãµããŒããã©ãããã©ãŒã ããšã® Tips ããå±ãããŸããã
Tsurugi ã®æ¬¡ã®ããŒãžã§ã³ 1.10.0 㯠2026幎4æäžã«ãªãªãŒã¹ã®äºå®ã§ãããã®æç¹ã§ã¯ Ubuntu 26.04 ã®æ£åŒãªãªãŒã¹åã§ãã®ã§ã Ubuntu 26.04 ãžã®æ£åŒå¯Ÿå¿ããã Tsurugi ã¯ãã以éã®ããŒãžã§ã³ã«ãªãèŠèŸŒã¿ã§ããä»ãã°ãããåŸ
ã¡ãã ããã
Tsurugi ããµããŒããããã©ãããã©ãŒã ã«ã€ããŠã®å
Œξ
å ±(è±èª) ã¯ãã¡ããã芧ãã ããã
https://github.com/project-tsurugi/tsurugidb/blob/master/docs/supported-platforms.md
ããŸã: RHEL 9 ç³»åã§ã® libatomic ã®åé¡
èæ¯: ã³ã³ãã€ã©ãš CPU æ©èœ
GCC ã Clang ã³ã³ãã€ã©ã¯ã³ã³ãã€ã«æãªãã·ã§ã³ã«ãã©ã®ãããªæ©èœãæã£ã CPU åãã®ãã€ããªãäœãããæå®ãããªãã·ã§ã³ -mXXX (-mcx16 ã -mavx ããã㯠-march=XXX ç) ããããããã§æ°ãã CPU æ©èœãæå®ãããšãã³ã³ãã€ã©ã¯ãã® CPU æ©èœã䜿ããã€ããªãçæããŸããããããŠçæããããã€ããªã¯ããµããŒãããŠãã CPU ã§ã¯å°ãé«éã«åãããµããŒãããŠããªã CPU ã§ã¯åããªããã®ã«ãªããŸããäŸãã° Intel/AMD CPU ã®æ¡åŒµåœä»€ã»ããã§ãã AVX ã䜿ããšå€§éã®ã¡ã¢ãªåŠçãé«å¹çã§å®è¡ã§ããŸãããå€ã CPU ã§ã¯ AVX ã䜿ããªãããšããããŸãã -mavx ãšæå®ããŠã³ã³ãã€ã«ããããš AVX ã® CPU åœä»€ã䜿ããã€ããªãçæãããã®ã§ãæ°ãã CPU ã§å¹ççã«åããã€ããªãçæãããŸãããå€ã CPU ã§å®è¡ããããšãã§ããªããªããŸãã -mavx ãšæå®ãããã«çæããããã€ããªã¯ãAVX ã䜿ããªã CPU ã§ãåã代ããã«ãAVX ã䜿ãã CPU ã§åãããå Žåã§ãå¹ççã«åäœããŸããã
RHEL 9 ç³»å㯠Intel/AMD ã® 64bit CPU ã®ãã¡å€ããã®ã®ãµããŒããæã¡åã£ãŠããŸããx86-64-v2 ãšããã¬ãã«ãçå®ããCPU ãå¿ ããããã®åœä»€ã»ããã䜿ããããšãåæãšããOS ã®ãœãããŠã§ã¢ãã«ãã§ã³ã³ãã€ã«æãªãã·ã§ã³ã«ãã®ããã« CPU æå®ããŠããŸããããã«ãããRHEL 9 ç³»åã¯å€ããã·ã³ã§åããããšãã§ããªããªããŸããããµããŒããããŠãããã·ã³ã§ã¯ã³ã³ãã€ã©ã®æé©åã«ããå¹çè¯ãåããã€ããªãçæããããšãã§ããããã(Ubuntu 24.04 ã®ããã«å€ã CPU åœä»€ããµããŒããããã㪠OS ãšæ¯ã¹ãŠ) åããœãããŠã§ã¢ãåãããŒããŠã§ã¢äžã§åããããšããŠãã³ã³ãã€ã©ã®æé©åãæå©ãªãããµãŒãã®æ§èœãå°ãè¯ããªãããšãæåŸ ã§ããŸãã(RHEL 10 ç³»åã¯ããã«ããå°ãæã¡åãããŠæäœã©ã€ã³ã x86-64-v3 ãšãªããŸããããŸããUbuntu ã®ã»ãã§ã 25.10 ãã㯠x86-64-v3 ããªã¢ã³ããæäŸãããŠãããããã䜿ã£ãå Žå RHEL 10 ç³»åãšåããããªé«éåãæåŸ ã§ããŸãã)
èæ¯: atomic åŠçãš libatomic
Tsurugi ã® Transactional KVS ã¢ãžã¥ãŒã«ã§ãã Shirakami ã¯å éšã§ 128bit integer ã® atomic æäœãå€çšããŠããŸãã CPU ã 128bit ã® atomic åœä»€ (å ·äœçã«ã¯ CMPXCHG16B ã VMOVDQA) ãæ±ããå Žåã«ã¯ããã䜿ãé«éã«åŠçã§ããŸãã CPU ããµããŒãããŠããªãå Žåã«ã¯æä»åŠçãããŠããã¡ã¢ãªã¢ã¯ã»ã¹ãããããåŸãªãã®ã§ããªãŒããŒãããã倧ããæ Œæ®µã«æ§èœãäžãã£ãŠããŸããŸãã
ã³ã³ãã€ã©ããœãŒã¹ã³ãŒãã® atomic åŠçéšåãã³ã³ãã€ã«ããå Žåã«ã¯ åºæ¬çã«ã¯ -mXXX ã§ã®æ©èœã»ããæå®ãèŠãŠããã®æ©èœã»ããã® CPU åœä»€ã§ atomic æäœãã§ãããªãã°ãã® CPU åœä»€ã䜿ããã€ããªãçæããããã§ãªããã° GCC ä»å±ã® libatomic ãšããã©ã€ãã©ãªã®è©²åœãã颿°ãåŒã¶ããã«ããŸãã libatomic 㯠atomic ãªã¡ã¢ãªã¢ã¯ã»ã¹æäœãæäŸããã©ã€ãã©ãªã§ãæäœéã® CPU æ©èœã»ããã§ãåãã¢ã©ã€ã³ã¡ã³ããããŠããªãã¢ãã¬ã¹ã«å¯ŸããŠãåŠçã§ããæ±çšã® atomic æäœé¢æ°ãæäŸããŸãããCPU åœä»€ãçšãã髿§èœãª atomic æäœé¢æ°ãçšæãããŠããŠãå®è¡æã« (åçãªã³ã¯è§£æ±ºæã« IFUNC ãçšããŠ) å®è¡äžã® CPU çš®å¥ãå€å®ããCPU ããµããŒãããŠããåœä»€ã®ãã¡ã§æãå¹çã®è¯ãæ¹æ³ã§ã¡ã¢ãªã¢ã¯ã»ã¹ããããã«ãªã£ãŠããŸããCPU ããã®ãã㪠atomic åœä»€ããµããŒãããŠããå Žåã«ã¯ãã®åœä»€ã䜿çšããŠçŽæ¥ãããŠããªãå Žåã«ã¯æ±çšçã䜿çšããŸãããåŸè ã®å Žåæ§èœãäžãã£ãŠããŸããŸãã
Clang ã¯ã³ã³ãã€ã«æã®ãªãã·ã§ã³ -mXXX (-mcx16 ã -march=skylake ç) ã§ 128bit åœä»€ããµããŒãããã CPU åãã§ãããšæå®ãããå Žåã CPU ã® 128bit atomic åœä»€ã䜿ããã€ããªãçæããŸããGCC ãæã¯ããããŠããŸããããGCC 7 ããããã -mXXX ãªãã·ã§ã³ã§æå®ããŠã libatomic ã® 128bit ã¢ã¯ã»ã¹é¢æ°ãåŒã¶ããã«ãããŸããããã®èŸºãã® GCC ã®äºæ ã«ã€ããŠã¯è€éãªãããããã§ã¯èª¬æããŸãããããã¯çŸåšã® GCC 15 ã§ããã®ãŸãŸã§ããç¡æ¡ä»¶ã§ libatomic åŒã³åºããããŠããã®å ã§æé©ãª CPU åœä»€ã䜿çšãããããã倧ããæ§èœå£åããããšã¯ãããŸããã
libatomic ã«æååšããåé¡
libatomic ã CPU æ©èœã»ããæå®ã§ãã«ããããšããã®æ©èœãæããªã CPU ã®ããšã¯èæ
®ãããªããªããŸããã€ãŸããæ°ãã CPU ã§ããåããªããŠãããã®ã§ããå¹çããåäœããããã«ããšæç€ºãããã®ããã«ãã«ããããŸãããã®äžç°ã§å®è¡æã® IFUNC ãçšãã CPU å€å®ãåãããŸããIFUNC å€å®ãåããããš libatomic ã®åœè©²é¢æ°ã¯æ§èœã§å£ãæ±çšçãã䜿ãããªããªããŸããã³ã³ãã€ã©ã¯ CPU ã«ç¹å®ã®æ©èœãããåæã§ãã€ããªãäœãã®ã§ãçŽæ¥ CPU åœä»€ãçšãããã€ããªãäœæã libatomic ãåŒã°ãªããªãã®ã§ããã§ãåé¡ãªãããã§ãã åºæ¬çã«ã¯ ããã§ããã®ã§ãããGCC ã® Intel/AMD 64bit CPU ã«ããã 128bit atomic åœä»€ã®æ±ãã ãã¯äŸå€ã§ãããããã¯ç¡æ¡ä»¶ã§ libatomic ã® 128bit atomic 颿°ãåŒã³ãŸãããã®çµæãœãŒã¹ã³ãŒãã® 128bit atomic åŠçããã¹ãŠæ±çšçã§å®è¡ããã倧å¹
ã«æ§èœå£åããããšã«ãªããŸããã
GCC 14.1 ãããã® libatomic ã®ä¿®æ£ã§ Intel/AMD 64bit CPU ã«ããã 128bit atomic åœä»€ã¯å¿
ã IFUNC ãçµãããã«ããããã®åé¡ã¯ä¿®æ£ãããŸããã
ã§ã¯ããªã Debian/Ubuntu ã§ã¯ãã®åé¡ãèµ·ããªãã£ãããšãããšã Debian/Ubuntu ã§ã¯ RHEL ã®ããã« x86-64-v2 ããã㯠(-v3) éå®ãšããããšããããå€ã x86-64 ã§ãåäœããããã«ãªã£ãŠããããã OS ããæäŸããã libatomic ã® IFUNC å€å®ãåãããã«æ®ãããŠããããã§ãã RHEL ã®ç«å ŽãããããšãµããŒãããŒããŠã§ã¢ãéå®ããŠæ§èœãåäžãããã€ããããšãã§ããªããã°ãèžãã§ããŸã£ããšããã話ã§ããã
以äžãã RHEL 9 ç³»åã§ æšæºã³ã³ãã€ã©ã® GCC 9 ã䜿ã£ãŠãã«ãããã Tsurugi ã§æ§èœãåºãªãåé¡ã®åå ã®è§£èª¬ã§ãããUbuntu 26.04 ã§ã¯ x86-64-v3 (Ubuntu ã®åŒç§°ã§ã¯ amd64v3) ããªã¢ã³ããæäŸãããŸããæšæºã§æäŸããã GCC ã libatomic é¢é£ããã±ãŒãžã¯ããŒãžã§ã³ãæ°ãããã®ãªã®ã§ãã®åé¡ã¯ä¿®æ£æžã¿ãšæãããŸããããèªèº«ã§å€ãã® GCC ããœãŒã¹ãããã«ããããå Žåã¯ãæ°ãä»ããã ããã
ãã®ä»ã®å"Tsurugi"ã䜿ãéã«åœ¹ç«ã€Tipséã¯ã³ãã©ïŒ
次äžä»£é«éRDBå"Tsurugi"ã¯ããªãŒãã³ãœãŒã¹ã§å
¬éäžã§ãã
ãã²ããŠã³ããŒãããŠã¿ãŠãè§Šã£ãŠã¿ãŠãã ããã