Kafka_集群特性

集群概述 Kafka集群具有横向扩展、变态快,大吞吐量、内置分区、副本、故障转移等特点。同时,Kafka是一个非常高性能的存储系统。写入到kafka的数据将直接写到磁盘并复制到集群中保证容错性。并允许生产者等待消息应答,直到消息完全写入。client来控制读取数据的位置。可以认为kafka是一种专用于高性能,低延迟,提交日志存储,复制,和传播特殊用途的分布式文件系统。kafka集群最好部署在相
阅读本文

人工智能在线特征系统中的数据存取技术

一、在线特征系统 主流互联网产品中,不论是经典的计算广告、搜索、推荐,还是垂直领域的路径规划、司机派单、物料智能设计,建立在人工智能技术之上的策略系统已经深入到了产品功能的方方面面。相应的,每一个策略系统都离不开大量的在线特征,来支撑模型算法或人工规则对请求的精准响应,因此特征系统成为了支持线上策略系统的重要支柱。美团点评技术博客之前推出了多篇关于特征系统的文章,如《机器学习中的数据清洗
阅读本文

HBase 高性能获取数据(多线程批量式解决办法) + MySQL和HBase性能测试比较

摘要:   在前篇博客里已经讲述了通过一个自定义 HBase Filter来获取数据的办法,在末尾指出此办法的性能是不能满足应用要求的,很显然对于如此成熟的HBase来说,高性能获取数据应该不是问题。下面首先简单介绍了搜索引擎的性能,然后详细说明了HBase与MySQL的性能对比,这里的数据都是经过实际的测试获得的。最后,给出了采用多线程批量从HBase中取数据的方案,此方案经过测试要比通过自定义
阅读本文

key-value类型存储数据库--Redis

1.简介Redis是完全开源的ANSI C语言编写、遵守BSD协议,高性能的key-value数据库。1.1特点Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。Redis不仅仅支持简单的key-value类型的数据,同时还提供list,set,zset,hash等数据结构的存储。Redis支持数据的备份,即master-slave模式的数据备份。1.2优
阅读本文

Python操作nosql数据库之redis

一、NoSQL的操作  NoSQL,泛指非关系型的数据库。随着互联网web2.0网站的兴起,传统的关系数据库在应付web2.0网站,特别是超大规模和高并发的SNS类型的web2.0纯动态网站已经显得力不从心,暴露了很多难以克服的问题,而非关系型的数据库则由于其本身的特点得到了非常迅速的发展。NoSQL数据库的产生就是为了解决大规模数据集合多重数据种类带来的挑战,尤其是大数据应用难题。  虽然NoS
阅读本文

Redis和MySQL的使用

Redis基于内存,读写速度快,也可做持久化,但是内存空间有限,当数据量超过内存空间时,需扩充内存,但内存价格贵;MySQL基于磁盘,读写速度没有Redis快,但是不受空间容量限制,性价比高;大多数的应用场景是MySQL(主)+Redis(辅),MySQL做为主存储,Redis用于缓存,加快访问速度。需要高性能的地方使用Redis,不需要高性能的地方使用MySQL。存储数据在MySQL和Redis
阅读本文

R语言高性能编程(二)

接着上一篇一、减少内存使用的简单方法1、重用对象而不多占用内存 y 一般来说只要向量没有被其他对象引用,就可以正常修改,以避免复制向量带来的CPU和RAM开销。按照程序属于来说,R是按值传递,应该避免使用sort 类似的函数,会返回一个副本,资源开销至少和原对象一样大,甚至更大2、删除不在需要的中间数据注意 在调用rm()的时候,内存不会被立即释放并交还到操作系统,而是在必要的时候,或者当已删除对
阅读本文

mongodb 面试题

mongodb 面试题总结1 nosql和关系型数据库的区别   NoSQL是非关系型数据库,NoSQL = Not Only SQL。        关系型数据库采用的结构化的数据,NoSQL采用的是键值对的方式存储数据。           在处理非结构化/半结构化的大数据时;在水平方向上进行扩展时;随时应对动态增加的数据项时可以优先考虑使用NoSQL数据库。        在考虑数据库的成熟
阅读本文

高性能 Java 持久化的 14 个技巧

1. SQL语句日志如果您用了生成符合自己使用习惯的语句的框架,则应始终验证每个语句的有效性和效率。测试时使用断言机制验证更好,因为即使在提交代码之前,也可以捕获N + 1个查询问题。2.连接管理数据库的连接开销非常大,因此您应该始终使用连接池机制。由于连接数由底层数据库集群的功能给出,所以您需要尽可能快地释放连接。在性能调优中,你总是要测量、设置出正确的连接池,池的大小又是差不多的。 但像Fle
阅读本文

3.Apache ZooKeeper数据模型

