nosql

如何协助企业IT架构转型

旧街凉风 提交于 2021-01-14 02:37:10
企业IT基础架构的重新平台化是不小的任务,重新平台化通常是由一组不断变化的关键业务驱动因素引发的,简而言之,就是目前支持企业业务的平台不能再处理和推动业务发展所需的工作负载。 数字化转型的核心是数据,数据已经成为商业中最有价值的货币。由于格式不兼容、传统数据库的局限性以及无法灵活地合并来自多个来源的数据,企业长期以来一直受到其使用数据的困扰,而新技术则可以解决这一困境。 改善软件部署模式是消除数据使用障碍的一个主要方面,更高的“数据灵活性”是需要更灵活的数据库和更具可扩展性的实时流式传输平台。目前想要为企业提供灵活的实时“数据结构”需要至少七种基础技术的相互结合。 与原先技术不同,这七种技术能够扩展以满足很多用户和用例的需求,对于企业而言,能够实现更快、更明智的决策并创造更好的用户体验。 1. NoSQL数据库 RDBMS在数据库市场上占据了近30年的主导地位。但是,面对数据量的不断增长以及数据处理速度的加快,传统关系数据库已经显示出不足。NoSQL数据库由于其速度和扩展能力而渐渐崭露头角。就文档数据库而言,从软件工程的角度提供了一个更简单的模型。这种更简单的开发模式可加快产品上市速度,并帮助企业更快响应客户和内部用户的需求。 2.实时流媒体平台 实时响应客户对客户体验至关重要。在过去的10年中,面向消费者的行业经历了巨大的破坏,这与公司对用户实时作出反应的能力不无关系。

Redis-String(字符串)

ε祈祈猫儿з 提交于 2021-01-13 12:44:04
String(字符串) 前言 概括 1、append,strlen 2、 incr ,decr ,incrby设置自增步长,decrby 3、getrange截取字符串,SETRANGE将指定位置字符 替换为 指定字符串 4、setex ,setnx 5、mset mget 同时设置多个值,msetnx原子性操作 6、用字符串 保存对象 7、getset 先get然后在set 前言 提示:本文章是日常学习内容的总结,并非全部原创;仅供大家参考借鉴,并无其他商业用途。Bilibili搜索关注:狂神说 真正在公司中的实践:NoSQL + RDBMS 一起使用才是最强的,阿里巴巴的架构演进! 技术没有高低之分,就看你如何去使用!(提升内功,思维的提高!) 云计算的长征之路:阿里云的这群疯子 概括 String类似的使用场景:value除了是我们的字符串还可以是我们的数字! 使用场景: 计数器 统计多单位的数量 粉丝数 对象缓存存储! 1、append,strlen 127.0 .0 .1 : 6379 > set key1 v1 # 设置值 OK 127.0 .0 .1 : 6379 > APPEND key1 "hello" # 追加字符串,如果当前key不存在,就相当于setkey ( integer ) 7 127.0 .0 .1 : 6379 > get key1

大数据时代的结构化存储--HBase

冷暖自知 提交于 2021-01-13 08:54:06
迄今,相信大家肯定听说过 HBase,但是对于 HBase 的了解可能仅仅是它是 Hadoop 生态圈重要的一员,是一个大数据相关的数据库技术。 今天我带你们一起领略一下 HBase 体系架构,看看它是如何大规模处理海量数据。 一、什么是 HBase? 关于 HBase 的实现,是基本遵循 Bigtable 的论文。HBase 是一个面向列的分布式数据库,也是个非关系型数据库系统(NoSQL),它建立在 Hadoop 文件系统之上。面向列的数据库是将数据表存储为数据列的一部分而不是数据行的数据库。 HBase 是一个分布式,持久,严格一致的存储系统,具有接近最佳的写入 I / O 通道饱和度和出色的读取性能。而且 HBase 只考虑单个索引,类似于 RDBMS 中的主键,提供服务器端实现灵活的二级索引解决方案。 二、为什么使用 HBase? HBase 是 Hadoop 生态圈中重要的一环,用于存储,管理和处理数据。我们知道 Hadoop HDFS 是无法处理高速随机写入和读取,也无法在不重写文件的情况下对文件进行修改。HBase 正好解决了 HDFS 的缺点,因为它使用优化的方式快速随机写入和读取。此外,随着数据呈指数增长,关系数据库无法提供更好性能去处理海量的数据。HBase提供可扩展性和分区,以实现高效的存储和检索。 三、HBase 体系架构 我们先来看看 HBase

数据库--概念

