仓酷云

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 767|回复: 14
打印 上一主题 下一主题

[学习教程] 来看Java开辟2.0: 利用Hibernate Shards举行切分

[复制链接]
爱飞 该用户已被删除
跳转到指定楼层
楼主
发表于 2015-1-18 11:28:51 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有帐号?立即注册

x
首先第一点:jsp,servlet,javabean这些最基本的,嘿嘿,就算你是高手的话,在大行的企业级应用的话还是需要框架的,一个好的框架确实能构解决许多问题。
当干系数据库试图在一个单一表中存储数TB的数据时,总功能常常会下降。明显,对一切数据编索引不但关于读并且关于写都很耗时。由于NoSQL数据商铺特别合适存储年夜型数据(如Google的Bigtable),明显NoSQL是一种非干系数据库办法。关于偏向于利用ACID-ity和实体布局干系数据库的开辟职员及必要这类布局的项目来讲,切分是一个使人奋发的可选办法。
切分是数据库分区的一个分支,可是它不是当地数据库手艺—切分产生在使用程序级别。在各类切分完成中,HibernateShards是Java™手艺天下中最受接待的一个。这个天真尽妙的项目可让您利用映照至逻辑数据库的POJO对切分数据集举行几近无缝操纵(我将鄙人文扼要先容“几近”的缘故原由)。利用HibernateShards时,您不必将您的POJO出格映照至切分—您能够像利用Hibernate办法对任何罕见干系数据库举行映照时一样对其举行映照。HibernateShards能够为您办理初级其余切分义务。
到今朝为止,在本系列中,我已利用了一个基于竞赛和参赛者类推干系的复杂域展现了各类数据库存储手艺。本月,我将持续利用这个熟习的示例先容一种有用的切分手艺,然后在HibernateShards中对其举行完成。注重:与切分相干的次要事情与Hibernate没有太年夜干系;现实上,HibernateShards的编码事情对照复杂。个中关头的部分在于判别怎样举行切分和对甚么举行切分。
关于本系列
自Java手艺初次出生以来,Java开辟格式已产生了天翻地覆的变更。得益于成熟的开源框架和牢靠的租赁部署基本举措措施,如今能够敏捷而经济地组装、测试、运转和保护Java使用程序。在本系列中,AndrewGlover探究使这类新的Java开辟作风成为大概的各类手艺和工具。
切分简介
数据库切分是一个固有的干系流程,能够经由过程一些逻辑数据块将一个表的行分为分歧的小组。比方,假如您正在依据工夫戳对一个名为foo的超年夜型表举行分区,2010年8月之前的一切数据都将进进分区A,而以后的数据则全体进进分区B。分区能够加速读写速率,由于它们的方针是独自分区中的较小型数据集。
分区功效其实不老是可用的(MySQL直到5.1版本后才撑持),并且其必要的贸易体系的本钱也让人望而生畏。更主要的是,年夜部分分区完成在统一个物理机上存储数据,以是遭到硬件基本的影响。除此以外,分区也不克不及判别硬件的牢靠性大概说缺少牢靠性。因而,良多伶俐的人们入手下手寻觅举行伸缩的新办法。
切分本色上是数据库级其余分区:它不是经由过程数据块支解数据表的行,而是经由过程一些逻辑数据元素对数据库自己举行支解(一般跨分歧的盘算机)。也就是说,切分不是将数据表支解成小块,而是将全部数据库支解成小块。
切分的一个典范示例是基于依据地区对一个存储天下局限客户数据的年夜型数据库举行支解:切分A用于存储美国的客户信息,切分B用户存储亚洲的客户信息,切分C欧洲,等。这些切分分离处于分歧的盘算机上,且每一个切分将存储一切相干数据,如客户喜欢或订购汗青。
切分的优点(如分区一样)在于它能够紧缩年夜型数据:独自的数据表在每一个切分中绝对较小,如许就能够撑持更疾速的读写速率,从而进步功能。切分还能够改良牢靠性,由于即使一个切分不测生效,其他切分仍旧能够服务数据。并且由于切分是在使用程序层面举行的,您能够对不撑持惯例分区的数据库举行切分处置。资金本钱较低一样也是一个潜伏上风。
切分和战略
像良多其他手艺一样,举行切分时也必要作出部分让步。由于切分不是一项当地数据库手艺—也就是说,必需在使用程序中完成—在入手下手切分之前必要制订出您的切分战略。举行切分时主键和跨切分查询都饰演主要脚色,次要经由过程界说您不成以做甚么完成。
主键
切分使用多个数据库,个中一切数据库都自力起感化,不干与其他切分。因而,假如您依附于数据库序列(如主动主键天生),很有大概在一个数据库会合将呈现统一个主键。能够跨散布式数据库和谐序列,可是如许会增添体系的庞大水平。制止不异主键最平安的办法就是让使用程序(使用程序将办理切分体系)天生主键。
跨切分查询
年夜部分切分完成(包含HibernateShards)不撑持跨切分查询,这就意味着,假如您想使用分歧切分的两个数据集,就必需处置分外的长度。(风趣的是,Amazon的SimpleDB也克制跨域查询)比方,假如将美国客户信息存储在切分1中,还必要将一切相干数据存储在此。假如您实验将那些数据存储在切分2中,情形就会变得庞大,体系功能也大概受影响。这类情形还与之条件到的一点有关—假如您由于某种缘故原由必要举行跨切分毗连,最好接纳一种能够打消反复的体例办理键!
很分明,在创建数据库前必需周全思索切分战略。一旦选择了一个特定的偏向以后,您差未几就被它绑定了—举行切分后很难任意挪动数据了。
制止不成熟切分
切分最幸亏前期完成。如不成熟优化一样,基于预期数据增加的切分多是劫难的温床。乐成的切分完成基于关于使用程序数据随工夫增加的了解,和以后关于将来的揣度。一旦对数据举行切分后,挪动数据会十分坚苦。
<p>
主要缺点就是:速度比较慢,没有C和C++快
兰色精灵 该用户已被删除
沙发
发表于 2015-1-21 07:46:33 来自手机 | 只看该作者
不过,每次的执行编译后的字节码需要消耗一定的时间,这同时也在一定程度上降低了 Java 程序的运行效率。
简单生活 该用户已被删除
板凳
发表于 2015-1-24 15:31:10 | 只看该作者
是一种语言,用以产生「小应用程序(Applet(s))
admin 该用户已被删除
地板
发表于 2015-1-25 11:29:39 | 只看该作者
Java是一个纯的面向对象的程序设计语言,它继承了 C++语言面向对象技术的核心。Java舍弃了C ++语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)
活着的死人 该用户已被删除
5#
发表于 2015-2-2 21:55:11 | 只看该作者
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
飘灵儿 该用户已被删除
6#
发表于 2015-2-2 21:58:29 | 只看该作者
是一种由美国SUN计算机公司(Sun Microsystems, Inc.)所研究而成的语言
透明 该用户已被删除
7#
发表于 2015-2-5 06:15:54 | 只看该作者
学Java必读的两个开源程序就是Jive和Pet Store.。 Jive是国外一个非常著名的BBS程序,完全开放源码。论坛的设计采用了很多先进的技术,如Cache、用户认证、Filter、XML等,而且论坛完全屏蔽了对数据库的访问,可以很轻易的在不同数据库中移植。论坛还有方便的安装和管理程序,这是我们平时编程时容易忽略的一部份(中国程序员一般只注重编程的技术含量,却完全不考虑用户的感受,这就是我们与国外软件的差距所在)。
爱飞 该用户已被删除
8#
 楼主| 发表于 2015-2-6 14:29:19 | 只看该作者
