最近 自用笔记
linux安装texlive最简单方法
前置准备
安装docker,这里略
使用docker安装texlive
可以在dockerhub上找到官方镜像https://hub.docker.com/r/texlive/texlive
拉取镜像并启动容器:
docker pull texlive/texlive
docker run -it --name latex texlive/texlive:latest /bin/bash
使用vs code在latex docker环境中编辑
方法1:直接进入容器
vs code安装Dev Containers扩展,左下角点击远程环境,选择Attach to running Container,打开工作目录即可
方法2:容器开放ssh供远程链接
注:下面方法相当于重新基于镜像启动了一个新容器
docker run -d -it -p 36001:22 --name latex texlive/texlive:latest /bin/bash
service ssh start
# 用`Ctrl+P+Q`命令保持后台运行退出容器
vs code远程ssh链接36001端口即可
Chrome Extension开发入门
本篇主要是开发的一些实践,可读性还比较粗糙,有待进一步施工
参考:
https://developer.chrome.com/docs/extensions/get-started (官方教程)
https://github.com/sxei/chrome-plugin-demo
https://www.pipipi.net/24804.html
方法调研:background模块(chrome extension模块),Message Passing API(chrome extension api),Broadcast Channel(发布-订阅模式),SharedWorker API(多TAB共享后台线程),localStorage/sessionStorage(本地浏览器存储)
HelloWorld
manifest.json
{
"manifest_version": 3,
"name": "Hello Extensions",
"description": "Base Level Extension",
"version": "1.0",
"action": {
"default_popup": "hello.html",
"default_icon": "hello_extensions.png"
}
}
hello.html
<html>
<body>
<h1>Hello Extensions</h1>
</body>
</html>
chrome://extensions->Enable Developer Mode->Load unpacked button and select the extension directory
Reload
Extension component | Requires extension reload |
---|---|
The manifest | Yes |
Service worker | Yes |
Content scripts | Yes (plus the host page) |
The popup | No |
Options page | No |
Other extension HTML pages | No |
ReadTime
manifest.json
Hive上手
参考:《Hive编程指南》第一版,Hive官方wiki,https://bbs.huaweicloud.com/blogs/197920
《Hive编程指南》第一版出版于2013年,此时hive2尚未发布,如今hive3已经普及,很多知识已经过时,这里仅为学习
Hive是一个开源的数据仓库框架,基于Hadoop生态系统,用于处理和分析大量的结构化和半结构化数据。
Hive提供了一个类似于SQL的查询语言,称为HiveQL(Hive Query Language),允许用户编写查询来分析存储在Hadoop分布式文件系统(HDFS)或其他兼容的存储系统(如Amazon S3)中的数据。HiveQL查询会被转换成一系列的MapReduce作业,然后在Hadoop集群上执行。Hive还支持其他执行引擎,如Apache Tez和Apache Spark。
Hive发行版中附带的模块有CLI,一个成为Hive网页界面(HWI)的简单网页界面,以及可通过JDBC、ODBC和一个Thrift服务器(参考第16章)进行编程访问的几个模块
所有的命令和查询都会进入到Driver(驱动模块),通过该模块对输入进行解析编译,对需求的计算进行优化,然后按照指定的步骤执行。当需要生成MR任务(job)时,Hive通过一个表示”job执行计划“的XML文件驱动执行内置的、原生的Mapper和Reducer模块。
Hive通过和JobTracker通信来初始化MR任务,而不必部署在JobTracker所在节点
Metastore是一个独立的关系型数据库,Hive会在其中保存表模式和其它系统源数据
单节点安装和使用HIVE
准备
java 1.8
hadoop 3.4.0
hive安装包https://dlcdn.apache.org/hive/,版本3.1.3
wget https://dlcdn.apache.org/hive/hive-3.1.3/apache-hive-3.1.3-bin.tar.gz
tar -xzvf apache-hive-3.1.3-bin.tar.gz
MySQL安装与配置
hive的使用metastore保存数据元信息,这里使用mysql
卸载机器自带mysql:
yum remove mariadb mariadb-libs
安装:
yum install TXSQL-client.x86_64
启动mysql:
# 启动mysql
sudo service mysql start
# 测试登录,mysql5.7默认root用户初始密码为空
mysql -u root
此时有权限问题无法登录,进行如下步骤:
# 停止mysql服务
sudo service mysql stop
# 以安全模式启动MySQL
sudo mysqld_safe --skip-grant-tables &
# 登录mysql
mysql -u root
修改root用户密码
update mysql.user set authentication_string=PASSWORD('newPwd'), plugin='mysql_native_password' where user='root';
flush privileges;
重启服务