search
HomeDatabaseMysql Tutorial内存数据库的几个典型应用场景

内存数据库的几个典型应用场景

Jun 07, 2016 pm 03:15 PM
MemoryseveralScenesapplicationdatabase

近些年内存数据库(IMDB)技术发展迅猛。除了与生俱来的高性能之外,IMDB本身越来越向着功能完整的独立DB的方向发展。 下面简单描述当前比较常见的几个IMDB应用场景,希望对有志于IMDB技术的同僚以启发—— 1.电信计费 IMDB最大规模的应用集中在电信领域,尤其

近些年内存数据库(IMDB)技术发展迅猛。除了与生俱来的高性能之外,IMDB本身越来越向着功能完整的独立DB的方向发展。

下面简单描述当前比较常见的几个IMDB应用场景,希望对有志于IMDB技术的同僚以启发——

1.电信计费
IMDB最大规模的应用集中在电信领域,尤其以计费系统为主。当然,近些年陆续开始向新的电信业务领域拓展,例如核心网、CRM、精确营销等。下图是IMDB在电信计费中的架构图,供大家参考。

内存数据库的几个典型应用场景

2.证券类在线交易

当前的证券交易基本都是利用J2EE来缓存所有的交易对象,这势必导致中间层大量的系统开销,同时增加系统和人力成本。利用IMDB,把交易按逻辑分类,并缓存到应用服务器中,可以极大的提高系统性能和对象访问的统一性。

内存数据库的几个典型应用场景


3.区域性数据采集中心
对于跨地域的大型营业系统而言,区域性数据中心的存在大大提高了数据的准确、快速和安全等特性。典型的应用场景包括:高速公路收费系统、餐饮连锁计费/营收系统、代理售票系统等。典型的系统架构如下:
内存数据库的几个典型应用场景

这类系统最大的特点是专用机负载较低,可以采用较为廉价的硬件配置,但是区域性数据中心需要较高的硬件配置从而应对有可能发生的大并发任务(如餐厅每天晚10点进行统一盘点,代理售票系统月末提交当月报表等)。考虑到大并发不是每时每刻都会发生,用内存数据库+轻量级数据库服务器的配置替代高性能数据库服务器作为区域性数据库服务器,可以用最低的成本管理并维护大并发时的热数据。
在实际部署的时候,内存数据库可以同时部署在终端专用机和区域性数据库服务器;专用机可以采用同步/异步的方式与区域性数据库服务器进行同步;最终,总公司的数据中心从各个区域数据中心的内存数据库中直接读取汇总数据并进行相应处理。

4.BI系统
BI系统是由数据仓库+大量的OLAP应用所构成。传统BI系统的瓶颈往往来自数据库服务器,这也正是IBM,Oracle等公司积极推出数据库一体机的初衷。但反观国内的BI市场,很多客户匆匆上马数据仓库和BI项目,但早期却没有意识到随着数据规模的扩大,未来可能出现的严重系统瓶颈。这些瓶颈直接影响报表生成的效率。数据库一体机看似能够解决客户问题,但是随之而来也是高昂的设备价格,并直接影响客户IT部门在整个公司的公信力。在不追加硬件投资的前提下,使用内存数据库,并对现有的系统进行一定量的改造,可以在很大程度上解决这一问题:
内存数据库的几个典型应用场景
在现有系统的基础上,将内存数据库部署在应用/BI系统的服务器上,或者在资金充足的情况下额外配置一层数据加速层。值得注意的是,这样的部署方式需要对应用/BI系统的工作流程非常熟悉,并按照特定的逻辑规则人为划分数据的路由方式,从而达到专用数据专门集中,让每个应用系统在自己的相应的硬件资源下专有的运行各自的OLAP。如果能够顺利的进行业务梳理并部署,这样的架构不但能解决现有系统瓶颈,而且能够清晰的梳理业务流程,为将来系统的扩容提供方便。

Statement
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
MySQL String Types: Storage, Performance, and Best PracticesMySQL String Types: Storage, Performance, and Best PracticesMay 10, 2025 am 12:02 AM

MySQLstringtypesimpactstorageandperformanceasfollows:1)CHARisfixed-length,alwaysusingthesamestoragespace,whichcanbefasterbutlessspace-efficient.2)VARCHARisvariable-length,morespace-efficientbutpotentiallyslower.3)TEXTisforlargetext,storedoutsiderows,

