暂无图片
暂无图片
2
暂无图片
暂无图片
暂无图片

「YashanDB个人版体验」_测试YashanDB数据库

1. 介绍

数据库管理系统 YashanDB 崖山数据库系统YashanDB是深圳计算科学研究院自主设计研发的新型数据库管理系统,融入原创的有界计算、近似计算、并行可扩展和跨模融合计算理论,可满足金融、政企、能源等关键行业对高性能、高并发及高安全性的要求。

2. 软件下载地址及安装文档

软件下载:https://download.yashandb.com/download 安装文档:https://doc.yashandb.com/yashandb/23.1/zh/%E5%BF%AB%E9%80%9F%E4%B8%8A%E6%89%8B/%E5%AE%89%E8%A3%85%E9%83%A8%E7%BD%B2/YashanDB%E4%BA%A7%E5%93%81%E5%AE%89%E8%A3%85/YashanDB%E6%9C%8D%E5%8A%A1%E7%AB%AF%E5%AE%89%E8%A3%85.html

3. 软件文档下载

image-20231124150146647

image-20231124150212293

文档暂时还无法下载

4. 物理结构解析

安装文件物理结构

[yashan@snyxdb ~]$ tree install/ install/ ├── admin │   ├── codepage │   │   ├── gb18030 │   │   ├── gbk │   │   ├── iso88591 │   │   ├── pinyin.sort │   │   └── ucs │   ├── dbcr │   │   ├── all_views.sql │   │   ├── core_tables.sql │   │   ├── dstb_system_tables.sql │   │   ├── fixed_views.sql │   │   ├── geometry.sql │   │   ├── spatial_ref_sys.csv │   │   ├── system_jobs.sql │   │   ├── system_packages.sql │   │   ├── system_roles.sql │   │   ├── system_tables.sql │   │   ├── system_users.sql │   │   ├── system_views.sql │   │   ├── user_views.sql │   │   └── wr_tables.sql │   ├── simple_schema │   │   └── sales.sql │   └── upgrade │   ├── 22.1.0 │   │   ├── diff.sql │   │   ├── dstb_preupgrade.out │   │   ├── dstb_preupgrade.sql │   │   ├── dstb_upgrade.sql │   │   ├── postupgrade.out │   │   ├── postupgrade.sql │   │   ├── preupgrade.out │   │   ├── preupgrade.sql │   │   ├── upgrade.sql │   │   └── upgrade.toml │   ├── 22.1.1 │   │   ├── diff.sql │   │   ├── dstb_preupgrade.out │   │   ├── dstb_preupgrade.sql │   │   ├── dstb_upgrade.sql │   │   ├── postupgrade.out │   │   ├── postupgrade.sql │   │   ├── preupgrade.out │   │   ├── preupgrade.sql │   │   ├── upgrade.sql │   │   └── upgrade.toml │   ├── 22.1.5 │   │   ├── diff.sql │   │   ├── dstb_preupgrade.out │   │   ├── dstb_preupgrade.sql │   │   ├── dstb_upgrade.sql │   │   ├── postupgrade.out │   │   ├── postupgrade.sql │   │   ├── preupgrade.out │   │   ├── preupgrade.sql │   │   ├── upgrade.sql │   │   └── upgrade.toml │   ├── 22.2.1 │   │   ├── diff.sql │   │   ├── dstb_preupgrade.out │   │   ├── dstb_preupgrade.sql │   │   ├── dstb_upgrade.sql │   │   ├── postupgrade.out │   │   ├── postupgrade.sql │   │   ├── preupgrade.out │   │   ├── preupgrade.sql │   │   ├── upgrade.sql │   │   └── upgrade.toml │   ├── 22.2.2 │   │   ├── diff.sql │   │   ├── dstb_preupgrade.out │   │   ├── dstb_preupgrade.sql │   │   ├── dstb_upgrade.sql │   │   ├── postupgrade.out │   │   ├── postupgrade.sql │   │   ├── preupgrade.out │   │   ├── preupgrade.sql │   │   ├── upgrade.sql │   │   └── upgrade.toml │   ├── 22.2.3 │   │   ├── diff.sql │   │   ├── dstb_preupgrade.out │   │   ├── dstb_preupgrade.sql │   │   ├── dstb_upgrade.sql │   │   ├── postupgrade.out │   │   ├── postupgrade.sql │   │   ├── preupgrade.out │   │   ├── preupgrade.sql │   │   ├── upgrade.sql │   │   └── upgrade.toml │   ├── 22.2.4 │   │   ├── diff.sql │   │   ├── dstb_preupgrade.out │   │   ├── dstb_preupgrade.sql │   │   ├── dstb_upgrade.sql │   │   ├── postupgrade.out │   │   ├── postupgrade.sql │   │   ├── preupgrade.out │   │   ├── preupgrade.sql │   │   ├── upgrade.sql │   │   └── upgrade.toml │   ├── 22.2.5 │   │   ├── diff.sql │   │   ├── dstb_preupgrade.out │   │   ├── dstb_preupgrade.sql │   │   ├── dstb_upgrade.sql │   │   ├── postupgrade.out │   │   ├── postupgrade.sql │   │   ├── preupgrade.out │   │   ├── preupgrade.sql │   │   ├── upgrade.sql │   │   └── upgrade.toml │   ├── 22.2.6 │   │   ├── diff.sql │   │   ├── dstb_preupgrade.out │   │   ├── dstb_preupgrade.sql │   │   ├── dstb_upgrade.sql │   │   ├── postupgrade.out │   │   ├── postupgrade.sql │   │   ├── preupgrade.out │   │   ├── preupgrade.sql │   │   ├── upgrade.sql │   │   └── upgrade.toml │   ├── 22.2.7 │   │   ├── diff.sql │   │   ├── dstb_preupgrade.out │   │   ├── dstb_preupgrade.sql │   │   ├── dstb_upgrade.sql │   │   ├── postupgrade.out │   │   ├── postupgrade.sql │   │   ├── preupgrade.out │   │   ├── preupgrade.sql │   │   ├── upgrade.sql │   │   └── upgrade.toml │   ├── 22.2.8 │   │   ├── diff.sql │   │   ├── dstb_preupgrade.out │   │   ├── dstb_preupgrade.sql │   │   ├── dstb_upgrade.sql │   │   ├── postupgrade.out │   │   ├── postupgrade.sql │   │   ├── preupgrade.out │   │   ├── preupgrade.sql │   │   ├── upgrade.sql │   │   └── upgrade.toml │   ├── README.txt │   └── version.toml ├── bin │   ├── exp │   ├── imp │   ├── yasagent │   ├── yasbak │   ├── yasboot │   ├── yasdb │   ├── yasldr │   ├── yasom │   ├── yaspwd │   ├── yasql │   ├── yasrman │   ├── yaswrap │   └── yex_server ├── conf │   ├── database_options.json │   ├── profile.toml │   ├── sqlcollect.toml │   ├── sqlhtml.template │   ├── yashandb.bashrc │   ├── yasreport.template │   └── yfs_options.json ├── ext │   ├── bin │   │   ├── fio │   │   └── iperf │   ├── monit │   │   ├── monit │   │   ├── monitrc.template │   │   └── monit.sh │   ├── static │   │   ├── assets │   │   │   ├── Deploy.1c9cf7d8.css │   │   │   ├── Deploy.9fc516d6.js │   │   │   ├── favicon.c096f8ac.ico │   │   │   ├── index.35dbe09f.js │   │   │   └── index.931cd522.css │   │   └── index.html │   └── yasparse ├── gitmoduleversion.dat ├── hosts.toml ├── include │   ├── lgm_interface.h │   ├── yac_include.h │   └── yacli.h ├── java │   └── com │   └── extjava │   └── Loader.class ├── lib │   ├── libaws-s3-c.so │   ├── libcrypto.so.1.1 │   ├── libcsvexp.so -> libcsvexp.so.0 │   ├── libcsvexp.so.0 -> libcsvexp.so.1.1.100 │   ├── libcsvexp.so.1.1.100 │   ├── libcurl.a │   ├── libcurl.so -> libcurl.so.4.8.0 │   ├── libcurl.so.4 -> libcurl.so.4.8.0 │   ├── libcurl.so.4.8.0 │   ├── libdrv_oracle.so │   ├── libdrv_yashan.so │   ├── libextProc_test.so │   ├── libgeos_c.so -> libgeos_c.so.1 │   ├── libgeos_c.so.1 -> libgeos_c.so.1.17.1 │   ├── libgeos_c.so.1.17.1 │   ├── libgeos.so -> libgeos.so.3.11.1 │   ├── libgeos.so.3.11.1 │   ├── libjni.so │   ├── liblz4.so -> liblz4.so.1.9.3 │   ├── liblz4.so.1 -> liblz4.so.1.9.3 │   ├── liblz4.so.1.9.3 │   ├── libpcre2-8.a │   ├── libpcre2-8.so -> libpcre2-8.so.0.10.4 │   ├── libpcre2-8.so.0 -> libpcre2-8.so.0.10.4 │   ├── libpcre2-8.so.0.10.4 │   ├── libproj.so -> libproj.so.25 │   ├── libproj.so.25 -> libproj.so.25.9.1.0 │   ├── libproj.so.25.9.1.0 │   ├── libssl.so -> libssl.so.1.1 │   ├── libssl.so.1.1 │   ├── libtest_preload.so │   ├── libxbsa.so │   ├── libyascli.so -> libyascli.so.0 │   ├── libyascli.so.0 -> libyascli.so.1.1.100 │   ├── libyascli.so.1.1.100 │   ├── libyas_cluster.so -> libyas_cluster.so.0 │   ├── libyas_cluster.so.0 -> libyas_cluster.so.1.1.100 │   ├── libyas_cluster.so.1.1.100 │   ├── libyas_coast.so -> libyas_coast.so.0 │   ├── libyas_coast.so.0 -> libyas_coast.so.1.1.100 │   ├── libyas_coast.so.1.1.100 │   ├── libyas_col_executor.so │   ├── libyas_dstb.so -> libyas_dstb.so.0 │   ├── libyas_dstb.so.0 -> libyas_dstb.so.1.1.100 │   ├── libyas_dstb.so.1.1.100 │   ├── libyas_election.so │   ├── libyasfs.so │   ├── libyas_ha.so -> libyas_ha.so.0 │   ├── libyas_ha.so.0 -> libyas_ha.so.1.1.100 │   ├── libyas_ha.so.1.1.100 │   ├── libyas_infra.so -> libyas_infra.so.0 │   ├── libyas_infra.so.0 -> libyas_infra.so.1.1.100 │   ├── libyas_infra.so.1.1.100 │   ├── libyas_logminer.so │   ├── libyas_plsql.so -> libyas_plsql.so.0 │   ├── libyas_plsql.so.0 -> libyas_plsql.so.1.1.100 │   ├── libyas_plsql.so.1.1.100 │   ├── libyas_server.so -> libyas_server.so.0 │   ├── libyas_server.so.0 -> libyas_server.so.1.1.100 │   ├── libyas_server.so.1.1.100 │   ├── libyas_storage.so -> libyas_storage.so.0 │   ├── libyas_storage.so.0 -> libyas_storage.so.1.1.100 │   ├── libyas_storage.so.1.1.100 │   ├── libycs_c.a │   ├── libycs_fault_point.a │   ├── libycs_ycr.a │   ├── libydbc.so │   ├── libyex_client.so │   ├── libyfs_fault_point.a │   ├── libyfsi.so -> libyfsi.so.0 │   ├── libyfsi.so.0 -> libyfsi.so.0.2.0 │   ├── libyfsi.so.0.2.0 │   ├── libyspi_sdk.so │   ├── libz.so -> libz.so.1.2.12 │   ├── libz.so.1 -> libz.so.1.2.12 │   ├── libz.so.1.2.12 │   ├── libzstd.so -> libzstd.so.1.5.2 │   ├── libzstd.so.1 -> libzstd.so.1.5.2 │   └── libzstd.so.1.5.2 ├── LICENSE ├── om │   ├── yasboot.log │   └── yashandb │   └── conf │   └── tls.toml ├── plug-in │   └── package │   ├── linux │   │   ├── libyspi_geometry.so │   │   └── libyspi_regexp.so │   └── package.ini ├── scripts │   ├── createResourceCgroup.sh │   ├── initDB.sh │   ├── initStandby.sh │   ├── install.ini │   ├── install.sh │   ├── startup.sh │   ├── stop.sh │   └── yascheckStart.sh ├── yashandb-personal-23.1.1.100-linux-x86_64.tar.gz └── yashandb.toml 35 directories, 265 files [yashan@snyxdb ~]$

