量化投资与机器学习微信公众号,是业内垂直于量化投资、对冲基金、Fintech、人工智能、大数据等领域的主流自媒体。公众号拥有来自公募、私募、券商、期货、银行、保险、高校等行业30W+关注者,荣获2021年度AMMA优秀品牌力、优秀洞察力大奖,连续2年被腾讯云+社区评选为“年度最佳作者”。 前言 因子挖掘是量化交易的基础。除传统的基本面因子外,从中高频行情数据中挖掘有价值的因子,并进一步建模和回测以构建交易系统,是一个量化团队的必经之路。金融或者量化金融是一个高度市场化、多方机构高度博弈的领域。因子的有效时
量化投资与机器学习微信公众号,是业内垂直于量化投资、对冲基金、Fintech、人工智能、大数据等领域的主流自媒体。公众号拥有来自公募、私募、券商、期货、银行、保险、高校等行业30W+关注者,荣获2021年度AMMA优秀品牌力、优秀洞察力大奖,连续2年被腾讯云+社区评选为“年度最佳作者”。 随着国内量化金融的高速发展,行情数据所包含的微观交易结构信息越来越受到券商自营团队、资管团队以及各类基金的重视。这些交易团队迫切希望拥有一个与生产环境类似的投研仿真环境,提升研发的效率和质量。 今天,公众号将为大家分享
DolphinDB为海量结构化数据的极速存储、检索、计算与分析提供了一站式解决方案,特别适合金融行业用来处理大规模数据,尤其是L1,L2以及逐笔委托的行情数据。
复杂而又变化多端的中高频量价因子的研究和开发已经成为众多量化私募最重要的工作之一。DolphinDB作为一个一站式的时序数据存储、分析和实时计算平台,可以帮助金工和IT人员将复杂的因子快速转化成能在研发或生产环境中高效运行的计算机脚本。
最近,专升本职高生周信静逆袭成MIT博士生的故事,再度刷爆互联网,冲上知乎热搜第一。
时序数据库全称为时间序列数据库。时间序列数据库主要用于指处理带时间标签(按照时间的顺序变化,即时间序列化)的数据,带时间标签的数据也称为时间序列数据。时序数据的兴起还是榜上了物联网的大风。物联网(Internet of Things,简称IOT)是指通过各种信息传感器实时采集任何需要管理设备的信息,并进行管理。物联网的基础数据具有数据量大、结构单一、时间属性强、查询简单等特点,传统的关系型数据库在面对物联网数据时,显得应对发力,基本上属于功能过剩但性能不足。 目前最新的DB-Engine上时序数据库排名如下:
随机森林属于 集成学习 中的 Bagging(Bootstrap AGgregation 的简称) 方法。如果用图来表示他们之间的关系如下:
两个group by 语句都用了order by null,为什么使用内存临时表得到的语句结果里,0这个值在最后一行;而使用磁盘临时表得到的结果里,0这个值在第一行?
很多情况下,反映一个服务的健康状态,单从其服务可用性并不完全准确,反而服务的某些日志可以准确的反映出这个服务是否处于亚健康状态,是否即将出现异常,从而从一定程度进行故障预测和干预。
Machbase 是一个针对工业物联网优化的超快时序数据库管理系统,提供数据合并和监控功能。 此外,它可以有效地构建边缘计算环境。Machbase Edge Edition 旨在即使嵌入在资源有限的小型设备中也具有高速处理性能。通过嵌入众多小型设备中的边缘版,可以通过收集和处理生产现场产生的所有数据来构建完美的边缘计算基础设施。Machbase Edge Edition 是边缘计算的最佳解决方案。
Eureka 由 Eureka Server 和 Eureka Client 两部分组成:
一级缓存是SqlSession级别的缓存。在操作数据库时需要构造 sqlSession对象,在对象中有一个(内存区域)数据结构(HashMap)用于存储缓存数据。不同的sqlSession之间的缓存数据区域(HashMap)是互相不影响的。在同一个sqlSession中两次执行相同的sql语句,第一次执行完毕会将数据库中查询的数据写到缓存(内存),第二次会从缓存中获取数据将不再从数据库查询,从而提高查询效率。当一个sqlSession结束后该sqlSession中的一级缓存也就不存在了。Mybatis默认开启一级缓存。但如果开启了二级缓存,那么在关闭sqlsession后,会把该sqlsession一级缓存中的数据添加到namespace的二级缓存中。 对sqlsession执行commit操作,也就意味着用户执行了update、delete等操作,那么数据库中的数据势必会发生变化,如果用户请求数据仍然使用之前内存中的数据,那么将读到脏数据。所以在执行sqlsession操作后,会清除保存数据的HashMap,用户在发起查询请求时就会重新读取数据并放入一级缓存中了。 如何开启二级缓存:
Spring Cloud架构体系中,Eureka是一个至关重要的组件,它扮演着微服务注册中心的角色,所有的服务注册与服务发现,都是依赖Eureka的。
我在上一篇文章末尾留给你的问题是:两个 group by 语句都用了 order by null,为什么使用内存临时表得到的语句结果里,0 这个值在最后一行;而使用磁盘临时表得到的结果里,0 这个值在第一行?
移动串指令: MOVSB、MOVSW、MOVSD ;从 ESI -> EDI; 执行后, ESI 与 EDI 的地址移动相应的单位
移动串指令: MOVSB、MOVSW、MOVSD ;从 ESI -> EDI; 执行后, ESI 与 EDI 的地址移动相应的单位 比较串指令: CMPSB、CMPSW、CMPSD ;比较 ESI、EDI; 执行后, ESI 与 EDI 的地址移动相应的单位 扫描串指令: SCASB、SCASW、SCASD ;依据 AL/AX/EAX 中的数据扫描 EDI 指向的数据, 执行后 EDI 自动变化 储存串指令: STOSB、STOSW、STOSD ;将 AL/AX/EAX 中的数据储存到 EDI 给出的地址, 执行后 EDI 自动变化 载入串指令: LODSB、LODSW、LODSD ;将 ESI 指向的数据载入到 AL/AX/EAX, 执行后 ESI 自动变化 其中的 B、W、D 分别指 Byte、Word、DWord, 表示每次操作的数据的大小单位.
可以看到,内存表 t1 的返回结果里面 0 在最后一行,而 InnoDB 表 t2 的返回结果里 0 在第一行。
上篇文章简单的实现了基于LSM数据库的初步版本,在该版本中如数据写入到内存表后但还未持久化到SSTable排序字符串表,此时正好程序崩溃,内存表中暂未持久化的数据将会丢失。
2021年9月29日,中国地震台网中心发布《国家地震烈度速报与预警工程数据库、消息中间件采购与定制模块开发采购项目》招标公告,预算 630 万。 废标公告 2021年10月21日发布废标公告:因有效投标供应商不足3家,废标。 浙江智臾科技有限公司(DolphinDB)未通过初审: 符合性审查未通过:未提供时序数据库“集群节点数要求”的有效证明材料。 (二次)招标 2021年11月15日再次发布招标公告,预算 630 万。 项目概述: 集成需求: 采购产品一览表: 中标结果 2021年12月9日
#define MAXSIZE 100 宏定义顺序表的最大存储量,更方便改顺序表的存储大小,耦合性低。
传说中的计算机圣经TAOCP,虽然我自己啃完这套书不太现实,但是还是先记录自己读书的历程。本文主要记载了顺序分配的线性表的能力与局限。
时序数据库厂商「格睿云Greptime」已于近期完成天使轮融资。据介绍,本轮融资金额在数百万美金级别,由耀途资本领投,九合创投跟投。Greptime成立于2022年4月,是一家时序数据库厂商。公司CEO 庄晓丹曾在蚂蚁集团带领智能监控团队自研超大规模时序数据平台并实践 AIOps 智能运维,CTO 孙宁及技术 VP 冯家纯分别来自滴滴与蚂蚁集团。
读数据 HBase的表是按行拆分为一个个 region 块儿,这些块儿被放置在各个 regionserver 中 假设现在想在用户表中获取 row key 为 row0001 的用户信息 要想取得这条
本文围绕一个问题展开: 假如主机内存只有 100G,现在要对一个 200G 的大表做全表扫描,会不会把数据库主机的内存用光了?
字典,大家都用得特别多,花括号包起来的,一个键一个值构成一个元素。集合和字典的表达形式是一样的。
我的主机内存只有100G,现在要全表扫描一个200G大表,会不会把DB主机的内存用光?
CVE-2022–21907 HTTP 协议栈远程代码执行漏洞,通读关键、蠕虫等描述词引起了我的兴趣。
前篇文章对LSM的基本原理,算法流程做了简单的介绍,这篇文章将实现一个简单的基于LSM算法的迷你Key-Value数据库,结合上篇文章的理论与本篇文章的实践使之对LSM算法有更好的理解,当然此版本还有很大问题只是Demo模型,后面也会指出;
每条 SQL 前面的数字是它的编号,4 条 SQL 分别为 SQL 1、SQL 2、SQL 3、SQL 4,其中,SQL 4 是本文的主角。
最近面试被问到这样一个问题。这里总结一下。关于更多的MySQL真题,你可以直接访问该链接进行查看。
本文为 DM 源码阅读系列文章的第八篇,上篇文章 对 DM 中的定制化数据同步功能进行详细的讲解,包括库表路由(Table routing)、黑白名单(Black & white table lists)、列值转化(Column mapping)、binlog 过滤(Binlog event filter)四个主要功能的实现。
一、栈 栈(stack)是限定仅在表尾进行插入和删除操作的线性表,我们把允许插入和删除的一端称为栈顶(top),另一端称为栈底(bottom),不含任何数据元素的栈称为空栈;栈又称为后进先出(Last In First Out)的线性表,简称LIFO结构。 理解栈的定义时我们需要注意:首先它是一个线性表,也就是说,栈元素具有线性关系,即前驱后继关系,只不过它是一种特殊的线性表而已,定义中说是在线性表的表尾进行插入和删除操作,这里的表尾是指栈顶,而不是栈底。它的特殊之处就在于限制了这个线性表的插入和删除位置,它始终只在栈顶进行,这也就使得:栈底是固定,最先进栈的元素只能在栈底,每当从栈内弹出一个数据,栈的当前容量就-1。 栈的插入操作,叫做进栈,也称为压栈、入栈;栈的删除操作,叫做出栈,也有叫做弹栈;栈对线性表的插入和删除的位置进行了限制,并没有对元素进出的时间进行限制,也就是说,在不是所有元素都进栈的情况下,事先进去的元素也可以出栈,只要保证栈顶元素出栈就可以。 清空栈:就是将栈中的元素全部作废,但找本身的物理空间并不会发生改变(不是销毁); 销毁栈:是要释放掉该栈所占据的物理内存空间;
---------------------我是一条分割线---------------------
数据库中一个核心的功能就是数据的访问, 数据的访问与计算单元越近越好,而CPU中的缓存的价格是昂贵的,并且也是稀少的,这就需要有CPU的 1 2 3 级别的缓存,CPU有一大部分的时间在处理这些缓存之间的信息交换,当然这些CACHE 也不大够处理我们的数据,所以就有了内存,同时为了永久的存储信息,将这些信息又存储到了磁盘。这就是我们整体的数据处理和存储最基本的原理,而数据库软件也一直以此来设计数据库的软件,并让他达到最大性价比。
JVM 垃圾收集对不同类型的引用的有一种不同的方法。java对于它的对象。仅仅存在有引。它会一直存在于内存中。假设越来越多这样的对象,外JVM的内存量。JVM抛出OutOfMemory错。
在文件I/O中,要从一个文件读取数据,应用程序首先要调用操作系统函数并传送文件名,并选一个到该文件的路径来打开文件。该函数取回一个顺序号,即文件句柄(file handle),该文件句柄对于打开的文件是唯一的识别依据。要从文件中读取一块数据,应用程序需要调用函数ReadFile,并将文件句柄在内存中的地址和要拷贝的字节数传送给操作系统。当完成任务后,再通过调用系统函数来关闭该文件。
MySQL 从最初的 1.0、3.1 到后来的 5.x ,到今天的8.x,发生了各种各样的变化。
点击上方“芋道源码”,选择“设为星标” 管她前浪,还是后浪? 能浪的浪,才是好浪! 每天 10:33 更新文章,每天掉亿点点头发... 源码精品专栏 原创 | Java 2021 超神之路,很肝~ 中文详细注释的开源项目 RPC 框架 Dubbo 源码解析 网络应用框架 Netty 源码解析 消息中间件 RocketMQ 源码解析 数据库中间件 Sharding-JDBC 和 MyCAT 源码解析 作业调度中间件 Elastic-Job 源码解析 分布式事务中间件 TCC-Transaction
好处:实现跨团队的解藕,实现更高的并发(目前单机只能实现c10k)不用在拷贝代码,基础服务可以公用,更好的支持服务治理,能够更好的兼容云计算平台。
上一章节,我们讲解了通过mybatis的懒加载来提高查询效率,那么除了懒加载,还有什么方法能提高查询效率呢?这就是我们本章讲的缓存。 本篇源码下载链接:http://pan.baidu.com
mysql作为最流行的数据库,在开发过程中仍然有较多优化的空间,mysql的优化主要有4个方向:
Linux的swap相关部分代码从2.6早期版本到现在的4.6版本在细节之处已经有不少变化。本文讨论的swap基于Linux 4.4内核代码。Linux内存管理是一套非常复杂的系统,而swap只是其中一个很小的处理逻辑。希望本文能让读者了解Linux对swap的使用大概是什么样子。阅读完本文,应该可以帮你解决以下问题:
众所周知,缓存的设置是所有现代计算机系统发挥高性能的重要因素之一。对于MySQL数据库来说,也是得益于MySQL缓存机制,才能够提高MySQL数据库的性能,减少数据的内存占比。
mysql缓存机制就是缓存sql 文本及缓存结果,用KV形式保存再服务器内存中,如果运行相同的sql,服务器直接从缓存中去获取结果,不需要在再去解析、优化、执行sql。 如果这个表修改了,那么使用这个表中的所有缓存将不再有效,查询缓存值得相关条目将被清空。表中得任何改变是值表中任何数据或者是结构的改变,包括insert,update,delete,truncate,alter table,drop table或者是drop database 包括那些映射到改变了的表的使用merge表的查询,显然,者对于频繁更新的表,查询缓存不合适,对于一些不变的数据且有大量相同sql查询的表,查询缓存会节省很大的性能。
概述 了解执行计划对数据库性能分析很重要,其中涉及到了语句性能分析与存储,这也是写这篇文章的目的,在了解执行计划之前先要了解一些基础知识,所以文章前面会讲一些概念,学起来会比较枯燥,但是这些基础知识非常重要。 目录 概述 基础概念 怎样缓存执行计划 SQL Server自动删除执行计划 重新编译执行计划 测试 执行计划相关系统视图 手动清空缓存执行计划 测试索引更改对执行计划的影响 测试增加字段对执行计划的影响 总结 基础概念 SQL Server 有一个用于存储执行计划和数据缓冲区
现在是资源共享的时代,同样也是知识分享的时代,如果你觉得本文能学到知识,请把知识与别人分享。
静态表:表中的字段都是非变长字段,这样每个记录都是固定长度的,优点存储非常迅速,容易缓存,出现故障容易恢复;缺点是占用的空间通常比动态表多(因为存储时会按照列的宽度定义补足空格)ps:在取数据的时候,默认会把字段后面的空格去掉,如果不注意会把数据本身带的空格也会忽略。
整个教程中已经不时的出现一些内存管理和垃圾回收的相关知识。这里进行一个小小的总结。 Java是在JVM所虚拟出的内存环境中运行的。内存分为栈(stack)和堆(heap)两部分。我们将分别考察这两个区域。 栈 栈的基本概念参考纸上谈兵: 栈 (stack)。许多语言利用栈数据结构来记录函数调用的次序和相关变量(参考Linux从程序到进程)。 在Java中,JVM中的栈记录了线程的方法调用。每个线程拥有一个栈。在某个线程的运行过程中,如果有新的方法调用,那么该线程对应的栈就会增加一个存储单元,即帧(fram
领取专属 10元无门槛券
手把手带您无忧上云