postgresql

DTCC 2020 | 阿里云李飞飞:云原生分布式数据库与数据仓库系统点亮数据上云之路

女生的网名这么多〃 提交于 2021-01-15 13:00:43
简介: 数据库将面临怎样的变革?云原生数据库与数据仓库有哪些独特优势?在日前的 DTCC 2020大会上,阿里巴巴集团副总裁、阿里云数据库产品事业部总裁、ACM杰出科学家李飞飞就《云原生分布式数据库与数据仓库系统点亮数据上云之路》进行了精彩分享。 云计算时代,云原生分布式数据库和数据仓库开始崛起,提供弹性扩展、高可用、分布式等特性。 数据库将面临怎样的变革?云原生数据库与数据仓库有哪些独特优势?在日前的 DTCC 2020大会 上, 阿里巴巴集团副总裁、阿里云数据库产品事业部总裁、ACM杰出科学家李飞飞 就《云原生分布式数据库与数据仓库系统点亮数据上云之路》进行了精彩分享。 阿里巴巴集团副总裁、阿里云数据库产品事业部总裁、ACM杰出科学家李飞飞 一、背景与趋势 1.背景 数据库的本质是全链路的对“数据”进行管理,包括了生产—处理—存储—消费等,在当下的数据化时代,数据是所有企业最核心的资产之一,所以数据库的价值一直在不断地提升,不断地在新领域发现新的价值。 2.业界趋势 趋势一:数据生产/处理 正在发生质变 关键词: 规模爆炸性增长、生产/处理实时化与智能化、数据加速上云 从Gartner、IDC及各个传统厂商分析中可以得到以下几个结论: 数据在爆炸性增长,非结构化数据的占比越来越高; 生产/处理实时化与智能化的需求越来越高,并追求离在线一体化; 数据库系统、大数据系统

Extracting several math operations outputs from single select query