软件目录结构

[yashan@snyxdb ~]$ tree yasdb_home/ yasdb_home/ └── yashandb └── 23.1.1.100 ├── admin │   ├── codepage │   │   ├── gb18030 │   │   ├── gbk │   │   ├── iso88591 │   │   ├── pinyin.sort │   │   └── ucs │   ├── dbcr │   │   ├── all_views.sql │   │   ├── core_tables.sql │   │   ├── dstb_system_tables.sql │   │   ├── fixed_views.sql │   │   ├── geometry.sql │   │   ├── spatial_ref_sys.csv │   │   ├── system_jobs.sql │   │   ├── system_packages.sql │   │   ├── system_roles.sql │   │   ├── system_tables.sql │   │   ├── system_users.sql │   │   ├── system_views.sql │   │   ├── user_views.sql │   │   └── wr_tables.sql │   ├── simple_schema │   │   └── sales.sql │   └── upgrade │   ├── 22.1.0 │   │   ├── diff.sql │   │   ├── dstb_preupgrade.out │   │   ├── dstb_preupgrade.sql │   │   ├── dstb_upgrade.sql │   │   ├── postupgrade.out │   │   ├── postupgrade.sql │   │   ├── preupgrade.out │   │   ├── preupgrade.sql │   │   ├── upgrade.sql │   │   └── upgrade.toml │   ├── 22.1.1 │   │   ├── diff.sql │   │   ├── dstb_preupgrade.out │   │   ├── dstb_preupgrade.sql │   │   ├── dstb_upgrade.sql │   │   ├── postupgrade.out │   │   ├── postupgrade.sql │   │   ├── preupgrade.out │   │   ├── preupgrade.sql │   │   ├── upgrade.sql │   │   └── upgrade.toml │   ├── 22.1.5 │   │   ├── diff.sql │   │   ├── dstb_preupgrade.out │   │   ├── dstb_preupgrade.sql │   │   ├── dstb_upgrade.sql │   │   ├── postupgrade.out │   │   ├── postupgrade.sql │   │   ├── preupgrade.out │   │   ├── preupgrade.sql │   │   ├── upgrade.sql │   │   └── upgrade.toml │   ├── 22.2.1 │   │   ├── diff.sql │   │   ├── dstb_preupgrade.out │   │   ├── dstb_preupgrade.sql │   │   ├── dstb_upgrade.sql │   │   ├── postupgrade.out │   │   ├── postupgrade.sql │   │   ├── preupgrade.out │   │   ├── preupgrade.sql │   │   ├── upgrade.sql │   │   └── upgrade.toml │   ├── 22.2.2 │   │   ├── diff.sql │   │   ├── dstb_preupgrade.out │   │   ├── dstb_preupgrade.sql │   │   ├── dstb_upgrade.sql │   │   ├── postupgrade.out │   │   ├── postupgrade.sql │   │   ├── preupgrade.out │   │   ├── preupgrade.sql │   │   ├── upgrade.sql │   │   └── upgrade.toml │   ├── 22.2.3 │   │   ├── diff.sql │   │   ├── dstb_preupgrade.out │   │   ├── dstb_preupgrade.sql │   │   ├── dstb_upgrade.sql │   │   ├── postupgrade.out │   │   ├── postupgrade.sql │   │   ├── preupgrade.out │   │   ├── preupgrade.sql │   │   ├── upgrade.sql │   │   └── upgrade.toml │   ├── 22.2.4 │   │   ├── diff.sql │   │   ├── dstb_preupgrade.out │   │   ├── dstb_preupgrade.sql │   │   ├── dstb_upgrade.sql │   │   ├── postupgrade.out │   │   ├── postupgrade.sql │   │   ├── preupgrade.out │   │   ├── preupgrade.sql │   │   ├── upgrade.sql │   │   └── upgrade.toml │   ├── 22.2.5 │   │   ├── diff.sql │   │   ├── dstb_preupgrade.out │   │   ├── dstb_preupgrade.sql │   │   ├── dstb_upgrade.sql │   │   ├── postupgrade.out │   │   ├── postupgrade.sql │   │   ├── preupgrade.out │   │   ├── preupgrade.sql │   │   ├── upgrade.sql │   │   └── upgrade.toml │   ├── 22.2.6 │   │   ├── diff.sql │   │   ├── dstb_preupgrade.out │   │   ├── dstb_preupgrade.sql │   │   ├── dstb_upgrade.sql │   │   ├── postupgrade.out │   │   ├── postupgrade.sql │   │   ├── preupgrade.out │   │   ├── preupgrade.sql │   │   ├── upgrade.sql │   │   └── upgrade.toml │   ├── 22.2.7 │   │   ├── diff.sql │   │   ├── dstb_preupgrade.out │   │   ├── dstb_preupgrade.sql │   │   ├── dstb_upgrade.sql │   │   ├── postupgrade.out │   │   ├── postupgrade.sql │   │   ├── preupgrade.out │   │   ├── preupgrade.sql │   │   ├── upgrade.sql │   │   └── upgrade.toml │   ├── 22.2.8 │   │   ├── diff.sql │   │   ├── dstb_preupgrade.out │   │   ├── dstb_preupgrade.sql │   │   ├── dstb_upgrade.sql │   │   ├── postupgrade.out │   │   ├── postupgrade.sql │   │   ├── preupgrade.out │   │   ├── preupgrade.sql │   │   ├── upgrade.sql │   │   └── upgrade.toml │   ├── README.txt │   └── version.toml ├── bin │   ├── exp │   ├── imp │   ├── yasagent │   ├── yasbak │   ├── yasboot │   ├── yasdb │   ├── yasldr │   ├── yasom │   ├── yaspwd │   ├── yasql │   ├── yasrman │   ├── yaswrap │   └── yex_server ├── client │   └── yasc_service.ini ├── conf │   ├── database_options.json │   ├── monit │   │   ├── yasagent.conf │   │   ├── yashandb-db-1-1.conf │   │   └── yasom.conf │   ├── profile.toml │   ├── sqlcollect.toml │   ├── sqlhtml.template │   ├── yashandb.bashrc │   ├── yasreport.template │   └── yfs_options.json ├── ext │   ├── bin │   │   ├── fio │   │   └── iperf │   ├── monit │   │   ├── conf │   │   │   └── user.conf │   │   ├── log │   │   ├── monit │   │   ├── monitrc │   │   ├── monitrc.template │   │   ├── monit.sh │   │   └── run │   ├── static │   │   ├── assets │   │   │   ├── Deploy.1c9cf7d8.css │   │   │   ├── Deploy.9fc516d6.js │   │   │   ├── favicon.c096f8ac.ico │   │   │   ├── index.35dbe09f.js │   │   │   └── index.931cd522.css │   │   └── index.html │   └── yasparse ├── gitmoduleversion.dat ├── include │   ├── lgm_interface.h │   ├── yac_include.h │   └── yacli.h ├── java │   └── com │   └── extjava │   └── Loader.class ├── lib │   ├── libaws-s3-c.so │   ├── libcrypto.so.1.1 │   ├── libcsvexp.so -> libcsvexp.so.0 │   ├── libcsvexp.so.0 -> libcsvexp.so.1.1.100 │   ├── libcsvexp.so.1.1.100 │   ├── libcurl.a │   ├── libcurl.so -> libcurl.so.4.8.0 │   ├── libcurl.so.4 -> libcurl.so.4.8.0 │   ├── libcurl.so.4.8.0 │   ├── libdrv_oracle.so │   ├── libdrv_yashan.so │   ├── libextProc_test.so │   ├── libgeos_c.so -> libgeos_c.so.1 │   ├── libgeos_c.so.1 -> libgeos_c.so.1.17.1 │   ├── libgeos_c.so.1.17.1 │   ├── libgeos.so -> libgeos.so.3.11.1 │   ├── libgeos.so.3.11.1 │   ├── libjni.so │   ├── liblz4.so -> liblz4.so.1.9.3 │   ├── liblz4.so.1 -> liblz4.so.1.9.3 │   ├── liblz4.so.1.9.3 │   ├── libpcre2-8.a │   ├── libpcre2-8.so -> libpcre2-8.so.0.10.4 │   ├── libpcre2-8.so.0 -> libpcre2-8.so.0.10.4 │   ├── libpcre2-8.so.0.10.4 │   ├── libproj.so -> libproj.so.25 │   ├── libproj.so.25 -> libproj.so.25.9.1.0 │   ├── libproj.so.25.9.1.0 │   ├── libssl.so -> libssl.so.1.1 │   ├── libssl.so.1.1 │   ├── libtest_preload.so │   ├── libxbsa.so │   ├── libyascli.so -> libyascli.so.0 │   ├── libyascli.so.0 -> libyascli.so.1.1.100 │   ├── libyascli.so.1.1.100 │   ├── libyas_cluster.so -> libyas_cluster.so.0 │   ├── libyas_cluster.so.0 -> libyas_cluster.so.1.1.100 │   ├── libyas_cluster.so.1.1.100 │   ├── libyas_coast.so -> libyas_coast.so.0 │   ├── libyas_coast.so.0 -> libyas_coast.so.1.1.100 │   ├── libyas_coast.so.1.1.100 │   ├── libyas_col_executor.so │   ├── libyas_dstb.so -> libyas_dstb.so.0 │   ├── libyas_dstb.so.0 -> libyas_dstb.so.1.1.100 │   ├── libyas_dstb.so.1.1.100 │   ├── libyas_election.so │   ├── libyasfs.so │   ├── libyas_ha.so -> libyas_ha.so.0 │   ├── libyas_ha.so.0 -> libyas_ha.so.1.1.100 │   ├── libyas_ha.so.1.1.100 │   ├── libyas_infra.so -> libyas_infra.so.0 │   ├── libyas_infra.so.0 -> libyas_infra.so.1.1.100 │   ├── libyas_infra.so.1.1.100 │   ├── libyas_logminer.so │   ├── libyas_plsql.so -> libyas_plsql.so.0 │   ├── libyas_plsql.so.0 -> libyas_plsql.so.1.1.100 │   ├── libyas_plsql.so.1.1.100 │   ├── libyas_server.so -> libyas_server.so.0 │   ├── libyas_server.so.0 -> libyas_server.so.1.1.100 │   ├── libyas_server.so.1.1.100 │   ├── libyas_storage.so -> libyas_storage.so.0 │   ├── libyas_storage.so.0 -> libyas_storage.so.1.1.100 │   ├── libyas_storage.so.1.1.100 │   ├── libycs_c.a │   ├── libycs_fault_point.a │   ├── libycs_ycr.a │   ├── libydbc.so │   ├── libyex_client.so │   ├── libyfs_fault_point.a │   ├── libyfsi.so -> libyfsi.so.0 │   ├── libyfsi.so.0 -> libyfsi.so.0.2.0 │   ├── libyfsi.so.0.2.0 │   ├── libyspi_sdk.so │   ├── libz.so -> libz.so.1.2.12 │   ├── libz.so.1 -> libz.so.1.2.12 │   ├── libz.so.1.2.12 │   ├── libzstd.so -> libzstd.so.1.5.2 │   ├── libzstd.so.1 -> libzstd.so.1.5.2 │   └── libzstd.so.1.5.2 ├── LICENSE ├── log │   ├── monit.log │   └── yashandb │   └── db-1-1 │   ├── run │   │   └── run.log │   └── slow │   └── slow.log ├── om │   ├── yasboot.log │   └── yashandb │   ├── conf │   │   ├── node.toml │   │   ├── tls.toml │   │   ├── yasagent.toml │   │   └── yasom.toml │   ├── data │   │   ├── cod_domor.db │   │   └── yasboot_sys.pwd │   └── log │   ├── worker │   ├── yasagent.log │   ├── yasagent-panic.log │   ├── yasagent-start.log │   ├── yasom.log │   ├── yasom-panic.log │   └── yasom-start.log ├── plug-in │   └── package │   ├── linux │   │   ├── libyspi_geometry.so │   │   └── libyspi_regexp.so │   └── package.ini ├── scripts │   ├── createResourceCgroup.sh │   ├── initDB.sh │   ├── initStandby.sh │   ├── install.ini │   ├── install.sh │   ├── startup.sh │   ├── stop.sh │   └── yascheckStart.sh └── yashandb-personal-23.1.1.100-linux-x86_64.tar.gz 50 directories, 283 files [yashan@snyxdb ~]$