1. ZooKeeper自下向上的服务视图Apache ZooKeeper是分布式应用程序的协调服务。 它旨在解决分布式应用程序中与组件协调相关的棘手问题。 它通过暴露一个简单而强大的接口来实现这一点。 应用程序可以设计在通过ZooKeeper API实现的这些接口上,以解决分布式同步,集群配置管理,组成员身份等问题。ZooKeeper本身就是一个复制和分布式应用程序,其目的作为服务运行,类似于我
阅读本文

一脚踏进Memcached的大门

Memcached 是一个高性能的分布式内存对象缓存系统,用于动态Web应用以减轻数据库负载。它通过在内存中缓存数据和对象来减少读取数据库的次数,从而提高动态、数据库驱动网站的速度。Memcached基于一个存储键/值对的hashmap。其守护进程(daemon )是用写的,但是客户端可以用任何语言来编写,并通过memcached协议与守护进程通信。一、Memcached简介Memcached是一
阅读本文

LNMP源码编译

Nginx是一个高性能的HTTP和反向代理服务器。    Nginx的工作原理:Nginx本身只支持静态页面的处理,当客户端访问php页面的时候,nginx会将php转到php-fpm处理,php-fpm服务会把php页面解析成html文件给nginx处理,nginx返回给客户端。    安装组建包:yum groupinstall “Development Tools“ “Develop
阅读本文

Django学习-19-缓存

由于Django是动态网站,所有每次请求均会去数据进行相应的操作,当程序访问量大时,耗时必然会更加明显,最简单解决方式是使用:缓存,缓存将一个某个views的返回值保存至内存或者memcache中,5分钟内再有人来访问时,则不再去执行view中的操作,而是直接从内存或者Redis中之前缓存的内容拿到,并返回。Django提供了6中缓存方式:                1.开发调试  ---
阅读本文

关于IO的整理

我们知道io只是输入输出,在java语言中分为同步阻塞的BIO、同步非阻塞的NIO、异步非阻塞的AIO,现在的IO,一般是用作两种用途:一种是进行文件或者目录的操作(将不同的输入输出源抽象成流,所以流本质就是从起源到接受的有序数据,即流就是数据),另一种是进行套接字(Socket)操作(分为ServerSocket——监听其他通讯实体连接请求,是服务器端和Socket——连接到制定的服务器,是
阅读本文

【转载】高性能IO模型浅析

服务器端编程经常需要构造高性能的IO模型,常见的IO模型有四种: (1)同步阻塞IO(Blocking IO):即传统的IO模型。 (2)同步非阻塞IO(Non-blocking IO):默认创建的socket都是阻塞的,非阻塞IO要求socket被设置为NONBLOCK。注意这里所说的NIO并非Java的NIO(New IO)库。 (3)IO多路复用(IO Multiplexing):即经典的R
阅读本文

大数据学习 概念篇

1.理解概念  Hadoop Hadoop是一个由Apache基金会所开发的分布式系统基础架构。用户可在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储  sparkSpark是当前最流行的开源大数据内存计算框架,用Scala语言实现,由UC伯克利大学AMPLab实验室开发并于2010年开源。以通用、易用为目标,高速发展后成为最活跃的Apache开源项目。  hi
阅读本文

Google论文BigTable拜读

这周少打点dota2,争取把这篇论文读懂并呈现出来,和大家一起分享。先把论文搞懂,然后再看下和论文搭界的知识,比如hbase,Chubby和Paxos算法。 Bigtable: A Distributed Storage System for Structured Data 大表:用于结构化数据的分布式存储系统 怎么样,“大表“这个翻译是不是很屌。 Fay Chang, Jeffrey Dean
阅读本文

从端到云——工业物联网项目全栈快速开发实践

从去年伊始,国内外一些大公司都先后推出了面向物联网领域的平台产品,如微软 Azure 平台的 IoT Hub、阿里云平台的物联网开发套件、百度云平台的物接入 IoT Hub、物解析 IoT Parser 和物管理 IoT Device 等等,但上述公司的产品从平台特色和技术角度来看,相对比较适合一些企业级项目开发及智能硬件的云连接、云存储的使用,其实并不太适合一些对控制实时性较高、接入点多、业务逻
阅读本文

mongodb学习(一)

MongoDB  跨平台  面向文档  高性能  高可用性   易于扩展一、名词解释:数据库:是一个集合的物理容器,一个单一的MongoDB通常有多个数据库集合:是一组MongoDB的文件,不强制一个集合存储一种类型的文档,但是通常情况下同一集合中的文件都是相关的文档:文档是一组键值对。(json格式文件)二、创建集合:db.createCollection();参数:capped: boolea
阅读本文

mongodb 数据库

mongodb 数据库一,mongodb 是什么?MongoDB是一个基于分布式文件存储的数据库。由C++语言编写。旨在为WEB应用提供可扩展的高性能数据存储解决方案。它的特点:高性能、易部署、易使用,存储数据非常方便。nosql :not only sql 二,下载
阅读本文