元数据

第1章 大数据Kylin之概述

╄→尐↘猪︶ㄣ 提交于 2020-01-30 15:27:45
Kylin概述 1.1、 Kylin定义 Apache Kylin是一个开源的分布式 分析引擎 ,提供Hadoop/Spark之上的SQL查询接口及 多维分析(OLAP) 能力以支持超大规模数据,最初由eBay开发并贡献至开源社区。它能在亚秒内查询巨大的Hive表。 1.2、 Kylin架构 (1) REST Server REST Server是一套面向应用程序开发的入口点,旨在实现针对Kylin平台的应用开发工作。 此类应用程序可以提供查询、获取结果、触发cube构建任务、获取元数据以及获取用户权限等等。另外可以通过Restful接口实现SQL查询。 (2) 查询引擎(Query Engine) 当cube准备就绪后,查询引擎就能够获取并解析用户查询。它随后会与系统中的其它组件进行交互,从而向用户返回对应的结果。 (3) 路由器(Routing) 在最初设计时曾考虑过将Kylin不能执行的查询引导去Hive中继续执行,但在实践后发现Hive与Kylin的速度差异过大,导致用户无法对查询的速度有一致的期望,很可能大多数查询几秒内就返回结果了,而有些查询则要等几分钟到几十分钟,因此体验非常糟糕。最后这个路由功能在发行版中默认关闭。 (4) 元数据管理工具(Metadata) Kylin是一款元数据驱动型应用程序。元数据管理工具是一大关键性组件

块存储、对象存储、文件存储的联系和区别

心已入冬 提交于 2020-01-30 14:22:55
块存储、对象存储、文件存储的联系和区别 通常来讲,磁盘阵列都是基于Block块的存储,而所有的NAS产品都是文件级存储。 \1. 块存储:DAS SAN a) DAS(Direct Attach Storage): 是直接连接于主机服务器的一种存储方式,每台服务器有独立的存储设备,每台主机服务器的存储设备无法互通,需要跨主机存取资料室,必须经过相对复杂的设定,若主机分属不同的操作系统,则更复杂。 应用:单一网络环境下且数据交换量不大,性能要求不高的环境,技术实现较早。 b) SAN(Storage Area Network): 是一种高速(光纤)网络联接专业主机服务器的一种存储方式,此系统会位于主机群的后端,它使用高速I/O联接方式,如:SCSI,ESCON及Fibre-Channels.特点是,代价高、性能好。但是由于SAN系统的价格较高,且可扩展性较差,已不能满足成千上万个CPU规模的系统。 应用:对网速要求高、对数据可靠性和安全性要求高、对数据共享的性能要求高的应用环境中。 \2. 文件存储 通常NAS产品都是文件级存储。 NAS(Network Attached Storage):是一套网络存储设备,通常直接连在网络上并提供资料存取服务,一套NAS储存设备就如同一个提供数据文件服务的系统,特点是性价比高。 它采用NFS或CIFS命令集访问数据,以文件为传输协议,可扩展性好

Apache Kylin 目录详解

非 Y 不嫁゛ 提交于 2020-01-29 13:47:13
一、Kylin二进制源码目录解析 bin : shell 脚本,用于启动/停止Kylin,备份/恢复Kylin元数据,以及一些检查端口、获取Hive/HBase依赖的方法等; conf : Hadoop 任务的XML配置文件,这些文件的作用可参考 配置页面 lib : 供外面应用使用的jar文件,例如Hadoop任务jar, JDBC驱动, HBase coprocessor 等. meta_backups : 执行 bin/metastore.sh backup 后的默认的备份目录; sample_cube 用于创建样例 Cube 和表的文件。 spark : 自带的spark。 tomcat : 自带的tomcat,用于启动Kylin服务。 tool : 用于执行一些命令行的jar文件。 二、HDFS 目录结构 Kylin 会在 HDFS 上生成文件,根目录是 “/kylin” (可以在 conf/kylin.properties 中定制),然后会使用 Kylin 集群的元数据表名作为第二层目录名,默认为 “kylin_metadata”。 通常,/kylin/kylin metadata目录下会有这么几种子目录:cardinality, coprocessor, kylin-job id, resources, jdbc-resources. cardinality

Linux内核学习:EXT4文件JBD日志系统(Journaling Block Device)

