数据库集群

【巨杉数据库SequoiaDB】巨杉Tech | 四步走,快速诊断数据库集群状态

六月ゝ 毕业季﹏ 提交于 2019-12-04 20:21:09
1.背景 SequoiaDB 巨杉数据库是一款金融级分布式数据库,包括了分布式 NewSQL、分布式文件系统与对象存储、与高性能 NoSQL 三种存储模式,分别对应分布式在线交易、非结构化数据和内容管理、以及海量数据管理和高性能访问场景。 集群一般会使用三副本方式以确保数据安全。假若集群发生因硬件故障等原因导致的节点故障或集群异常,数据库管理员应进行系统的分析和诊断,以确保集群正常工作,不会影响用户的正常使用。本文将与大家分享一下基本的 SequoiaDB 数据库诊断方法。 数据库集群诊断 1)确定 SequoiaDB 的安装路径 如果用户刚接触全新的 SequoiaDB 环境,可以通过 cat /etc/default/sequoiadb 命令查看数据库安装路径。 cat tc/default/sequoiadb NAME=sdbcm SDBADMIN_USER=sdbadmin INSTALL_DIR=/opt/sequoiadb INSTALL_DIR即 SequoiaDB 的安装路径。 2)列出集群节点信息 【检查办法】 切换到数据库安装用户(默认为sdbadmin用户),查看节点信息和全部节点。 $ sdblist -l $ sdblist -t all 从左到右依次为SvcName(节点名称)、Role(角色名称分为:编目节点、协调节点和数节点)、PID(进程号)

PostgresSQL HA高可用架构实战

廉价感情. 提交于 2019-12-04 15:22:13
PostgresSQL HA高可用架构实战 原创 2015-09-25 萧少聪 高可用架构 本文由萧少聪在高可用架构群所做的分享整理而来,转载请注明高可用架构公众号:ArchNotes。 萧少聪(花名:铁庵),广东中山人,阿里云RDS for PostgreSQL/PPAS云数据库产品经理。自2006年以来,长期从事RedHat及SuSE Linux的HA集群搭建及PostgreSQL数据库支持工作。2011年开始组建Postgres(数据库)中国用户会。 PostgreSQL背景介绍 有不少同学希望了解PostgreSQL的背景及它与MySQL的对比结果,所以在此啰唆两句,有兴趣的同学可以单独给我发E-Mail,我可以分享详细的介绍及一些对比结果。 2015年是PostgreSQL正式在中国起步的一年,我们看到越来越多的企业选择了PostgreSQL。 中国移动主动使用PostgreSQL实现分布式数据库架构。 金融业方面平安集团明确表示将使用PostgreSQL作为新一代数据库的选型。 华为中兴纷纷加入PostgreSQL内核研究队伍。 阿里云正式提供PostgreSQL服务。 大部分人了解MySQL应该都是从2005年左右开始,那时在互联网带动下LAMP空前繁荣。而你所不知道的是,那时PostgreSQL已发展了近30年,至今已经超过40年

redis原理及应用

大兔子大兔子 提交于 2019-12-04 07:01:19
一、redis来源 二、数据类型 三、主流的应用场景 四、特性 五、补充 一、 redis来源 redis作者:Salvatore Sanfilippo (antirez),男,意大利人. 需求:一个访客信息追踪网站,网站可以通过JavaScript脚本,将访客的IP地址、所属国家、阅览器信息、被访问页面的地址等数据传送给LLOOGG. com。然后LLOOGG.com会将这些浏览数据通过web页面实时地展示给用户,并储存起最新的5至10,000条浏览记录以便进行查阅。 redis解决方案 每当某个被追踪的网站新增一条浏览记录时,LLOOGG.com就会将这条新的浏览记录推入(push)到与该网站相对应的列表里面,当列表的长度超过用户指定的最大长度时,程序每向列表推入一条新的记录,就需要从列表中弹出(pop)一条最旧的记录。 现在已经被广泛使用: Twitter使用Redis来储存用户时间线(user timeline)。 StackOverflow使用Redis来进行缓存和消息分发。 Pinterest使用Redis来构建关注模型(follow model)和兴趣图谱(interest graph)。 Flickr使用Redis来构建队列。 Github使用Redis作为持久化的键值对数据库,并使用Resque来实现消息队列。 新浪微博使用Redis来实现计数器、反向索引、排行榜

