同步操作将从 StoneAtom/stonedb 强制同步,此操作会覆盖自 Fork 仓库以来所做的任何修改,且无法恢复!!!
确定后同步将在后台操作,完成时将刷新页面,请耐心等待。
StoneDB 是一个兼容 MySQL 的高性能混合事务/分析处理(HTAP)数据库。它为 MySQL 提供了分析处理(AP)能力。运行中的系统可以无缝地迁移到 StoneDB,而无需更改任何代码。与 InnoDB 相比,StoneDB 提供了 10 倍的查询性能和 10 倍的加载性能。StoneDB 还提供 10:1 到 40:1 的压缩比。
概览
架构图 2.0
想获取更多关于 StoneDB 的信息,可以前往官网:stonedb.io。
StoneDB 社区欢迎各种各样的贡献,如为代码库贡献代码,分享您如何使用StoneDB的经验,并在论坛上在社区中提供见解,或贡献项目,使 StoneDB 成为一个更好的开源项目。想获取更多的细节,可以看这里:贡献指南。
入门部分提供了关于StoneDB支持的平台,安装(包括创建您的第一个表),以及从运行的MySQL数据库迁移到StoneDB的信息。
目前我们支持以下操作系统平台:
我们用来验证构建的编译器工具集:
以下是我们用来验证构建的包:
更多信息,可以查看 Compile StoneDB on Ubuntu 20.04。
更多信息,可以查看 Compile StoneDB on CentOS 7。
更多信息,可以查看 Compile StoneDB on RHEL 7。
更多信息,可以查看 Compile StoneDB in a Docker Container。
StoneDB安装完成后,您至少需要在 my.cnf
文件中配置以下参数:
#the stonedb configuration options are listed as following.
#for an example.
[mysqld]
# 如果是5.7及以后的版本,引擎设置为tianmu
default-storage-engine=tianmu
# 如果是5.6版本,引擎要设置为stonedb
# default-storage-engine=stonedb
binlog-format=STATEMENT
# 对于 5.6 版本
cd /path/to/your/path/bin && ./mysql_install_db --basedir=/stonedb/install/ --datadir=/stonedb/install/data/ --user=mysql
# 对于 5.7 及以后的版本
cd /path/to/your/path/bin && ./mysqld --initialize --basedir=/stonedb/install/ --datadir=/stonedb/install/data/ --user=mysql
mysqld_safe --defaults-file=/path/to/my.cnf --user=mysql &
--The example code for creating a table with 'tianmu' engine.(For version 5.7 or later)
CREATE TABLE `example_table` (
`id1` bigint(20) NOT NULL DEFAULT '0',
`id1_type` int(10) NOT NULL DEFAULT '0',
`id2` bigint(20) NOT NULL DEFAULT '0',
`id2_type` int(10) NOT NULL DEFAULT '0',
`data` varchar(255) NOT NULL DEFAULT '',
`time` bigint(20) NOT NULL DEFAULT '0',
`version` int(11) NOT NULL DEFAULT '0',
) ENGINE=tianmu;
-- For version 5.6, the engine should be set to 'stonedb'
这个例子展示了 StoneDB 中的一些重要特性和限制。有关限制的更多信息,请参见 StoneDB Limitations。
如果您想在同一个实例中同时使用 InnoDB 和 Tianmu 来运行连接查询,在文件my.cnf中设置stonedb_ini_allowmysqlquerypath为1。
目前还没有开发在存储引擎之间移动数据的在线迁移工具,但是您显然希望在不停机、不丢失数据或不准确结果的情况下进行迁移。为了实现这一点,您需要从使用 InnoDB 引擎的源 MySQL 服务器上逻辑地移动数据,并将其加载到 Tianmu 中进行分析处理。具体流程如下:
创建一个StoneDB实例和表。
将所有数据库和表模式从源复制到目标。
通过执行 SELECT…INTO OUTFILE
将每个表转储到一个文件。
将文件发送到目的地,并使用 load DATA…INFILE
加载它们。
相关文档可在https://stonedb.io 上找到。该文档为您提供了 StoneDB 基础知识,使用 StoneDB 的广泛示例,以及您在使用 StoneDB 期间可能需要的其他信息。
GitHub讨论 是大多数关于 StoneDB 项目的讨论和交流的主页。欢迎您的参与。欢迎并重视您的每一个意见或建议。我们期待 StoneDB 成为一个开放且有影响力的项目。
您可以扫码加入我们的微信用户群:
参加StoneDB项目时,请确保您的所有行为都符合行为准则 。
此处可能存在不合适展示的内容,页面不予展示。您可通过相关编辑功能自查并修改。
如您确认内容无涉及 不当用语 / 纯广告导流 / 暴力 / 低俗色情 / 侵权 / 盗版 / 虚假 / 无价值内容或违法国家有关法律法规的内容,可点击提交进行申诉,我们将尽快为您处理。