数据文件结构

[yashan@snyxdb ~]$ tree yasdb_data/ yasdb_data/ └── db-1-1 ├── archive │   └── arch_0_1.ARC ├── backup ├── config │   └── yasdb.ini ├── data ├── dbfiles │   ├── ctrl1 │   ├── ctrl2 │   ├── ctrl3 │   ├── dwf │   ├── redo1 │   ├── redo2 │   ├── redo3 │   ├── redo4 │   ├── swap │   ├── sysaux │   ├── system │   ├── temp │   ├── undo │   └── users ├── diag │   ├── adr.pid │   ├── hm │   ├── metadata │   │   ├── hm_finding │   │   ├── hm_run │   │   ├── incident │   │   └── problem │   └── trace │   └── yashandb_yas_22.trc ├── external │   └── server │   └── yex_server.ini ├── instance │   ├── yasdb1.pwd │   ├── yasdb.ipc │   ├── yasdb.pid │   └── yasdb.pwd ├── local_fs │   └── users ├── log │   ├── alert │   │   └── alert.log │   ├── audit │   ├── external │   │   └── server │   ├── listener │   │   └── listener.log │   ├── run │   ├── start.log │   └── trace └── tmp 24 directories, 30 files [yashan@snyxdb ~]$

image-20231124151500152