試著忘記壹切 提交于 2020-01-29 05:42:33
目录 0 Ext4的日志模式 1 日志系统的作用 2 日志系统工作场景 3 JDB日志块设备 3.1 JBD2的数据结构 3.1.1 buffer_head 3.1.2 handle 3.1.3 transaction 3.1.4 checkpoint 3.1.5 kjournald 3.1.6 Journal 3.1.7 journal_superblock 3.2 事务的状态 3.3 事务提交的阶段 3.4 释放日志空间Checkpointing 3.5 日志的恢复 4 JBD的操作函数 4.1 journal_start 4.2 journal_stop 4.3 journal_get_create_access 4.4 journal_get_write_access 4.5 journal_dirty_data 4.6 journal_forget 5 关闭ext4 的Journal 0 Ext4的日志模式 ext4 支持根据用户需求采用多种模式的日志记录。例如,ext4 支持 Writeback 模式,它仅记录元数据;或 Ordered 模式,它记录元数据,但写为元数据的数据是从日志中写入的;或 Journal 模式(最可靠的模式),它同时记录元数据和数据。注意,虽然 Journal 模式是确保文件系统一致的最佳选择,但它也是最慢的,因为所有数据都要经过日志。

MySQL-05-管控

試著忘記壹切 提交于 2020-01-28 23:59:52
管控即自动化运维平台的建设,分为元数据管理、备份管理、实例管理、主机管理、任务管理、日志管理、日常维护。 标准化   标准化是规模化、自动化的基础。制定标准并使用 saltstack 来维护 DB 服务器基础的软件安装和文件配置规范: 磁盘统一做成 RAID5 模式扩大空间利用率。 统一 RAID 卡读写策略为 WB,IO 调度策略为 deadline,以及其他 SSD IO 方面的优化。 统一目录配置,通过端口进行区分,例如 my3306, my3307,在 my3306 下面创建对应的数据目录、日志目录、运行文件目录,tmp目录等。 每个实例独享一个配置文件,除 server_id , innodb_buffer_pool_size 等参数外其他参数均保持一致。 线上环境的 MySQL 软件目录和版本保持一致。 备份监控   如果没有统一的入口来查看备份结果是成功还是失败,DBA 对自己维护的数据库的备份有效性一无所知,出现异常问题需要恢复而又恢复不了的时候,会是致命的打击: 实时查看备份的执行情况,当前应备份实例个数,已完成实例数,备份失败的个数。 显示每个备份的耗费时长。 查看过去 5 天的备份统计信息,如总个数,大小等。 任务系统   所有的自动化管理平台中都需要一个核心组件-任务管理系统,主动或者被动进行各种任务调度。并需要支持多种类型的任务:支持按照时间(分钟,小时

QT信号槽连接

好久不见. 提交于 2020-01-28 04:14:42
一:信号槽是什么? Qt的信号和槽机制是Qt的一大特点,实际上这是和MFC中的 消息映射机制 相似的东西,要完成的事情也差不多,就是发送一个消息然后让其它窗口响应,当然,这里的消息是广义的说法,简单点说就是如何在一个类的一个函数中 触发 另一个类的另一个 函数调用,而且还要把相关的参数传递过去 .好像这和回调函数也有点关系,但是消息机制可比回调函数有用 二:Qt支持三种类型的信号-槽连接: 1,直接连接,当signal发射时,slot立即调用。此slot在发射signal的那个线程中被执行(不一定是接收对象生存的那个线程) 2,队列连接, 当控制权回到对象属于的那个线程的事件循环时,slot被调用 。此slot在接收对象生存的那个线程中被执行 3,自动连接(缺省),假如信号发射与接收者在同一个线程中,其行为如直接连接,否则,其行为如队列连接。 连接类型可能通过以向connect()传递参数来指定。注意的是,当发送者与接收者生存在不同的线程中,而事件循环正运行于接收者的线程中,使用直接连接是不安全的。同样的道理,调用生存在不同的线程中的对象的函数也是不是安全的。QObject::connect()本身是线程安全的。 用Qt写Gui程序的时候,在main函数里面最后依据都是app.exec();很多书上对这句的解释是, 使Qt程序进入消息循环 。 当前connectionType为Qt

Hive 简介

被刻印的时光 ゝ 提交于 2020-01-27 07:35:12
hive是基于Hadoop的一个 数据仓库 工具,可以将结构化的数据文件映射为一张数据库表,并提供简单的sql查询功能,可以将sql语句转换为MapReduce任务进行运行。 其优点是学习成本低,可以通过类SQL语句快速实现简单的MapReduce统计,不必开发专门的MapReduce应用,十分适合 数据仓库 的统计分析。 Hive是建立在 Hadoop 上的数据仓库基础构架。它提供了一系列的工具,可以用来进行数据提取转化加载(ETL),这是一种可以存储、查询和分析存储在 Hadoop 中的大规模数据的机制。Hive 定义了简单的类 SQL 查询语言,称为 HQL,它允许熟悉 SQL 的用户查询数据。同时,这个语言也允许熟悉 MapReduce 开发者的开发自定义的 mapper 和 reducer 来处理内建的 mapper 和 reducer 无法完成的复杂的分析工作。 Hive 没有专门的数据格式。 Hive 可以很好的工作在 Thrift 之上,控制分隔符,也允许用户指定数据格式。 Hive 构建在基于静态批处理的Hadoop 之上,Hadoop 通常都有较高的延迟并且在作业提交和调度的时候需要大量的开销。Hive 并不适合那些需要低延迟的应用。 Hive 是一种底层封装了Hadoop 的数据仓库处理工具,使用类SQL 的HiveQL 语言实现数据查询,所有Hive

获取 SQL Server 2005 中的元数据

心已入冬 提交于 2020-01-26 23:27:08
从一直在 Oracle 上做工作转到用 SQL Server,有些使用习惯还转不过来,最明显的就是习惯了键盘敲命令,现在得用鼠标双击拖拽窗口,比如以前一个“desc” 命令就可以列出表的结构,现在得鼠标左键右键点选半天才能看到。虽说图形管理界面简单直观易上手,但对我来说,还是喜欢命令行,喜欢脚本操作。 不过喜欢归喜欢,新东西该学还得学,该适应还得适应。从 Oracle 的经验知道,所有的数据库操作都可以用 sql 脚本完成,大到建一个数据库,小到改一个字段的值,sql 无所不能。MS SQL Server 2005 中 SQL Server Management Studio 的出现,其易用性更上一层楼,但对 sql 命令的支持却也是毫不含糊的。上面提到的 desc 功能,可以用如下 sql 语句实现: SELECT * FROM INFORMATION_SCHEMA.COLUMNS where table_name='表名' 这句话里面的“INFORMATION_SCHEMA.COLUMNS”是个“信息架构视图”,可以获取表的列信息,类似的视图还有INFORMATION_SCHEMA.Tables、INFORMATION_SCHEMA.Views、INFORMATION_SCHEMA.Schema 等等,分别能获取有关表、视图和架构的信息。信息架构视图是 SQL Server

数据保护平台如何为新一代应用,人工智能和数据科学提供动力

只愿长相守 提交于 2020-01-26 19:29:21
我最坚信的信念之一是,通过有效地构建,管理和发展其数据供应链来学习如何充分利用其数据的公司将获得持久的竞争优势。现在拥有如此多的数据,公司必须将其数据视为其最有价值的资产之一。这些数据供应链必须像其他任何系统或分发网络一样平稳运行。 然而,数据供应链提出了独特的挑战。要使数据供应链无缝运行非常困难,因为它必须从许多来源收集数据,将其提炼成有用的形式,然后能够根据需要将特定的子集交付给业务。数据不是万能的,因此您的数据供应链必须像数据多样化一样灵活。 为了构建最佳的数据供应链,公司应识别其库存中已拥有的资产。这是他们经常忽略的仓库,因为几乎每家公司都有一个存储库,可悲的是,它没有充分利用作为业务洞察力的来源:备份。 备份不仅需要放在架子上,而且仅在其他数据丢失时才可以拉入。实际上,它们可以推动创新。怎么样?好了,现在所谓的数据保护的整个过程变得更加复杂。在本故事中,我们将以Commvault为例,说明数据保护系统如何创建一个集中而全面的数据存储库,该存储库不仅可以用作备份,还可以成为使用数据存储新方法的基础。创造价值。 换句话说,我们将探索现代数据保护平台如何帮助您构建和运行支持新类型的应用程序,人工智能和数据科学的数据供应链。 数据保护如何成为一个全面的数据平台 过去,数据保护全都与备份有关。我们都记得软盘,以及80年代后期的高科技电影如何无法避免涉及备份状态的戏剧性变化

Hive性能优化

帅比萌擦擦* 提交于 2020-01-26 17:27:17
http://www.cnblogs.com/smartloli/ 1.概述   这个标题也是用血的教训换来的,希望对刚进入hive圈的童鞋和正在hive圈爬坑的童鞋有所帮助。打算分以下几个部分去描述: Hive的结构 Hive的基本操作 Hive Select Hive Join Hive UDF Hive的M/R 使用Hive注意点 优化及优化详情 优化总结 调优的经常手段 解决Hive问题的途径   这篇文章只是起个头,为描述其他部分做下准备。下面我赘述下Hive的结构和一些基本的操作。 2.介绍    Hive 是建立在 Hadoop 上的数据仓库基础构架。它提供了一系列的工具,可以用来进行数据提取转化加载(ETL),这是一种可以存储、查询和分析存储在 Hadoop 中的大规模数据的机制。Hive 定义了简单的类 SQL 查询语言,称为 HQL,它允许熟悉 SQL 的用户查询数据。同时,这个语言也允许熟悉 MapReduce 开发者的开发自定义的 mapper 和 reducer 来处理内建的 mapper 和 reducer 无法完成的复杂的分析工作。   首先,我来说说什么是hive(What is Hive?),请看下图:   由于是在Retina下截的屏,为避免网络原因显示不出图片,这里为也用文字描述以下。这个和介绍中描述的内容大致是一致的