Understanding MySQL String Types: VARCHAR, TEXT, CHAR, and MoreUnderstanding MySQL String Types: VARCHAR, TEXT, CHAR, and MoreMay 10, 2025 am 12:02 AM

MySQLstringtypesincludeVARCHAR,TEXT,CHAR,ENUM,andSET.1)VARCHARisversatileforvariable-lengthstringsuptoaspecifiedlimit.2)TEXTisidealforlargetextstoragewithoutadefinedlength.3)CHARisfixed-length,suitableforconsistentdatalikecodes.4)ENUMenforcesdatainte

What are the String Data Types in MySQL?What are the String Data Types in MySQL?May 10, 2025 am 12:01 AM

MySQLoffersvariousstringdatatypes:1)CHARforfixed-lengthstrings,2)VARCHARforvariable-lengthtext,3)BINARYandVARBINARYforbinarydata,4)BLOBandTEXTforlargedata,and5)ENUMandSETforcontrolledinput.Eachtypehasspecificusesandperformancecharacteristics,sochoose

How to Grant Permissions to New MySQL UsersHow to Grant Permissions to New MySQL UsersMay 09, 2025 am 12:16 AM

TograntpermissionstonewMySQLusers,followthesesteps:1)AccessMySQLasauserwithsufficientprivileges,2)CreateanewuserwiththeCREATEUSERcommand,3)UsetheGRANTcommandtospecifypermissionslikeSELECT,INSERT,UPDATE,orALLPRIVILEGESonspecificdatabasesortables,and4)

How to Add Users in MySQL: A Step-by-Step GuideHow to Add Users in MySQL: A Step-by-Step GuideMay 09, 2025 am 12:14 AM

ToaddusersinMySQLeffectivelyandsecurely,followthesesteps:1)UsetheCREATEUSERstatementtoaddanewuser,specifyingthehostandastrongpassword.2)GrantnecessaryprivilegesusingtheGRANTstatement,adheringtotheprincipleofleastprivilege.3)Implementsecuritymeasuresl

MySQL: Adding a new user with complex permissionsMySQL: Adding a new user with complex permissionsMay 09, 2025 am 12:09 AM

ToaddanewuserwithcomplexpermissionsinMySQL,followthesesteps:1)CreatetheuserwithCREATEUSER'newuser'@'localhost'IDENTIFIEDBY'password';.2)Grantreadaccesstoalltablesin'mydatabase'withGRANTSELECTONmydatabase.TO'newuser'@'localhost';.3)Grantwriteaccessto'

MySQL: String Data Types and CollationsMySQL: String Data Types and CollationsMay 09, 2025 am 12:08 AM

The string data types in MySQL include CHAR, VARCHAR, BINARY, VARBINARY, BLOB, and TEXT. The collations determine the comparison and sorting of strings. 1.CHAR is suitable for fixed-length strings, VARCHAR is suitable for variable-length strings. 2.BINARY and VARBINARY are used for binary data, and BLOB and TEXT are used for large object data. 3. Sorting rules such as utf8mb4_unicode_ci ignores upper and lower case and is suitable for user names; utf8mb4_bin is case sensitive and is suitable for fields that require precise comparison.

MySQL: What length should I use for VARCHARs?MySQL: What length should I use for VARCHARs?May 09, 2025 am 12:06 AM

The best MySQLVARCHAR column length selection should be based on data analysis, consider future growth, evaluate performance impacts, and character set requirements. 1) Analyze the data to determine typical lengths; 2) Reserve future expansion space; 3) Pay attention to the impact of large lengths on performance; 4) Consider the impact of character sets on storage. Through these steps, the efficiency and scalability of the database can be optimized.

See all articles

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

mPDF

mPDF

mPDF is a PHP library that can generate PDF files from UTF-8 encoded HTML. The original author, Ian Back, wrote mPDF to output PDF files "on the fly" from his website and handle different languages. It is slower than original scripts like HTML2FPDF and produces larger files when using Unicode fonts, but supports CSS styles etc. and has a lot of enhancements. Supports almost all languages, including RTL (Arabic and Hebrew) and CJK (Chinese, Japanese and Korean). Supports nested block-level elements (such as P, DIV),

MantisBT

MantisBT

Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

Atom editor mac version download

Atom editor mac version download

The most popular open source editor

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use