懵懂的女人 提交于 2021-01-13 10:00:06
问题 I have three tables that I need to merge to analyse: active, students and bills. 'Active' contains records on active students and the subjects they have been active on with columns: id (student id) int, time (time they have been active) timestamp, and subject (subject in which were active) - text id time subject 1 2020-04-23 06:53:30 Math 2 2020-05-13 09:51:22 Physics 2 2020-02-26 17:34:56 History 'Students' is the mass database containing: id (student id) int, group (the group to which

Golang 根据Gorm和Gin开发一个后台管理系统

眉间皱痕 提交于 2021-01-13 07:50:42
\\\\\\\\\\\ 项目后端地址: https://github .com/olongfen/gorm-gin-admin 项目前端地址: https://github.com/olongfen/user_admin 项目指导文档 Web UI Framework:element-ui Server Framework:gin Grom Framework: gorm 1. 基本介绍 1.1 项目结构 │ ├─conf (Config file) │ ├─docs (swagger APIs docs) │ ├─log (log file) │ ├─public (public static file) │ ├─static (head icon) ├─src │ ├─controller (Controller) │ ├─middleware (Middleware) │ ├─models (Model entity) │ ├─pkg (Project private package) │ ├─adapter (Casbin adapter) │ ├─app (Gin service response) │ ├─codes (Response code) │ ├─error (Project private error) │ ├─gredis (Redis) │ ├

ceph 笔记

与世无争的帅哥 提交于 2021-01-12 18:03:12
设置 ceph 是否自动迁移或恢复数据 ceph osd set noout ceph osd set nobackfill ceph osd set norecover PG 和 PGP 少于 5 个 OSD 时可把 pg_num 设置为 128 OSD 数量在 5 到 10 个时,可把 pg_num 设置为 512 OSD 数量在 10 到 50 个时,可把 pg_num 设置为 1024 OSD 数量大于 50 时,<osd数量> * 100/副本数量(默认3),该值接近的 2 的 N 次方值 存储池的 PG 和 PGP 数量一般相等,都是 2 的 N 次方,只能增加,每次增加为当前的 2 倍 查看存储池的 PG 和 PGP 数量 ceph osd pool get {pool_name} pgp_num 增加/设置存储池的 PG 和 PGP 数量 ceph osd pool set {pool_name} <cur_pg_num>*2 ceph osd pool set {pool_name} <cur_pgp_num>*2 获取所有卡在某状态的归置组统计信息 ceph pg dump_stuck inactive|unclean|stale|undersized|degraded #Inactive (不活跃)归置组不能处理读写,因为它们在等待一个有最新数据的 OSD

滴滴Ceph分布式存储系统优化之锁优化

会有一股神秘感。 提交于 2021-01-12 07:26:36
桔妹导读: Ceph是国际知名的开源分布式存储系统,在工业界和学术界都有着重要的影响。Ceph的架构和算法设计发表在国际系统领域顶级会议OSDI、SOSP、SC等上。Ceph社区得到Red Hat、SUSE、Intel等大公司的大力支持。Ceph是国际云计算领域应用最广泛的开源分布式存储系统,此外,Ceph也广泛应用在文件、对象等存储领域。Ceph在滴滴也支撑了很多关键业务的运行。在Ceph的大规模部署和使用过程中,我们发现了Ceph的一些性能问题。围绕Ceph的性能优化,我们做了很多深入细致的工作。这篇文章主要介绍我们通过调试分析发现的Ceph在锁方面存在的问题和我们的优化方法。 1. 背景 在支撑一些延迟敏感的在线应用过程中,我们发现Ceph的尾延迟较差,当应用并发负载较高时,Ceph很容易出现延迟的毛刺,对延迟敏感的应用造成超时甚至崩溃。我们对Ceph的尾延迟问题进行了深入细致的分析和优化。造成尾延迟的一个重要原因就是代码中锁的使用问题,下面根据锁问题的类型分别介绍我们的优化工作。本文假设读者已熟悉Ceph的基本读写代码流程,代码的版本为Luminous。 2. 持锁时间过长 2.1 异步读优化 Ceph的osd处理客户端请求的线程池为osd_op_tp,在处理操作请求的时候,线程会先锁住操作对应pg的lock。其中,处理对象读请求的代码如下图所示

python开发环境搭建

青春壹個敷衍的年華 提交于 2021-01-12 06:56:11
虽然网上有很多python开发环境搭建的文章,不过重复造轮子还是要的,记录一下过程,方便自己以后配置,也方便正在学习中的同事配置他们的环境。 1.准备好安装包   1)上python官网下载python运行环境( https://www.python.org/downloads/ ),目前比较稳定的是python-3.5.2   2)上pycharm官网下载最新版的IDE( http://www.jetbrains.com/pycharm/download/#section=windows ),官网提供了mac、windows和linux三种版本,我下的是pycharm-community-2016.2.3.exe   3)上postgresql官司网下载最新版的数据库( https://www.postgresql.org/download/windows/ 打开页面后,点击Download the installer进入下载页,然后选择版本和操作系统,再点击下载),我下的是postgresql-9.6.5-1-windows-x64.exe       2.安装软件    1)安装python运行环境   双击python-3.5.2.exe      一般采用自定义安装比较好,不然自动安装会把环境安装到个人目录里,有时要找起来很麻烦   另外第二个红框前面的勾记录打上

django模板语言

北城以北 提交于 2021-01-12 04:50:02
django的模板语言还是蛮多的,这里只是简单说明常用模板语言。 官方文档地址: https://yiyibooks.cn/xx/Django_1.11.6/index.html 变量 django中变量表示形如:{{ var }},这样表示的就是一个变量,django会根据上下文找到变量的值,来替换。 视图层的render函数的作用是渲染html文件并返回,在渲染html文件时,我们可以把从model哪里得到的结果也传递给html文件,如下! # 视图层函数如下: def info(request): all_data = models.msgtb.objects.values() print all_data return render(request, " info.html " , { " meg_data " : all_data}) #render参数传入一个字典,字典的key值作为变量在html文件中引用。 # 看下html中的引用 {% for item in meg_data % } #这里是一个for循环,因为meg_data是一个可迭代的QuerySet集合,因此这里使用了循环 <tr> <th>{{ forloop.counter }}</th> #这是一个计数器,每循环一次,计数值加1. <th>{{ item.name }}</th> <th>{{

干货丨时序数据库DolphinDB和TimescaleDB 性能对比测试报告

我与影子孤独终老i 提交于 2021-01-09 11:01:35
一、概述 DolphinDB DolphinDB 是以 C++ 编写的一款分析型的高性能分布式时序数据库,使用高吞吐低延迟的列式内存引擎,集成了功能强大的编程语言和高容量高速度的流数据分析系统,可在数据库中进行复杂的编程和运算,显著减少数据迁移所耗费的时间。 DolphinDB 通过内存引擎、数据本地化、细粒度数据分区和并行计算实现高速的分布式计算,内置流水线、 Map Reduce 和迭代计算等多种计算框架,使用内嵌的分布式文件系统自动管理分区数据及其副本,为分布式计算提供负载均衡和容错能力。 DolphinDB database 支持类标准 SQL 的语法,提供类似于 Python 的脚本语言对数据进行操作,也提供其它常用编程语言的 API,在金融领域中的历史数据分析建模与实时流数据处理,以及物联网领域中的海量传感器数据处理与实时分析等场景中表现出色。 TimescaleDB TimescaleDB 是目前市面上唯一的开源且完全支持 SQL 的时序数据库。它在 PostgreSQL 数据库的基础上进行开发,本质上是一个 PostgreSQL 的插件。 TimescaleDB 完全支持 SQL 且拥有 PostgreSQL 的丰富生态、并针对时间序列数据的快速插入和复杂查询进行了优化,支持自动分片,支持时间空间维度自动分区,支持多个 SERVER、多个 CHUNK 的并行查询

PostgreSQL libpq学习指南二

帅比萌擦擦* 提交于 2021-01-09 08:32:28
连接状态函数 PQdb 返回连接的数据库名称 PQuser 返回连接的用户名称 PQpass 返回连接的用户密码 如果连接密码没有被提供,那么将会尝试从 password_file 文件中获取。 PQhost 返回连接的服务器主机名称 PQhostaddr 返回连接的服务器IP地址 PQport 返回连接服务器的端口 PQtty 返回连接的DEBUG 终端信息 PQoptions 返回命令行传递的参数信息 PQstatus 返回连接的状态信息 示例: #include <stdio.h> #include <stdlib.h> #include "libpq-fe.h" int main(int argc, char **argv) { const char *conninfo; //定义连接信息 PGconn *conn; //连接数据库传递参数 if (argc > 1) conninfo = argv[1]; else conninfo = "dbname = postgres"; /* 连接数据库字符串 */ conn = PQconnectdb(conninfo); /*检查数据库是否连接成功 */ if (PQstatus(conn) != CONNECTION_OK) { fprintf(stderr, "连接数据库失败: %s", PQerrorMessage

postgresql-9.5 数据库路径迁移

十年热恋 提交于 2021-01-09 08:07:46
原因: 因存放数据库的目录磁盘空间已满,故需要将数据库迁移到其他目录 步骤: 1 postgresql安装后,默认的数据库路径是/var/lib/pgsql/9.x/data 2 新建文件夹 新建路径作为新的数据库数据路径,例如:/home/data mkdir /home/data 授权(必须输入,否则启动会出错) chown -R postgres:postgres data chmod 700 data 3 文件拷贝 先停止postgresql服务 service postgresql-9.5 stop 拷贝 su - postgres cp -rf /var/lib/pgsql/9.x/data/* /home/data 4、修改配置文件 vim /etc/init.d/postgresql-9.5 修改这个文件中的 Environment=PGDATA=/var/lib/pgsql/9.5/data/ 将其修改为自己的新的数据路径: Environment=PGDATA=/home/data/ 5、重启动postgresql服务 先reboot系统 然后启动postgres服务 service posrgresql-9.5 restart 为了避免数据迁移的工作,今后再新部署 postgresql 时,应该考虑到系统分区的问题,要避免使用默认的数据路径 参考: https