你可以去承接一些项目做了,一开始可能有些困难,可是你有技术积累,又考虑周全,接下项目来可以迅速作完,相信大家以后都会来找你的,所以Money就哗啦啦的。。。。。。
分手快乐 该用户已被删除
9#
发表于 2015-2-10 22:39:51 | 只看该作者
你现在最缺的是实际的工作经验,而不是书本上那些凭空想出来的程序。
只想知道 该用户已被删除
10#
发表于 2015-2-13 06:25:05 | 只看该作者
Java 编程语言的风格十分接近C、C++语言。
若天明 该用户已被删除
11#
发表于 2015-3-3 06:51:19 | 只看该作者
Java自面世后就非常流行,发展迅速,对C++语言形成了有力冲击。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台
柔情似水 该用户已被删除
12#
发表于 2015-3-6 21:15:21 | 只看该作者
还好,SUN提供了Javabean可以把你的JSP中的 Java代码封装起来,便于调用也便于重用。
13#
发表于 2015-3-7 15:41:24 | 只看该作者
当然你也可以参加一些开源项目,一方面可以提高自己,另一方面也是为中国软件事业做贡献嘛!开发者在互联网上用CVS合作开发,用QQ,MSN,E-mail讨论联系,天南海北的程序员分散在各地却同时开发同一个软件,是不是很有意思呢?
小魔女 该用户已被删除
14#
发表于 2015-3-15 07:41:18 | 只看该作者
Java 编程语言的风格十分接近C、C++语言。
第二个灵魂 该用户已被删除
15#
发表于 2015-3-21 20:55:23 | 只看该作者
科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|仓酷云 鄂ICP备14007578号-2

GMT+8, 2024-9-20 10:39

Powered by Discuz! X3.2

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表