◇◆丶佛笑我妖孽 提交于 2021-01-09 05:41:48
一、概述  数据库(database,简称DB)   简单的说, 数据库 就是一个存放数据的仓库,这个仓库是按照一定的数据结构(数据结构是指数据的组织形式或数据之间的联系)来组织、存储的,我们可以通过数据库提供的多种方法来管理数据库里的数据。更简单的形象理解,数据库和我们生活中存放杂物的仓库性质一样,区别只是存放的东西不同。  数据库表(table)   数据表是关系数据库中一个非常重要的对象,是其它对象的基础,也是一系列二维数组的集合,用来存储、操作数据的逻辑结构。根据信息的分类情况。一个数据库中可能包含若干个数据表,每张表是由行和列组成,记录一条数据,数据表就增加一行,每一列是由字段名和字段数据集合组成,列被称之为字段,每一列还有自己的多个属性,例如是否允许为空、默认值、长度、类型、存储编码、注释等.例如  数据(data)   存储在表中的信息就叫做数据。  数据库系统有3个主要的组成部分   1.数据库(Database System):用于存储数据的地方。   2.数据库管理系统(Database Management System, DBMS):用户管理数据库的软件。   3.数据库应用程序(Database Application):为了提高数据库系统的处理能力所使用的管理数据库的软件补充。    数据库的发展史(五个阶段)   1.文件系统      

开发运维视角下,影响软件高可扩展性的6个因素

落花浮王杯 提交于 2021-01-08 11:41:52
<section id="nice" data-tool="mdnice编辑器" data-website="https://www.mdnice.com" style="font-size: 16px; color: black; padding: 0 10px; line-height: 1.6; word-spacing: 0px; letter-spacing: 0px; word-break: break-word; word-wrap: break-word; text-align: left; font-family: Optima-Regular, Optima, PingFangSC-light, PingFangTC-light, 'PingFang SC', Cambria, Cochin, Georgia, Times, 'Times New Roman', serif;"><p data-tool="mdnice编辑器" style="font-size: 16px; padding-top: 8px; padding-bottom: 8px; margin: 0; line-height: 26px; color: black;">软件可扩展性是一个有趣的话题。实现软件可扩展性涉及很多因素,我们在本文将讨论一些与开发和运维方面相关的因素。</p> <p

Memcache详细介绍

给你一囗甜甜゛ 提交于 2021-01-08 08:56:43
MemCache是什么? MemCache是一个自由、源码开放、高性能、分布式的分布式内存对象缓存系统,用于动态Web应用以减轻数据库的负载。 它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高了网站访问的速度。 MemCaChe是一个存储键值对的HashMap,在内存中对任意的数据(比如字符串、对象等)所使用的key-value存储,数据可以来自数据库调用、API调用,或者页面渲染的结果。MemCache设计理念就是小而强大,它简单的设计促进了快速部署、易于开发并解决面对大规模的数据缓存的许多难题,而所 开放的API 使得MemCache能用于Java、C/C++/C#、Perl、Python、PHP、Ruby等大部分流行的程序语言。 另外,说一下MemCache和MemCached的区别: 1、MemCache是应用的名称; 2、MemCached是MemCache服务器端可执行文件的名称, 后面的那个d是daemon的意思,守护进程; MemCache的官方网站为 http://memcached.org/ MemCache访问模型 为了加深理解,我模仿着原阿里技术专家李智慧老师《大型网站技术架构 核心原理与案例分析》一书MemCache部分,自己画了一张图: 特别澄清一个问题,MemCache虽然被称为“分布式缓存”,但是MemCache本身完全不具备分布式的功能

分布式架构--基本思想汇总

心已入冬 提交于 2021-01-08 08:55:47
在互联网大行其道的今天,各种分布式系统已经司空见惯。搜索引擎、电商网站、微博、微信、O2O平台。。凡是涉及到大规模用户、高并发访问的,无一不是分布式。 关于分布式系统,并没有一个标准答案,说某某架构一定是最好的。不同的业务形态所面对的挑战不一样,使用的架构设计也不一样,通常都需要具体业务具体分析。 但不管那种业务,不管何种分布式系统,有一些基本的思想还是相通的。本文将对这些基本思想进行一个梳理汇总。 分拆 系统分拆 微信的架构师说过一句话:“大系统小做“。对于一个大的复杂系统,首先想到的就是对其分拆,拆成多个子系统。每个子系统自己的存储/Service/接口层,各个子系统独立开发、测试、部署、运维。 从团队管理角度讲,也可以不同团队用自己熟悉的语言体系,团队之间基于接口进行协作,职责清晰,各司其职。 子系统分拆 拆成子系统之后,子系统内部又可以分层,分模块。当然,这里“系统“,“子系统“,“层“,“模块“ 都只是一个相对概念。在一个系统里面,某个模块复杂到一定程度,会把它抽出来,单独做成一个系统;而在初期,很大简单模块,可能不回拆分,集中在一个系统里面。 这就像一个生物组织,自身是在不断成长、演化、有分有合,不断变化发展的。 存储分拆 Nosql:对于Nosql数据库,比如MongoDB,其天生就是分布式的,很容易实现数据的分片。 Mysql: 对于Mysql,或者其它关系型数据库

