转自同功BBS 拆表存取kv <?php /* 经过拆变优化的ECStore mongodb 类 base/lib/kvstore/mongodb.php*/ class base_kvstore_mongodb extends base_kvstore_abstract implements base_interface_kvstore_base { static private $_mongodb = null; function __construct($prefix) { $prefix…
10.10.6  大数据量插入优化 在很多涉及支付和金融相关的系统中,夜间会进行批处理,在批处理的一开始或最后一般需要将数据回库,因为应用和数据库通常部署在不同的服务器,而且应用所在的服务器一般也不会去安装oracle客户端,同时为了应用管理和开发模式统一,很多会利用mybatis的foreach collection特性,如下: <insert id="batchInsertStudent" parameterType="List"> insert i…
首先优化是具体情况具体分析,从硬件.改进表结构.索引.改进sql查询语句.存储方式都有关系等多方面入手 比如单表数据量(100w-200w条)不大的情况下,查询效率慢 可以从优化sql语句.对多个排序列或经常使用的条件列加索引(复合索引) 表结构改进:不要设计过多的列如果一张表有一两百个字段,那就考虑表结构设计是否合理,单数据量在几百万级的时候可以考虑按某一个维度进行分表.分库(比如时间.地区)存储. 存储方式:将某些访问频率多的数据使用缓存存储,这样会大大加快访问效率. 老数据有必要一直存在吗…
之前上次在部门的分享会上,听了关于MySQL大数据的分页,即怎样使用limit offset,N来进行大数据的分页,现在做一个记录: 首先我们知道,limit offset,N的时候,MySQL的查询效率特别的低,注意是在limit大数据量的时候,测试的表的数据量是1KW条,limit 5000000,N的时候,速度变的非常的慢,当然了offset特别小的时候,查询的速度没有什么差别.那我们来想一下什么没原因造成的? 那其实原因就是MySQL并不是跳过offset行,然后单取N行,而是取offs…
众所周知,java在处理数据量比较大的时候,加载到内存必然会导致内存溢出,而在一些数据处理中我们不得不去处理海量数据,在做数据处理中,我们常见的手段是分解,压缩,并行,临时文件等方法; 例如,我们要将数据库(不论是什么数据库)的数据导出到一个文件,一般是Excel或文本格式的CSV;对于Excel来讲,对于POI和JXL的接口,你很多时候没有办法去控制内存什么时候向磁盘写入,很恶心,而且这些API在内存构造的对象大小将比数据原有的大小要大很多倍数,所以你不得不去拆分Excel,还好,POI开始意…
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索引而进行全表扫描, 如: select id from t where num is null    可以在num上设置默认值0,确保表中num列没有null值,然后这样查询: select id from t where num=0 3.应尽量避免在 where 子句中使用!=或<>操作符,否则…
百万数据量SQL,在进行分页查询时会出现性能问题,例如我们使用PageHelper时,由于分页查询时,PageHelper会拦截查询的语句会进行两个步骤 1.添加 select count(*)from (原查询sql) ,用于统计查询的总数 2.拼接 limit startPage,number 用于分页 此时有两个问题 第一个问题是: 用于统计的 select count(*)from (原查询sql)在数据量大时速度慢 第二个问题时: limit startPage,number 在大数据…
一.给collection objectid赋自定义的值 MongoDB Enterprise > db.testid.insert({_id:{imsi:"4567890123",address:"测试数据"}}) MongoDB Enterprise > db.testid.createIndex({"_id.imsi":1}) MongoDB Enterprise > db.testid.createIndex({&quo…
马蜂窝技术原创文章,更多干货请订阅公众号:mfwtech Kafka 是当下热门的消息队列中间件,它可以实时地处理海量数据,具备高吞吐.低延时等特性及可靠的消息异步传递机制,可以很好地解决不同系统间数据的交流和传递问题. Kafka 在马蜂窝也有非常广泛的应用,为很多核心的业务提供支撑.本文将围绕 Kafka 在马蜂窝大数据平台的应用实践,介绍相关业务场景.在 Kafka 应用的不同阶段我们遇到了哪些问题以及如何解决.之后还有哪些计划等. Part.1 应用场景 从 Kafka 在大数据平台的应…
服务器大小: 单节点部署,磁盘1T,内存128G 并发导入规模: 1,多线程并发导入csv文件 2,csv文件分1万.10万.100万.200万行记录4种大小 3,每个csv对应一个collection 并发查询规模 1,多线程并发查询不同collection 2,分全表查询和局部查询两种场景 性能测试结果: 导入性能 csv文件大小(万行记录) 并发线程数 导入耗时(秒)  累计导入csv文件数量 200 1 60 5000 200 10 105 5000 200 40 330(峰值内存110…