一.Greenplum背景 时间回到2002年,互联网行业经过近10年的发展,数据量正处于快速增长期: 1.传统的主机计算模式在海量数据面前,除了造价昂贵外,在CPU计算和IO吞吐上不能满足海量数据的计算需求: 2.传统数据库大多基于SMP架,纵向扩容(scale-up)模式遇到了瓶颈. 3.分布式存储和分布式计算理论刚刚被提出来,Google的两篇著名论文关于GFS分布式文件系统和关于MapReduce 并行计算框架的理论引起业界的关注,分布式计算模式在互联网行业特别是收索引擎和分词检索等方面…
Greenplum是一种基于postgresql的分布式数据库.其采用shared nothing架构(MPP),主机,操作系统,内存,存储都是自我控制的,不存在共享.也就是每个节点都是一个单独的数据库.节点之间的信息交互是通过 节点互联网络实现.通过将数据分布到多个节点上来实现规模数据的存储,通过并行查询处理来提高查询性能. 这个怎么感觉就像是把小数据库组织起来,联合成一个大型数据库.将数据分片,存储在每个节点上.每个节点仅查询自己的数据.所得到的结果再经过主节点处理得到最终结果.通过增加节点…
大数据时代,一大技术特征是对海量数据采集.存储和分析的多组件解决方案.而其中对来自于传感器.APP的SDK和各类互联网应用的原生日志数据的采集存储则是基本中的基本.本系列文章将从0到1,概述一下搭建基于Kafka.Flume.Zookeeper.HDFS.Hive的海量数据分析系统的框架.核心应用和关键模块. 项目源代码存储于GitHub:源码 系统架构概述 本系列文章所介绍的数据分析系统,定位于一种通用的大数据分析系统,可用于电商.互联网和物联网的实际解决方案中.该应用主要解决从多种多样的互联…
简介及适用场景 如果想在数据仓库中快速查询结果,可以使用greenplum. Greenplum数据库也简称GPDB.它拥有丰富的特性: 第一,完善的标准支持:GPDB完全支持ANSI SQL 2008标准和SQL OLAP 2003 扩展:从应用编程接口上讲,它支持ODBC和JDBC.完善的标准支持使得系统开发.维护和管理都大为方便.而现在的 NoSQL,NewSQL和Hadoop 对 SQL 的支持都不完善,不同的系统需要单独开发和管理,且移植性不好. 第二,支持分布式事务,支持ACID.保…
简介及适用场景 如果想在数据仓库中快速查询结果,可以使用greenplum. Greenplum数据库也简称GPDB.它拥有丰富的特性: 第一,完善的标准支持:GPDB完全支持ANSI SQL 2008标准和SQL OLAP 2003 扩展:从应用编程接口上讲,它支持ODBC和JDBC.完善的标准支持使得系统开发.维护和管理都大为方便.而现在的 NoSQL,NewSQL和Hadoop 对 SQL 的支持都不完善,不同的系统需要单独开发和管理,且移植性不好. 第二,支持分布式事务,支持ACID.保…
DDD分层架构之值对象(介绍篇) 前面介绍了DDD分层架构的实体,并完成了实体层超类型的开发,同时提供了验证方面的支持.本篇将介绍另一个重要的构造块——值对象,它是聚合中的主要成分. 如果说你已经在使用DDD分层架构,但你却从来没有使用过值对象,这毫不奇怪,因为多年来养成的数据建模思维已经牢牢把你禁锢,以致于你在使用面向对象方式进行开发时,还是以数据为中心. 当我们完成了基本的需求分析以后,如果说需要进行设计,那么你能想到的就是数据库表及表关系的设计,这就是数据建模.数据建模的主要依据是数据库范…
数据库构架设计中主要有Shared Everthting.Shared Nothing.和Shared Disk: Shared Everthting:一般是针对单个主机,完全透明共享CPU/MEMORY/IO,并行处理能力是最差的,典型的代表SQLServer Shared Disk:各个处理单元使用自己的私有 CPU和Memory,共享磁盘系统.典型的代表Oracle Rac, 它是数据共享,可通过增加节点来提高并行处理的能力,扩展能力较好.其类似于SMP(对称多处理)模式,但是当存储器接口…
一.MPP,SMP,NUMA概念介绍 1.1.       MPP架构介绍 MPP (Massively Parallel Processing),大规模并行处理系统,这样的系统是由许多松耦合的处理单元组成的,要注意的是这里指的是处理单元而不是处理器.每个单元内的CPU都有自己私有的资源,如总线,内存,硬盘等.在每个单元内都有操作系统和管理数据库的实例复本.这种结构最大的特点在于不共享资源. 1.2.    SMP架构介绍 SMP (Symmetric Multi Processing),对称多…
github仓库主页介绍 名词解释: 工作区: 添加.编辑.修改文件等动作 暂存区: 暂存已经修改的文件,最后统一提交到git中 git(仓库): 最终确定的文件保存到仓库,成为一个新的版本,并且对他人可见 一.本地Git初始化及仓库创建和操作 1.基本信息设置 1)设置用户名 git config --global user.name "Your Name" 2)设置用户名邮箱 git config --global user.email "you@example.com&…
转自:http://blog.csdn.net/lhb_0531/article/details/8602139 私有代码存放仓库 BitBucket介绍及入门操作 分类: 研发管理2013-02-22 14:41 1291人阅读 评论(0) 收藏 举报 本文主要来自于萧_瑟BLOG  和牛仔的移动开发博客,并综合了多篇网上文章. 代码版本控制系统在局域网内Subvision用的比较多,但其局限性太多.在代码审查.异地合作等功能方面比较弱.目前比较出名的分布式版本控制系统有Bitbucket和G…
LAMP架构应用实战—Apache服务介绍与安装01   一:Apache是什么 Apache是Apache基金会开发的一个高性能.功能强大.安全可靠.灵活的开放源码的WEB服务软件 二:Apache的特点与应用场景 1.特点 功能强大.配置简单.速度快.应用广泛.性能稳定可靠,同时还可以做代理服务器或负载均衡 2.应用场景 ü  运行静态页面.图片(据说处理静态小文件能力不如nginx) ü  结合PHP引擎运行PHP等程序,LAMP组合 ü  结合tomcat.resin运行jsp.java…
SMP.NUMA.MPP体系结构介绍 从系统架构来看,目前的商用服务器大体可以分为三类,即对称多处理器结构 (SMP : Symmetric Multi-Processor) ,非一致存储访问结构 (NUMA : Non-Uniform Memory Access) ,以及海量并行处理结构 (MPP : Massive Parallel Processing) .它们的特征分别描述如下: 1. SMP(Symmetric Multi-Processor) SMP (Symmetric Multi…
前面介绍了DDD分层架构的实体,并完成了实体层超类型的开发,同时提供了验证方面的支持.本篇将介绍另一个重要的构造块——值对象,它是聚合中的主要成分. 如果说你已经在使用DDD分层架构,但你却从来没有使用过值对象,这毫不奇怪,因为多年来养成的数据建模思维已经牢牢把你禁锢,以致于你在使用面向对象方式进行开发时,还是以数据为中心. 当我们完成了基本的需求分析以后,如果说需要进行设计,那么你能想到的就是数据库表及表关系的设计,这就是数据建模.数据建模的主要依据是数据库范式设计,根据要求严格程度的递增分为…
之前另一篇文章也介绍了 Redis Cluster (link,在文章的后半部分) 今天看到这一篇,简单说一下(http://hot66hot.iteye.com/blog/2050676) 作者的目标:Redis Cluster will support up to ~1000 nodes. 赞... 目前redis支持的cluster特性(已测试): 1):节点自动发现 2):slave->master 选举,集群容错 3):Hot resharding:在线分片 4):集群管理:clust…
背景:对Maven私服一直想做个深入的总结,因为不了解,所以感觉很陌生. 转载地址:http://blog.csdn.net/catoop/article/details/62312477 常用功能和介绍 私服是什么? 私服,即私有服务器,是公司内部Maven项目需要通过其下载依赖包和插件的一个内部maven仓库.Nexus是常用的私用Maven服务器,一般是公司内部使用. 将自己的Maven项目指定到私服地址 从私服下载中央库的项目索引 从私服下载中央库的项目索引 将第三方项目jar上传到私服…
转自:http://mobile.51cto.com/others-308545.htm 本篇文章从PhoneGap由来.功能以及工作原理,力争由浅入深介绍PhoneGap框架.   为什么需要PhoneGap? 移动技术的发展对于开发人员来说是个悲剧,开发应用需顾及到不同平台的框架和开发语言,如iPhone.Android.Windows Mobile等. PhoneGap基于标准的Web技术,在Web应用和设备之间搭建一个通信的桥梁,封装移动设备的平台差异,统一使用JavaScript接口访…
mysql 的逻辑架构分为三层: 最上层的服务大多数基于网络的客户端.服务器的工具或者服务都有类似的架构,比如连接处理,授权认证.安全等 第二层架构:mysql的核心服务功能都在这一层,包括查询解析,分析,优化,缓存以及所有的内置函数,所有跨存储引擎的功能都在这一层实现:存储过程,触发器.视图 第三层:包含存储引擎.负责数据的存储和提取,innoDB是个例外,它会解析外键定义,因为mysql服务器本身没有实现该功能 连接管理与安全性: 当客户端连接到mysql服务器是,服务器需要对其进行认证,认…
Maven系列1 1.什么是Maven? Maven是一个项目管理工具,它包含了一个对象模型.一组标准集合,一个依赖管理系统.和用来运行定义在生命周期阶段中插件目标和逻辑. 核心功能 Maven的核心功能是合理叙述项目间的依赖关系,通俗点 就是通过pom.xml文件的配置获取jar包不用手动的去添加jar包,,这个pom.xml包我后面会叙述,不过已经学习过maven的 人应该对这个很熟悉.其本质就是通过配置pom.xml来获取jar包,当然这是在该项目必须是maven项目的前提下.那么什么是m…
背景 搭建一个适合公司erp业务的开发平台. 架构概要图:    流程引擎开发平台:  包含流程引擎设计器,流程管理平台,流程引擎服务.目前只使用单个数据库进行管理.  流程引擎设计器 采用silverlight进行开发,本质是对流程模型进行设计,并生成xml.包含:人工节点,自动节点,并行开始节点,并行结束节点,消息节点,文本节点.  示例模型定义图形:      示例模型定义xml: <?xml version="1.0" encoding="gb2312"…
一.处理数据的基本内容 数据分析 是指对数据进行控制.处理.整理.分析的过程. 在这里,“数据”是指结构化的数据,例如:记录.多维数组.Excel 里的数据.关系型数据库中的数据.数据表等. 二.说说 Python 这门语言 Python 是现在最受欢迎的动态编程语言之一(还有 Perl.Ruby 等).近些年非常流行用 Python 建站,比如流行的 Python Web 框架 Django. Python 这类语言被称为脚本语言,因为它们可以编写简短粗糙的小程序,即脚本.不过这好像在说 Py…
一直想写点Python的笔记了,今天就闲着无聊随便抄点,(*^__^*) 嘻嘻…… -------------------------------------------------------------------------------------- 数据分析的几大任务: 搜集:与外界进行交互,读写各种各样的文件格式和数据库 准备:对数据进行清理.休整.整合.规范化.重塑.切片切块.变形等处理以便进行分析. 建模和计算:将数据跟统计模型.机器学习算法或其它计算工具联系起来. 展示:创建交互…
一.storm与Hadoop对比 Hadoop: 全量数据处理使用的大多是鼎鼎大名的hadoop或者hive,作为一个批处理系统,hadoop以其吞吐量大.自动容错等优点,在海量数据处理上得到了广泛的使用. Hadoop下的Map/Reduce框架对于数据的处理流程是: 1. 将要处理的数据上传到Hadoop的文件系统HDFS中. 2. Map阶段 a)   Master对Map的预处理:对于大量的数据进行切分,划分为M个16~64M的数据分片(可通过参数自定义分片大小) b)   调用Mapp…
一.创建仓库 假如Responsitory name是Hello-World Description一栏中可以设置仓库的说明. Public, Private  在这一栏可以选择Public还是Private, 创建公开仓库,仓库里的所有内容都会被公开. Initializing this responsitory with a README 注:若想向github中添加手中已有的Git仓库,建议不要勾选 二.连接仓库 Github初始URL URL: https://github.com/用户…
一.Android 系统架构: 1. linux内核层Android 基于Linux内核,为Android设备的各种硬件提供底层驱动 比如: 显示驱动.音频.照相机.蓝牙.Wi-Fi驱动,电源管理等 2. 系统运行库层通过 C/C++库来为Android系统提供主要的特性支持, 如SQLite库提供了数据库层的支持. OpenGL|ES库提供了3D绘图的支持 Webkit库提供浏览器内核的支持 等这一层还有Android运行时库, 主要提供一些核心库,能够允许开发者使用JAVA来编写Androi…
常用模块 Python中的模块在使用的时候统一都是采用的句点符(.) # 就是模块名点方法的形式 import time time.time() import datetime datetime.datetime.today() time datetime random os sys pymysql import pymysql conn = pymysql.connect( host = '192.168.1.20', port = 3306, user = 'root', password…
本文作者康祥,华为云数据库内核开发工程师,研究生阶段主要从事SPARQL查询优化相关工作.目前在华为公司参与华为云GaussDB(for MySQL) HTAP只读内核功能设计和研发. 1. 引言 HTAP(Hybrid Transactional/Analytical Processing)这个词相信大家最近经常会听到,它能够同时支撑在线事务处理(On-Line Transactional Processing, 简称OLTP) 和在线数据分析 (On-Line Analytical Proc…
DataFrame 表格型的数据结构 创建DataFrame 可以通过传入dict的方式,DataFrame会自动加上索引,并且列会有序排列 data = {'state':['a', 'b', 'c']}, 'year':[2000, 1000, 2000], 'pop':[1.5, 1.6, 3.4]} frame = DataFrame(data) 可以指定列序列 DataFrame(data,columns = ['year', 'state', 'pop']) 如果传入的数据找不到,就…
Series Series由一组数据及索引组成 索引 采用默认索引 data = pd.Series([4, 3, 2, 1]) 自定义索引 data = pd.Series([4, 3, 2, 1],index = ['a', 'b', 'c', 'd']) 通过索引取值 data['a'] data[['a', 'd']] 通过赋值修改索引 data.index = ['e', 'f', 'g', 'h'] name属性 data.name data.index.name 运算 布尔运算 d…
前言 Numpy Numpy是科学计算的基础包,对数组级的运算支持较好 pandas pandas提供了使我们能够快速便捷地处理结构化数据的大量数据结构和函数.pandas兼具Numpy高性能的数组计算功能以及电子表格和关系型数据(如SQL)灵活的数据处理能力,处理上千万的大数据易于反掌.对于金融行业的用户,pandas提供了大量适用于金融数据的高性能时间序列功能和工具.DataFrame是pandas的一个对象,它是一个面向列的二维表结构,且含有行标和列标. DataFrame是pandas的…
怎样删除list中空字符? 最简单的方法:new_list = [ x for x in li if x != '' ] 这一部分主要学习pandas中基于前面两种数据结构的基本操作. 设有DataFrame结果的数据a如下所示: a b c one 4 1 1 two 6 2 0 three 6 1 6 一.查看数据(查看对象的方法对于Series来说同样适用) 1.查看DataFrame前xx行或后xx行a=DataFrame(data);a.head(6)表示显示前6行数据,若head()…