小结

1. 通过软件目录检查: exp/imp/yasldr/yasrman 以上可执行程序和Oracle类似. 2. 通过文件文件目录检查:ctrl1/redo1/sysaux/system/undo/users 物理结构基本和Oracle一致

5. 功能测试

dual查询

[yashan@snyxdb dbfiles]$ yasql sys/Root_1234 YashanDB SQL Personal Edition Release 23.1.1.100 x86_64 Connected to: YashanDB Server Personal Edition Release 23.1.1.100 x86_64 - X86 64bit Linux SQL> select sysdate from dual; SYSDATE -------------------------------- 2023-11-24 1 row fetched. SQL> select to_char(sysdate,'yyyy-mm-dd hh24:mi:ss') from dual; TO_CHAR(SYSDATE,'YYY ---------------------------------------------------------------- 2023-11-24 15:28:00 1 row fetched. SQL>

用户创建

SQL> create user hsql identified by Root_1234; Succeed. SQL> grant connect,resource to hsql; YAS-02216 invalid privilege or role specified SQL> grant connect to hsql; Succeed. SQL> grant resource to hsql; Succeed. SQL> grant dba to hsql; Succeed. SQL>

create table

SQL> create table hsql.drop_1(c1 number,c2 varchar2(4000)) tablespace users; Succeed. SQL>

插入1000万数据

### YashanDB SQL> set timing on SQL> begin for i in 1 .. 100 loop for j in 1 .. 100000 loop insert into hsql.drop_1 values(j,'orastar'); end loop; commit; end loop; commit; end; / 2 3 4 5 6 7 8 9 10 PL/SQL Succeed. Elapsed: 00:00:36.840 SQL> ### Oracle 11.2.0.4 sys@ORCL>set timing on sys@ORCL>begin for i in 1 .. 100 loop for j in 1 .. 100000 loop insert into hsql.drop_1 values(j,'orastar'); end loop; commit; end loop; commit; end; / 2 3 4 5 6 7 8 9 10 PL/SQL procedure successfully completed. Elapsed: 00:02:57.34 sys@ORCL>

count

### YashanDB SQL> select count(1) from hsql.drop_1; COUNT(1) --------------------- 10000000 1 row fetched. Elapsed: 00:00:00.333 SQL> ### Oracle 11.2.0.4 sys@ORCL>select count(1) from hsql.drop_1; COUNT(1) ---------- 10000000 Elapsed: 00:00:00.21 sys@ORCL>

CRAS

### YashanDB SQL> create table hsql.drop_2 as select * from hsql.drop_1; Succeed. Elapsed: 00:00:21.069 SQL> ### Oracle 11.2.0.4 sys@ORCL>create table hsql.drop_2 as select * from hsql.drop_1; Table created. Elapsed: 00:00:08.88 sys@ORCL>

USE_HASH

### YashanDB SQL> explain select /*+ USE_HASH(a b) */count(1) from hsql.drop_1 a,hsql.drop_2 b WHERE A.C1=B.C1; PLAN_DESCRIPTION ---------------------------------------------------------------- SQL hash value: 4241072954 Optimizer: ADOPT_C +----+--------------------------------+----------------------+------------+----------+-------------+--------------------------------+ | Id | Operation type | Name | Owner | Rows | Cost(%CPU) | Partition info | +----+--------------------------------+----------------------+------------+----------+-------------+--------------------------------+ | 0 | SELECT STATEMENT | | | | | | | 1 | AGGREGATE | | | 1| 311( 0)| | |* 2 | HASH JOIN INNER | | | 100000| 310( 0)| | | 3 | TABLE ACCESS FULL | DROP_1 | HSQL | 100000| 130( 0)| | | 4 | TABLE ACCESS FULL | DROP_2 | HSQL | 100000| 130( 0)| | +----+--------------------------------+----------------------+------------+----------+-------------+--------------------------------+ Operation Information (identified by operation id): --------------------------------------------------- 2 - Predicate : access("A"."C1" = "B"."C1") 17 rows fetched. Elapsed: 00:00:00.002 SQL> SQL> select /*+ USE_HASH(a b) */count(1) from hsql.drop_1 a,hsql.drop_2 b WHERE A.C1=B.C1; COUNT(1) --------------------- 1000000000 1 row fetched. Elapsed: 00:02:22.520 SQL> ### Oracle 11.2.0.4 sys@ORCL>explain plan for select /*+ USE_HASH(a b) */count(1) from hsql.drop_1 a,hsql.drop_2 b WHERE A.C1=B.C1; Explained. Elapsed: 00:00:00.04 sys@ORCL>select * from table(dbms_xplan.display()); PLAN_TABLE_OUTPUT -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Plan hash value: 3022985452 -------------------------------------------------------------------------------------- | Id | Operation | Name | Rows | Bytes |TempSpc| Cost (%CPU)| Time | -------------------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 1 | 26 | | 48552 (8)| 00:09:43 | | 1 | SORT AGGREGATE | | 1 | 26 | | | | |* 2 | HASH JOIN | | 1352M| 32G| 241M| 48552 (8)| 00:09:43 | | 3 | TABLE ACCESS FULL| DROP_1 | 10M| 125M| | 6926 (1)| 00:01:24 | | 4 | TABLE ACCESS FULL| DROP_2 | 12M| 158M| | 6814 (1)| 00:01:22 | -------------------------------------------------------------------------------------- Predicate Information (identified by operation id): --------------------------------------------------- 2 - access("A"."C1"="B"."C1") Note ----- - dynamic sampling used for this statement (level=2) 20 rows selected. Elapsed: 00:00:00.05 sys@ORCL>select /*+ USE_HASH(a b) */count(1) from hsql.drop_1 a,hsql.drop_2 b WHERE A.C1=B.C1; COUNT(1) ---------- 1000000000 Elapsed: 00:00:56.80 sys@ORCL>

创建索引

### YashanDB SQL> create index hsql.idx1 on hsql.drop_1(c1) tablespace users; Succeed. Elapsed: 00:00:08.048 SQL> create index hsql.idx2 on hsql.drop_2(c1) tablespace users; Succeed. Elapsed: 00:00:10.288 SQL> ### Oracle 11.2.0.4 sys@ORCL>create index hsql.idx1 on hsql.drop_1(c1) tablespace users; Index created. Elapsed: 00:00:04.11 sys@ORCL>create index hsql.idx2 on hsql.drop_2(c1) tablespace users; Index created. Elapsed: 00:00:04.11 sys@ORCL>

USE_NL

### YashanDB SQL> explain select /*+ USE_NL(a b) */count(1) from hsql.drop_1 a,hsql.drop_2 b WHERE A.C1=B.C1; PLAN_DESCRIPTION ---------------------------------------------------------------- SQL hash value: 3233588136 Optimizer: ADOPT_C +----+--------------------------------+----------------------+------------+----------+-------------+--------------------------------+ | Id | Operation type | Name | Owner | Rows | Cost(%CPU) | Partition info | +----+--------------------------------+----------------------+------------+----------+-------------+--------------------------------+ | 0 | SELECT STATEMENT | | | | | | | 1 | AGGREGATE | | | 1| 141( 0)| | | 2 | NESTED LOOPS INNER | | | 100000| 139( 0)| | | 3 | INDEX FAST FULL SCAN | IDX1 | HSQL | 100000| 93( 0)| | |* 4 | INDEX RANGE SCAN | IDX2 | HSQL | 1| 6( 0)| | +----+--------------------------------+----------------------+------------+----------+-------------+--------------------------------+ Operation Information (identified by operation id): --------------------------------------------------- 4 - Predicate : access("B"."C1" = "A"."C1") 17 rows fetched. Elapsed: 00:00:00.002 SQL> select /*+ USE_NL(a b) */count(1) from hsql.drop_1 a,hsql.drop_2 b WHERE A.C1=B.C1; COUNT(1) --------------------- 1000000000 1 row fetched. Elapsed: 00:01:10.675 SQL> ### Oracle 11.2.0.4 sys@ORCL>explain plan for select /*+ USE_NL(a b) */count(1) from hsql.drop_1 a,hsql.drop_2 b WHERE A.C1=B.C1; Explained. Elapsed: 00:00:00.03 sys@ORCL>select * from table(dbms_xplan.display()); PLAN_TABLE_OUTPUT -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- Plan hash value: 3315348156 ------------------------------------------------------------------------------- | Id | Operation | Name | Rows | Bytes | Cost (%CPU)| Time | ------------------------------------------------------------------------------- | 0 | SELECT STATEMENT | | 1 | 26 | 10M (1)| 33:51:52 | | 1 | SORT AGGREGATE | | 1 | 26 | | | | 2 | NESTED LOOPS | | 1352M| 32G| 10M (1)| 33:51:52 | | 3 | INDEX FAST FULL SCAN| IDX1 | 10M| 125M| 6105 (1)| 00:01:14 | |* 4 | INDEX RANGE SCAN | IDX2 | 134 | 1742 | 2 (0)| 00:00:01 | ------------------------------------------------------------------------------- Predicate Information (identified by operation id): --------------------------------------------------- 4 - access("A"."C1"="B"."C1") Note ----- - dynamic sampling used for this statement (level=2) 20 rows selected. Elapsed: 00:00:00.04 sys@ORCL>select /*+ USE_NL(a b) */count(1) from hsql.drop_1 a,hsql.drop_2 b WHERE A.C1=B.C1; COUNT(1) ---------- 1000000000 Elapsed: 00:00:40.62 sys@ORCL> YashanDB数据库和Oracle相似度较高,建议小伙伴都测试下。

6. 总结

1. 通过软件目录检查: exp/imp/yasldr/yasrman 以上可执行程序和Oracle类似. 2. 通过文件文件目录检查:ctrl1/redo1/sysaux/system/undo/users 物理结构基本和Oracle一致 3. YashanDB物理结构及SQL语句与Oracle相似度较高,几乎可以从Oracle拿过来直接使用。 4. 通过性能对比,YashanDB插入数据性能更优,Oracle use_hash性能理优。 YashanDB数据库和Oracle相似度较高,希望YashanDB在兼容性、高可用性、可观测性及性能方面不断优化,推荐社区小伙伴都测试下。
数据库 插入1000万数据(秒) count CRAS USE_HASH 创建索引 USE_NL
YashanDB 23.1.1.100 Elapsed: 00:00:36.840 Elapsed: 00:00:00.333 Elapsed: 00:00:21.069 Elapsed: 00:02:22.520 Elapsed: 00:00:08.048 Elapsed: 00:01:10.675
Oracle 11.2.0.4 Elapsed: 00:02:57.34 Elapsed: 00:00:00.21 Elapsed: 00:00:08.88 Elapsed: 00:00:56.80 Elapsed: 00:00:04.11 Elapsed: 00:00:40.62
最后修改时间:2023-11-24 16:53:02
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论