大数据
文章平均质量分 61
围城客
coder
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
简单的postgersql存储过程样例
postgresql存储过程样例原创 2023-02-16 14:43:04 · 1009 阅读 · 0 评论 -
PostgreSQL根据元数据批量生成建表语句
PostgreSQL根据元数据批量生成建表语句原创 2023-02-08 17:09:53 · 1581 阅读 · 0 评论 -
PostgreSQL 查找替换函数
PostgreSQL 查找替换函数的使用和实例原创 2023-02-08 16:58:41 · 20705 阅读 · 0 评论 -
为什么要进行数据治理
数据治理的必要性原创 2022-11-03 18:15:16 · 3151 阅读 · 0 评论 -
数据仓库设计规范
1-为什么要有规范?俗话说的好,无规矩不成方圆,没有规范岂不乱套了? 老彭觉得,规范是为了解决团体作战中的效率和协同问题,是对最终交付质量的有力保证。工作中有没有遇到类似的问题? 接到了一个需求,不知道该从那张表出数,表A貌似可以,表B好像也行。问了同事甲,他说他每次都是从C表出的。对着三张表探索了好久,发现谁跟谁都对不上,算了吧,我从源头再算一次吧,结果又变出来一张表D。 数据库里几千张表,好像我用到的也就那么十几张,其它的都是干啥用的呢,问了一圈没有人知道,删掉吧?更没有人敢动。原创 2022-05-19 10:37:04 · 2242 阅读 · 0 评论 -
2022中国面向人工智能的数据治理行业研究报告
前言:数据与数据治理数据资产数字经济的“货币”,早已不限于数字形式“数据资产化”是企业发展的重要内涵。“数据”并不仅指以数字形式存储的信息,根据其特性及治理方法可以划分为内部数据与外部数据,结构化数据、非结构化数据与半结构化数据,元数据与主数据等。正在上传…重新上传取消数据爆发IT设施“扩容”、IoT广泛连接带来数据暴增数据时代来临,大量业务数据被采集、存储,以支撑企业数字化和创造经济效益。但很多企业早期的信息化建设缺乏统筹规划,导致数据孤岛,数据不规...原创 2022-05-19 21:47:47 · 2151 阅读 · 0 评论 -
国际业务跨越多个时区的数据处理方案
国际业务跨越多多个国家或者地区的时候,业务数据也会随着时区的不同产生不统一的发生时间,这就会给数据抽取,加载,清洗,统计等多个环节带来很多问题。原创 2021-06-05 16:35:57 · 3137 阅读 · 2 评论 -
元数据作用
元数据作用与其说数据仓库是软件开发项目,还不如说是系统集成项目,因为它的主要工作是把所需的数据仓库工具集成在一起,完成数据的抽取、转换和加载,OLAP分析和数据挖掘等;元数据在数据仓库中起到了承上启下得作用。具体表现如下:1.元数据是进行数据集成所必需的数据仓库最大的特点就是它的集成性。这一特点不仅体现在它所包含的数据上,还体现在实施数据仓库项目的过程当中。一方面,从各个数据源中抽...原创 2019-11-29 22:26:18 · 849 阅读 · 0 评论 -
数据仓库中的元数据管理
本文主要介绍什么是元数据、为什么要管理元数据、怎样管理元数据。1、什么是元数据? 狭义的解释是用来描述数据的数据;广义的来看,除了业务逻辑直接读写处理的那些业务数据,所有其它用来维持整个系统运转所需的信息、数据都可以叫作元数据; 按照传统的定义,元数据(Metadata)是关于数据的数据。在数据仓库系统中,元数据可以帮助数据仓库管理员和数据仓库的开发人员非常方便地找...原创 2019-11-29 22:15:28 · 1221 阅读 · 0 评论 -
Python列表元素删除的三种方式_删除本质是数组元素拷贝
del删除 删除列表指定位置的元素。本质上是数组的拷贝,id(a)的地址不变。1 >>> a = [100,200,888,300,400]2 3 >>> del a[2]4 5 >>> a6 7 [100, 200, 300, 400]二:pop()方法 pop()删除...原创 2019-08-30 15:52:50 · 1228 阅读 · 0 评论 -
Python列表元素的访问_元素出现次数统计_成员资格判断
一、通过索引直接访问元素索引的区间在[0, 列表长度-1]这个范围。超过这个范围则会抛出异常a = [1,2,3,4,5,6,7,8]print(a[3]) #结果:4二、index()获得指定元素在列表中首次出现的索引语法是:index(value,[start,[end]]) 其中,start 和 end 指定了搜索的范围b = [10,20,30,40,50,20,30,2...原创 2019-08-30 16:01:31 · 810 阅读 · 0 评论 -
Python列表排序_revered逆序_max_min_sum
一、修改原列表,不新建列表的排序import randoma = [20,30,10,40]a.sort() #列表的sort()函数方法,默认升序排序print(a) #结果:[10, 20, 30, 40]a.sort(reverse=True) #列表的sort()函数方法,reverse=True,表示降序排序print(a)...原创 2019-08-30 16:10:06 · 701 阅读 · 0 评论 -
Python列表_二维列表_表格数据的存储和读取
二维列表 一维列表可以帮助我们存储一维、线性的数据。 二维列表可以帮助我们存储二维、表格的数据。例如下表的数据: 【操作】 1 >>> a = [ 2 ["高小一",18,30000,"北京"], 3 ["高小二",19,20000,"上海"], 4 ["高小三",20,10000,"深圳"], 5 ] 6 ...原创 2019-08-30 16:20:04 · 5019 阅读 · 0 评论 -
Python元组的创建
一、元组(tuple)特点列表属于可变序列,可以任意修改列表中的元素。元组属于不可变序列,不能修改元组中的元素。因此,元组没有增加元素、修改元素、删除元素相关的方法。二、元组的创建-()通过()创建元组,小括号可以省略a=(10,20,30)a=10,20,30如果元组只有一个元素,则必须后面加逗号。这是因为解释器会把(1)解释为整数 1,(1,)才解释为元组a=(1) #结...原创 2019-09-02 10:33:48 · 862 阅读 · 0 评论 -
Python元组元素访问_计数方法_切片操作_成员资格判断
一、元组的元素不能修改,只能访问a=tuple("abcdef")print(a[1]) #结果:ba[1]=10 #结果会报错,不支持元素赋值二、元组的访问和列表一样,元组访问后返回的仍然是元组a=(10,20,30,40,50)print(a[2]) #结果:30print(a[:]) #结果:(10,20,30,40,50)print(a[1:3])...原创 2019-09-02 10:59:19 · 1653 阅读 · 0 评论 -
Python生成器推导式创建元组
从形式上看,生成器推导式与列表推导式类似,只是生成器推导式使用小括号。列表推导式直接生成列表对象,生成器推导式生成的不是列表也不是元组,而是一个生成器对象。我们可以通过生成器对象,转化成列表或者元组。也可以使用生成器对象的__next__()方法进行遍历,或者直接作为迭代器对象来使用。不管什么方式使用,元素访问结束后,如果需要重新访问其中的元素,必须重新创建该生成器对象。s=(x*2 ...原创 2019-09-02 11:35:37 · 1229 阅读 · 2 评论 -
Python字典特点-4种创建方式-dict_zip_formkeys
字典是"键值对"的无序可变序列,字典中的每个元素都是一个"键值对",包含:"键对象"和"值对象"。可以通过"键对象"实现快速获取、删除、更新对应的"值对象"。 列表中我们通过"下标数字"找到对应的对象。字典中通过"键对象"找到对应的"值对象"。 "键"是任意的不可变数据,比如:整数、浮点数、字符串、元组。但是:列表、字典、集合这些可变对象,不能作为"键"。并且"键"不可重复。"值"可以...原创 2019-09-02 14:41:46 · 984 阅读 · 1 评论 -
Python字典元素的访问
字典元素的访问: 1. 通过 [键] 获得“值”。若键不存在,则抛出异常。 1 >>> a = {'name':'jack','age':18,'job':'programmer'} 2 >>> a['name'] 3 'jack' 4 >>> a['age'] 5 18 6 >>> a['sex'] ...原创 2019-09-03 14:22:03 · 2789 阅读 · 0 评论 -
Python字典元素的,添加,修改,删除
一、给字典新增"键值对"。如果"键"已经存在,则覆盖旧的键值对;如果"键"不存在,则新增"键值对"a={'age': 18, 'name': 'gaoqi', 'job': 'techer'}a["tel"]=123456print(a) #结果:{'name': 'gaoqi', 'job': 'techer', 'age': 18, 'tel': 123456}a["name"]="...原创 2019-09-03 15:36:47 · 14824 阅读 · 0 评论 -
python字典序列解包用于列表元组字典
序列解包可以用于元组、列表、字典。序列解包可以让我们方便的对多个变量赋值。x,y,z=(10,20,30)print(x) #结果:10print(y) #结果:20print(z) #结果:30(a,b,c)=(40,50,60)print(a) #结果:40print(b) #结果:50print(c) #结果:60[q,w,e]=[70,80,90]pr...原创 2019-09-03 16:04:31 · 1200 阅读 · 0 评论 -
python条件表达式-单分支
一、单分支选择结构if 语句单分支结构的语法形式如下:if 条件表达式: 语句/语句块其中:1、条件表达式:可以是逻辑表达式、关系表达式、算术表达式等等。2、语句/语句块:可以是一条语句,也可以是多条语句。多条语句,缩进必须对齐一致。二、条件表达式详解在选择和循环结构中,条件表达式的值为 False 的情况如下:False、0、0.0、空值None、空序列对象(空列表、...原创 2019-09-03 17:07:07 · 2198 阅读 · 0 评论 -
python双分支选择结构和三元运算符的使用详解
双分支结构的语法格式如下:if 条件表达式 : 语句 1/语句块 1else: 语句 2/语句块 2三元条件运算符:"条件为真时的值" if (条件表达式) else "条件为假时的值"num1 if (条件表达式) else num2解释:条件表达式为真时,输出num1,条件表达式为假时,输出num2举例:s=input("请输入一个数:")if int(...原创 2019-09-03 17:14:20 · 1622 阅读 · 0 评论 -
python多分枝结构
一:多分支选择结构 多分支选择结构的语法格式如下: if 条件表达式 1 : 语句 1/语句块 1 elif 条件表达式 2: 语句 2/语句块 2 . . elif 条件表达式 n : 语句 n/语句块n [else: 语句 n+1/语句块 n+1 ] 注:多...原创 2019-09-03 17:18:43 · 7321 阅读 · 0 评论 -
python选择结构的嵌套
选择结构可以嵌套,使用时一定要注意控制好不同级别代码块的缩进量,因为缩进量决定了代码的从属关系。语法格式如下:if 表达式1: 语句块 1 if 表达式 2: 语句块 2 else: 语句块 3else: if 表达式 4: 语句块 4 举例:输入一个分数。分数在 0-100 之间。90 以上是...原创 2019-09-03 17:29:51 · 3325 阅读 · 0 评论 -
python中while循环结构
#打印0-10的数字num=0while num<=10: print(num,end="\t") num+=1#计算0-100之间的累加和num=0sum=0while num<=100: sum=num+sum num += 1 #必须要有循环退出的标记,否则就会陷入死循环print(sum)...原创 2019-09-05 17:10:33 · 1212 阅读 · 0 评论 -
Python中的生成器
生成器也是一种迭代器,简单地讲,yield 的作用就是把一个函数变成一个 generator,带有 yield 的函数不再是一个普通函数,Python 解释器会将其视为一个 generator,调用 fab(5) 不会执行 fab 函数,而是返回一个 iterable 对象!在 for 循环执行时,每次循环都会执行 fab 函数内部的代码,执行到 yield b 时,fab 函数就返回一个迭代值,...原创 2019-08-28 14:47:31 · 187 阅读 · 0 评论 -
Python列表元素的5种添加方式以及效率问题
当列表增加和删除元素时,列表会自动进行内存管理,大大减少了程序员的负担。但这个特点涉及列表元素的大量移动,效率较低。除非必要,我们一般只在列表的尾部添加元素或删除元素,这会大大提高列表的操作效率。一、append()方法原地修改列表对象{不会创建新的对象},在列表尾部追加新的元素,速度最快,推荐使用a = [10,20]a.append(30)print(a) #结果:[10,...原创 2019-08-30 15:37:33 · 3736 阅读 · 0 评论 -
Python创建列表的4种方式
一、基本语法[]创建a = []print(a) #结果,创建空的列表 []b = [1,2,"abc"]print(b) #结果:[1, 2, 'abc']print(b[2]) #结果:abc二、list()创建c = list()print(c) #结果:创建一个空的列表c.append(1)print(c) #结果:[1]c ...原创 2019-08-30 15:28:18 · 145536 阅读 · 0 评论 -
Python中的GIL
Python并不支持真正意义上的多线程。Python中提供了多线程包,但是如果你想通过多线程提高代码的速度,使用多线程包并不是个好主意。Python中有一个被称为Global Interpreter Lock(GIL)的东西,它会确保任何时候你的多个线程中,只有一个被执行。线程的执行速度非常之快,会让你误以为线程是并行执行的,但是实际上都是轮流执行。经过GIL这一道关卡处理,会增加执行的开...原创 2019-08-29 10:07:52 · 140 阅读 · 0 评论 -
Python匿名函数lambda
python允许用lambda关键字创造匿名函数。匿名是不需要以标准的方式来声明,比如说使用 def 语句。(除非赋值给一个局部变量,这样的对象也不会在任何的名字空间内创建名字,上面的例子中会创建名字。) 作为函数,它们也能有参数。一个完整的 lambda"语句"代表了一个表达式,这个表达式的定义体必须和声明放在同一行。语法如下:lambda [arg1[, arg2, ... argN]]:...原创 2019-08-28 15:17:44 · 292 阅读 · 1 评论 -
Python中assert断言
assert断言语句用来声明某个条件是真的,其作用是测试一个条件(condition)是否成立,如果不成立,则抛出异。一般来说在做单元测试的时候用的比较多,在生产环境代码运行的情况下,不建议使用断言,会让程序abort掉。什么时候使用断言保护性的编程正常情况下,并不是防范当前代码发生错误,而防范由于以后的代码变更发生错误。 运行时序逻辑的检查这种情况一般都是很严重的,防止脏数据或...原创 2019-08-28 15:09:49 · 1753 阅读 · 0 评论 -
Python中的装饰器
装饰器(Decorators)是 Python 的一个重要部分。简单地说:他们是修改其他函数的功能的函数。他们有助于让我们的代码更简短,也更Pythonic(Python范儿)。大多数初学者不知道在哪儿使用它们,所以我将要分享下,哪些区域里装饰器可以让你的代码更简洁。 首先,让我们讨论下如何写你自己的装饰器。这可能是最难掌握的概念之一。我们会每次只讨论一个步骤,这样你能完全理解它。一切皆对...原创 2019-08-28 15:06:24 · 238 阅读 · 0 评论 -
Python中的闭包
如果在一个函数的内部定义了另一个函数,外部的我们叫他外函数,内部的我们叫他内函数。闭包: 在一个外函数中定义了一个内函数,内函数里运用了外函数的临时变量,并且外函数的返回值是内函数的引用。这样就构成了一个闭包。一般情况下,在我们认知当中,如果一个函数结束,函数的内部所有东西都会释放掉,还给内存,局部变量都会消失。但是闭包是一种特殊情况,如果外函数在结束的时候发现有自己的临时变量将来会...原创 2019-08-28 14:55:11 · 409 阅读 · 0 评论 -
Python中什么是猴子补丁
在运行期间动态修改一个类或模块Monkey Patch带了便利的同时也有搞乱源代码优雅的风险。原创 2019-08-28 14:50:14 · 202 阅读 · 0 评论 -
Python中的迭代器
说迭代器之前有两个相关的名词需要介绍:可迭代对象:只要定义了__iter__()方法,我们就说该对象是可迭代对象,并且可迭代对象能提供迭代器。迭代器:实现了__next__()或者next()(python2)方法的称为迭代器,迭代器仅仅在迭代到某个元素时才计算该元素,而在这之前或之后,元素可以不存在或者被销毁,因此只占用固定的内存。迭代:当我们使用一个循环来遍历某个东西时,这个过程本...原创 2019-08-28 14:40:37 · 234 阅读 · 0 评论 -
Python列表和元祖有什么不同
相同点:都是序列类型回答它们的区别之前,先来说说两者有什么相同之处。list 与 tuple 都是序列类型的容器对象,可以存放任何类型的数据、支持切片、迭代等操作 >>> foos = [0, 1, 2, 3, 4, 5, 6, 7, 8, 9] >>> foos[0:10:2] [0, 2, 4, 6, 8] >&g...原创 2019-08-28 14:36:28 · 609 阅读 · 0 评论 -
Python深拷贝和浅拷贝的区别
首先深拷贝和浅拷贝都是对象的拷贝,都会生成一个看起来相同的对象,他们本质的区别是拷贝出来的对象的地址是否和原对象一样,也就是地址的复制还是值的复制的区别。什么是可变对象,什么是不可变对象:可变对象是指,一个对象在不改变其所指向的地址的前提下,可以修改其所指向的地址中的值;不可变对象是指,一个对象所指向的地址上值是不能修改的,如果你修改了这个对象的值,那么它指向的地址就改...原创 2019-08-28 14:30:42 · 1067 阅读 · 0 评论 -
Python中Is 和 == 的区别
在讲is和==这两种运算符区别之前,首先要知道Python中对象包含的三个基本要素,分别是:id(身份标识)、type(数据类型)和value(值)。is和==都是对对象进行比较判断作用的,但对对象比较判断的内容并不相同。下面来看看具体区别在哪。==比较操作符和is同一性运算符区别==是python标准操作符中的比较操作符,用来比较判断两个对象的value(值)是否相等,例如下面两个字...原创 2019-08-28 14:26:06 · 278 阅读 · 0 评论 -
Hbase的常用操作
HBase Shell通用命令status: 提供HBase的状态,例如,服务器的数量。version: 提供正在使用HBase版本。table_help: 表引用命令提供帮助。whoami: 提供有关用户的信息。数据定义语言这些是关于HBase在表中操作的命令。create: 创建一个表。list: 列出HBase的所有表。 disable: 禁用表。 i...原创 2019-02-21 11:32:55 · 401 阅读 · 0 评论 -
Python中xrange 和 range的区别
xrange 和 range的区别a)xrange 生成的是一个生成器,range生成的是一个list对象b)要生成很大的数字序列的时候,使用xrange会比使用range性能更优range([start], [end], [long])描述:根据range里的参数生成指定范围指定步长的一个序列参数:[start]——指定范围的左边界,可取到[end]——指定...原创 2019-08-29 10:09:33 · 564 阅读 · 0 评论
分享