图数据库Neo4j简介

北城以北 提交于 2021-01-07 08:27:48
<div class="htmledit_views" id="content_views"> <p>    图数据库本身属于NoSql数据库中的一种,是基于数学中图论实现的一种数据库。不同于传统的关系型数据库将数据存在库表字段中,图数据库将数据和数据之间的关系存在节点和边中,在图数据库中这被称作“节点”和“关系”。没有了库表字段的概念,相当于是把数据存在了一张大宽表中。传统数据库的一些特性如CRUD、处理事务的能力在图数据库中也都支持。</p> <p>    <span style="color:#f33b45;"><strong>这里需要澄清一个概念:图数据库并不是前端展示用的数据库,它不是用来画图的。相反,它是用来存储数据用的,以图的节点和边的方式来存储数据。而前端展现需要用一些前端展示工具,例如D3、ECharts等来实现。</strong></span></p> <p>    本文将以neo4j为例来介绍图数据库的使用。neo4j是由Java实现的开源NoSql图数据库,是图数据库中较为流行的一款。它提供了完整的数据库特性,包括ACID事务的支持、集群支持、备份与故障转移等(部分功能例如集群支持只有在neo4j企业版中才有,社区版不支持)。</p> <p>    在笔者看来,图数据库最大的优势是体现在对数据关系的检索上。如果数据之间的关系很复杂,数据存在了多张表中

干货丨DolphinDB与MongoDB在时序数据上的对比测试

ⅰ亾dé卋堺 提交于 2021-01-06 17:28:51
DolphinDB和MongoDB都是为大数据而生的数据库。但是两者有这较大的区别。前者是列式存储的多模型数据库,主要用于结构化时序数据的高速存储、查询和分析。后者是文档型的NoSQL数据库,可用于处理非结构化和结构化的数据,可以根据键值快速查找或写入一个文档。MongoDB有着自己最合适的应用场景。但是市场上缺少优秀的大数据产品,不少用户试图使用MongoDB来存储和查询物联网和金融领域的结构化时序数据。本测试的目的是评估MongoDB是否适合此类海量时序数据集。 1. 测试环境 本次测试在单机上进行,测试设备配置如下: 主机:DELL OptiPlex 7060 CPU:Intel(R) Core(TM) i7-8700 CPU@3.20GHZ,6核12线程 内存:32 GB (8GB x 4, 2,666 MHz) 硬盘: 2T HDD (222MB/s读取;210MB/s写入) OS:Ubuntu 18.04 LTS DolphinDB选用Linux0.89作为测试版本,所有节点最大连接数为128,数据副本设置为2,设置1个控制节点,1个代理节点,3个数据节点。 MongoDB选用Linux4.0.5社区版作为测试版本,shard集群线程数为12,所有服务器的最大连接数均为128。MongoDB的shard集群设置为1个config服务器,1个mongos路由服务器

NoSQL最新现状和趋势:云NoSQL数据库将成重要增长引擎

老子叫甜甜 提交于 2021-01-06 12:54:31
NoSQL最早起源于1998年,但从2009年开始,NoSQL真正开始逐渐兴起和发展。回望历史应该说NoSQL数据库的兴起,完全是十年来伴随互联网技术,大数据数据的兴起和发展,NoSQL在面临大数据场景下相对于关系型数据库运用,这一概念无疑是一种全新思维的注入。 接下来本文重点梳理下NoSQL领域最新发展趋势以及阿里云NoSQL最新现状,以飨读者。 云NoSQL数据库成为数据库领域重要增长引擎 云化趋势不可避免,根据Gartner的报告,2017年超过73%的DBMS增长来自云厂商,Gartner象限里面AWS在领导者象限上升趋势明确,老牌厂商下滑严重。在2018年Gartner报告中,阿里云数据库更是中国唯一首次入围远见者象限。而在众多云厂商里面增长最快的又是NoSQL数据库,云NoSQL成为数据库领域重要增长引擎。 阿里云覆盖了主流的NoSQL引擎 阿里云集团是国内最早提出数据战略,本身也拥有最大体量的数据,是最早投入NoSQL数据库技术研发,目前也拥有国内最大的专家团队。在持续十年技术加持下,阿里云NoSQL目前覆盖了所有主流的NoSQL数据库,如Redis/mongodb/HBase/图等等。下表是目前阿里云目前覆盖的主流的NoSQL数据库。 NoSQL数据库 存储类型 典型场景 Redis/Memcache Key/Value 缓存,搭配所有数据库使用;直播