Quartz学习笔记:集群部署

℡╲_俬逩灬. 提交于 2019-12-04 06:10:24
Quartz学习笔记:集群部署 集群原理   一个 Quartz集群中的每个节点是一个独立的Quartz应用 ,它又管理着其他的节点。这就意味着你必须对每个节点分别启动或停止。Quartz集群中,独立的Quartz节点并不与另一其的节点或是管理节点通信,而是 通过同一个数据库表来感知到另一Quartz应用的 。    相关数据库表   因为Quartz集群依赖于数据库,所以 必须首先创建Quartz数据库表 ,Quartz发布包中包括了所有被支持的数据库平台的SQL脚本。这些SQL脚本存放于<quartz_home>/docs/dbTables 目录下。这里采用的Quartz 1.8.4版本,总共12张表,不同版本,表个数可能不同。    下载地址: http://www.quartz-scheduler.org/downloads/ 来源: https://www.cnblogs.com/MrSaver/p/11835374.html

es和数据库关系对比

你说的曾经没有我的故事 提交于 2019-12-03 16:56:04
es类比传统关系型数据库: Relational DB -> Databases -> Tables -> Rows -> Columns Elasticsearch -> Indices -> Types -> Documents -> Fields Elasticsearch集群可以包含多个索引(indices)(数据库),每一个索引可以包含多个类型(types)(表), 每一个类型包含多个文档(documents)(行),然后每个文档包含多个字段(Fields)(列)。 来源: https://www.cnblogs.com/guangxiang/p/11803491.html

MySQL数据库分库分表策略

天大地大妈咪最大 提交于 2019-12-03 15:11:36
第1章 引言 随着互联网应用的广泛普及,海量数据的存储和访问成为了系统设计的瓶颈问题。对于一个大型的互联网应用,每天几十亿的PV无疑对数据库造成了相当高的负载。对于系统的稳定性和扩展性造成了极大的问题。通过数据切分来提高网站性能,横向扩展数据层已经成为架构研发人员首选的方式。 水平切分数据库:可以降低单台机器的负载,同时最大限度的降低了宕机造成的损失; 负载均衡策略:可以降低单台机器的访问负载,降低宕机的可能性; 集群方案:解决了数据库宕机带来的单点数据库不能访问的问题; 读写分离策略:最大限度了提高了应用中读取数据的速度和并发量; 第2章 基本原理和概念 什么是数据切分 "Shard" 这个词英文的意思是"碎片",而作为数据库相关的技术用语,似乎最早见于大型多人在线角色扮演游戏中。"Sharding" 姑且称之为"分片"。Sharding 不是一个某个特定数据库软件附属的功能,而是在具体技术细节之上的抽象处理,是水平扩展(Scale Out,亦或横向扩展、向外扩展)的解决方案, 其主要目的是为突破单节点数据库服务器的 I/O 能力限制,解决数据库扩展性问题。 通过一系列的切分规则将数据水平分布到不同的DB或table中,在通过相应的DB路由或者table路由规则找到需要查询的具体的DB或者table,以进行Query操作。“sharding”通常是指“水平切分”

浅谈高性能数据库集群——读写分离

半城伤御伤魂 提交于 2019-12-03 04:48:14
本文主要介绍高性能数据库集群读写分离相关理论,基本架构,涉及的复杂度问题以及常见解决方案。 1 读写分离概述 基本架构图: 2 适用场景 读写分离不是银弹,并不是一有性能问题就上读写分离 ,而是应该先优化,例如优化慢查询,调整不合理的业务逻辑,引入缓存查询等只有确定系统没有优化空间后才考虑读写分离集群 3 引入的系统复杂度问题 问题一 主从复制延迟 问题二 分配机制 如何将读写操作区分开来,然后访问不同的数据库服务器? 解决方案 1 客户端程序代码封装实现 基本架构图 业界开源实现 Sharding-JDBC 定位为轻量级 Java 框架,在 Java 的 JDBC 层提供的额外服务。 它使用客户端直连数据库,以 jar 包形式提供服务,无需额外部署和依赖,可理解为增强版的 JDBC 驱动,完全兼容 JDBC 和各种 ORM 框架。 淘宝 TDDL 淘宝根据自身业务需求研发了 TDDL ( Taobao Distributed Data Layer )框架,主要用于解决 分库分表场景下的访问路由(持久层与数据访问层的配合)以及异构数据库之间的数据同步 ,它是一个基于集中式配置的 JDBC DataSource 实现,具有分库分表、 Master/Salve 、动态数据源配置等功能。 解决方案 2 服务端中间件封装 基本架构图 业界开源实现 MySQL 官方推荐的 MySQL

