DeltaLake论文阅读笔记
DeltaLake论文:Lakehouse: A New Generation of Open Platforms that Unify Data Warehousing and Advanced Analytics
论文原文地址:http://cidrdb.org/cidr2021/papers/cidr2021_paper17.pdf
原文阅读摘要1.Lakehouse基于开源的数据格式,比如Parquet
2.Lakehouse对机器学习和数据科学的支持很好
3.Lakehouse提供了很好的确保状态一致性的性能
介绍第一代数仓支撑了BI,但需要严格按照数据库schema去写,来确保为了下游的BI工具可以消费
但是第一代的数据架构面临着一些问题。1.存算集中在一起。2.越来越多的数据集存在非结构化数据。
为了解决这些问题,第二代的数据分析平台提供了原始数据存储,形成了数据湖。数据湖架构是在读数据时才决定数据schema的体系。
当前广泛采用双层架构
但是这种双层架构会有以下四个问题
1.可靠性。保证数据湖和数仓的数据一致性是很困难的。在两个系统之间进行ETL会引入很多问题 ...
使用Nginx同时代理Web服务与Trojan(或其他TCP/UDP服务)
整体部署可以分为三个部分:Nginx+Web服务+Trojan
其中web服务可以是任意自定义的服务,在本文最后给出我的web服务的配置,但不做过多说明。
另外,Trojan使用docker部署,Nginx使用宿主机部署的服务
一些前提条件
需要有自己的域名,可以考虑申请使用免费的域名(eu.org),但是需要有一段时间的审核,申请的教程参考https://iweec.com/363.html
需要申请ssl证书,建议使用certbot,安装教程有很多,安装完成后可以使用如下命令申请自定义证书
12345678apt install certbotapt install python3-certbot-nginx# 仅申请,不进行安装certbot certonly --nginx -d test.example.org# 可以通过crontab配置renewcrontab -e# 在打开的编辑器中放入以下内容0 12 * * * /usr/bin/certbot renew --quiet
Trojan代理服务部署来自ChatGPT的说明:
Trojan代理服务是一种基于Tro ...
白嫖系列-基于GitHub Action和国内公网服务器构建免费科学工具
重要说明:这篇文章仅用于技术探讨,请遵守相关法律法规
环境准备Github ActionGithub Action是一种持续集成和部署(CI/CD)平台,可用于自动生成、测试和部署。详细介绍请参考官网
由于Github本身是在外网,在本文中便是借助这个临时环境部署了WS+VMESS环境来进行科学上网。(关于VMESS是什么请谷哥或度娘)。
Github Action可以在公开的仓库中免费使用,下面主要介绍与本文相关的主要功能和概念。
Github Action基本介绍Action的功能在这里可以直接看到
Action主要通过写yaml文件进行定义,yaml文件需要定义在.github/workflows路径下
下面给出一个简单的action文件的组成部分
12345678910111213141516171819name: action name # 这里是描述这个action的名字on: # action的触发条件,比如手动、定时、收到push事件等 workflow_dispatch: # 这个表示,该action可以手动触发 schedule: # 定时调度 ...
K3S 安装及部署
K3s简介
Lightweight Kubernetes. Easy to install, half the memory, all in a binary of less than 100 MB.
K3s是K8s轻量级的发行版,K3s完全兼容K8s,主要是为了边缘计算和物联网,所以K3s也支持ARM架构。
安装前置条件通用
If all your nodes have the same hostname, use the --with-node-id option to append a random suffix for each node, or otherwise devise a unique name to pass with --node-name or $K3S_NODE_NAME for each node you add to the cluster.
每个主机不能有相同的名字,如果有相同的名字可以使用--with-node-id参数来生成随机后缀,或者使用--node-name或变量$K3S_NODE_NAME指定节点名称。
操作系统对于Red Hat ...
利用Let's Encrypt获取免费的证书
Let’s Encrypt简介(摘自官网文档)为了在你的网站上设定HTTPS,你需要从凭证颁发机构(Certificate Authority, CA) 获取凭证,而Let’s Encrypt 就是一个凭证颁发机构。要从Let’s Encrypt 上获得属于你网站的凭证,你必须证明你对域名的控制权。你可以在你的主机上运行使用ACME 协议的软件,来获取Let’s Encrypt 的凭证。
Let’s Encrypt 和 ACME 协议的目标是使配置能够自动获取受信任浏览器的证书的 HTTPS 服务器成为可能。 这是通过在 web 服务器上运行证书管理代理来完成的。
域名认证Let’s Encrypt 通过公钥识别服务器管理员。 证书管理软件首次与 Let’s Encrypt 交互时,会生成新的密钥对,并向 Let’s Encrypt CA 证明服务器控制着一个或多个域名。 这类似于创建帐户和向该帐户添加域名的传统证书颁发流程。
ACME客户端Let’s Encrypt 使用 ACME 协议来验证您对给定域名的控制权并向您颁发证书。 要获得 Let’s Encrypt 证书,您需要选择一 ...
如何利用iptables管理docker开放的端口?
如何利用iptables管理docker开放的端口?环境准备操作系统操作系统使用的ubuntu20.04.3,全新安装的环境
防火墙ubuntu20使用的ufw,先把这个停止,这次测试主要使用iptables-services和docker,关闭其余防火墙的影响
安装iptables1234# 默认已经安装apt install iptables# centos需要安装iptables-servicesyum install iptables-services
初始配置iptables1234# 创建存放配置文件的目录mkdir /etc/sysconfig# 创建iptables配置文件vi /etc/sysconfig/iptables
初始化配置文件内容如下(顺序有关)
12345678910111213141516171819202122# 使用filter表*filter# 下面三条内容定义了内建的INPUT、FORWAARD、ACCEPT链:INPUT ACCEPT [0:0]:FORWARD ACCEPT [0:0]:OUTPUT ACCEPT [0:0]# 允许本 ...
MacOS M1 Python 使用Oracle数据库|安装Oracle 客户端|安装cx_oracle包
安装rosetta2(可选)这是一个将x86程序翻译至m1的软件
直接安装即可
1/usr/sbin/softwareupdate --install-rosetta
安装x86_64 brew(可选)
为了安装其他x86架构的软件方便,此次不安装也可以
ARM版brew安装
访问官网:https://brew.sh/index_zh-cn
使用命令安装即可
1/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
X86版本 brew在命令前增加arch -x86_64
1arch -x86_64 /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
多版本共存在 ~/.zprofile文件中添加如下内容
12alias abrew='arch -arm6 ...
ESXi镜像自定义(集成网卡驱动)及硬盘分区
ESXi镜像自定义(集成网卡驱动)及硬盘分区安装ESXi至物理机时,需要提前查看硬件兼容列表,此次安装时发现ESXi原生没有RTL-r8168网卡驱动,需要将网卡驱动打包至ESXi镜像中。
目前(2021-11-20)尝试过后,ESXi7.0暂无法使用该网卡(r8168)
ESXi镜像自定义ESXi镜像自定义有两种方式,一是使用Powershell脚本安装,另一种是自己使用命令打包镜像。
环境准备PowerCLI安装当前版本VMware Power CLI安装较为容易,官网链接:https://developer.vmware.com/powercli
step1: 使用管理员身份打开powershell
step2:粘贴Install-Module -Name VMware.PowerCLI然后回车
ESXi官方镜像文件准备(脚本安装时可选)自定义ESXi镜像时,不能直接使用iso文件,需要使用Offline Bundle文件,点击官方下载链接,或者访问我的下载链接
网卡驱动准备(以r8168为例)下载网卡驱动,vib格式在使用脚本打包的时候会用到,Offline Bundle格 ...
使用Docker搭建Nextcloud个人工作中心
使用Docker搭建Nextcloud个人工作中心(同步盘+离线下载+。。。)(完整版)这真是,迄今为止最为折腾的一个部署工作了,工作的起因是自己的onedrive教育版又挂了。。。
前言需求首先要明确的是,到底有没有使用网盘的需求,如果你经常共享文件,或者需要备份自己的资料,或者你有多个终端,或者你需要移动办公。。。等等
如果你确实有这样的需求,或者你正在使用市面上的网盘,自己再喜欢动动手,或者需要保存一些小秘密,那么继续往下看。
选型网盘又分为备份盘和同步盘。顾名思义,备份盘主要是用来存储文件,比如百度网盘(除工作空间功能)、阿里云盘、微云、天翼云盘、115网盘等等,都算是备份盘,或者大家主要使用的功能都是备份盘的功能。而同步盘则主要有坚果云、Onedrive等(国外的了解的不多),其中百度网盘、天翼云盘、微云,也都有同步盘的功能。
我之前一直用的是Onedrive,期间尝试过上述的各种盘,但是效果均不尽人意,算是各有各的缺点吧。我的场景主要是用来同步全盘的数据,这样做有个好处,就是如果我重做系统,或者换设备了,不用来回倒数据,而且同步盘一般也都支持文件版本的功能,写word文档或 ...
FRP端口转发工具
FRP端口转发工具及部署方式详解(win+linux)前言在此前的文章中,介绍了使用ssh命令进行端口转发。
使用ssh进行端口转发有优点也有缺点,其优点主要在使用方便,服务器上基本都安装了ssh服务用来进行远程登录,因此只要有ssh命令就能实现端口转发的功能。但其缺点也很明显,主要在于远程转发、本地转发、动态转发等配置参数让使用者常常混淆,使用频率不高时也记不住这些参数。如果忘记设置ssh保活或出现网络波动导致链接断开也不方便自动重连,常常需要用户自己再写脚本来维护,这也增加了复杂性。
在实际使用中使用ssh来进行临时的端口转发比较方便,但是如果我们想建立一个长期的转发链接的时候(比如转发Windows的远程访问端口,可以随时远程访问放在固定位置的电脑),在使用ssh就可能要自己造一些轮子。
为方便起见,更推荐使用frp工具进行端口转发。
frp工具介绍frp 是一个专注于内网穿透的高性能的反向代理应用,支持 TCP、UDP、HTTP、HTTPS 等多种协议。可以将内网服务以安全、便捷的方式通过具有公网 IP 节点的中转暴露到公网。
frp是采用go语言编写的开源工具,go保证了高效 ...