从0开始搭建SQL Server AlwaysOn 第三篇(配置AlwaysOn)

生来就可爱ヽ(ⅴ<●) 提交于 2019-12-03 02:27:34
这一篇是从0开始搭建SQL Server AlwaysOn 的第三篇,这一篇才真正开始搭建AlwaysOn,前两篇是为搭建AlwaysOn 做准备的 步骤 这一篇依然使用step by step的方式介绍怎麽搭建AlwaysOn 请先使用本地用户Administrator登录这两个集群节点并执行下面的操作,先不要用域用户DCADMIN登录 1、两个集群节点都需先安装.NET Framework 3.5(在Windows Server 2012 R2中使用添加功能来安装)。 2、各个集群节点本地都要准备好相关软件,在各个节点上独立安装SQL Server 2012(不能使用群集方式安装),保证各个节点中使用相同的安装目录结构和排序规则! 选择全新SQL Server独立安装,不要选择新的SQL Server故障转移集群安装 至于安装过程,默认下一步下一步就可以了,跟单机安装SQL Server没有区别,这里就忽略安装过程了 注意:因为本人的安装包已经 自带SP1补丁包 ,为了后续避免踩坑,如果没有安装SP1或以上补丁包的,请先安装 注意:如果一开始使用域用户DCADMIN来登录集群节点机器,并安装SQL Server的时候会遇到一个坑,SQL Server安装程序会连接故障转移集群,但是实际上单机安装SQL Server根本不需要连接故障转移集群 本人排查了很久都找不到原因

redis 集群,分布式

匿名 (未验证) 提交于 2019-12-03 00:44:02
其他方案: http://www.infoq.com/cn/news/2014/11/open-source-redis-cache?utm_source=infoq&utm_medium=related_content_link&utm_campaign=relatedContent_articles_clk http://haiziwoainixx.iteye.com/blog/2087154 分布式锁: http://blog.csdn.net/u013970991/article/details/52722680 主从复制,读写分离 从库作为读库,主库作为写库(默认),实现自动同步,实现冗余备份,读写分离 redis-server --port 6380 --slaveof 127.0.0.1 6379 或者运行时使用命令:slaveof ip port 停止作为从库 slaveof no one 查看主从信息:info replication 登录从库查看:redis-server ―port port redis-cli -p port 从数据登录有密码的主库:从库配置文件设置masterauth 过程: 从数据库启动时,发送SYNC给主库,主库收到命令会保存快照,在保存快照期间的命令缓存,完成后,主库把欢唱和快照发给从库(从网络直接发送,不经过硬盘,需要手动开启)

Redis常见问题总结

匿名 (未验证) 提交于 2019-12-03 00:43:02
【本文内容来自网络总结】 Redis是一个开源、高性能、基于键值对的缓存与存储系统。 劣势:Redis是单线程,Memcached是多线程,在多核服务器上后者的性能理论上会更高一些。 优势:随着Redis3.0的推出,标志着memcache的所有功能都已经成了Redis的子集。同时Redis对集群的支持使得Memcache原有的第三方集群工具不再成为优势。因此,在新项目中使用Redis替代Memcache将会是非常好的选择。 (1)字符串类型 (Key-Value) 使用最多的类型 (2)散列类型 (Hash) 适合存储对象 (3)列表类型 (List) (4)集合类型 (Set) (5)有序集合类型 (Zset) 内存 Remote Dictionary Server(远程数据服务) 共六种数据淘汰策略。(分三类) 一、从已设置过期的数据集 (1)volatile-lru:从已设置过期时间的数据集中,选择最近最少使用的数据淘汰 (2)volatile-ttl:从已设置过期时间的数据集中,选择将要过期的数据淘汰 (3)volatile-random:从已设置过期时间的数据集中,任意选择数据淘汰 二、从整体数据集 (4)allkeys-lru:从全数据集中,选择最近最少使用的数据淘汰 (5)allkeys-random:从全数据集中任意选择数据淘汰 三、驱逐(默认策略-直接返回错误)