中创算力|分布式维基百科新语言版本服务上线,IPFS助力Web3.0!
分布式维机百科
分布式维机百科镜像服务和Kiwix项目很高兴宣布更新后的镜像服务可以开始提供广泛可用的服务,更多的新语言版本镜像服务也正式上线。
英文版、土耳其语版、缅甸语、阿拉伯语、中文、俄语
你可以随时在ipfs.kiwix.org找到最新的列表,还能通snapshot-hashes.yml文件来获取。
开始时间
分布式维机百科镜像服务的想法可以追溯到2017年,当时IPFS项目创建了英文和土耳其语的内容快照并存放到IPFS网络上。要了解我们这样做的目的,请阅读最初的IPFS上的维机百科 一文。
下面是一个简短的状态简报,包括了优化后的使用方法,当前搭建过程及存在的问题,以及未来可以贡献到该项目的工作。
访问维机百科镜像服务的改进方法
用户友好型的ipns://{dnslink}及公共网关
带有IPFS地址支持的浏览器Brave, Opera, 或常规的Firefox和Chromium装上IPFS Companion就可以使用 DNSLink载入最新的快照:
ipns://{dnslink}
ipns://en.wikipedia-on-ipfs.org
为了确保真正的点对点传输,离线存储和内容的完整性,你可以运行自己的IPFS节点,方法是(命令行)或IPFS Desktop桌面端和IPFS Companion浏览器扩展工具的结合。你也可以使用内置IPFS支持的Brave浏览器
当你无法运行自己的IPFS节点时多个公共网关中的一个可以被用作访问镜像服务的代理。
强健及不可篡改的ipfs://{cid}
如果DNS解析被阻挡,或一个公共网关无法被信任,那么建议使用底层的密码内容标识(CID)来访问不可篡改的快照。
ipfs://{cid}
特定镜像服务的{cid} 标识可以通过 snapshot-hashes.yml获取,或使用ipfs resolve -r /ipns/en.wikipedia-on-ipfs.org从其DNSLink记录中读取。
在本文书写时,英文版镜像指向了 ipfs://bafybeiaysi4s6lnjev27ln5icwm6tueaw2vdykrtjkwiphwekaywqhcjze。
通过sneakernet来分享CID标识是绕过DNS问题和审查的流行方式。土耳其人在2017年土耳其屏蔽维机百科时使用了这个方法。历史不会重演,但经验和教训值得学习。今年早期缅甸开始进行互联网中断的实验:
为满足这个重要的需求,我们创建了一个缅甸语版本的维机百科镜像 ,并分享了DNSLink和CID标识号:
如何帮助共同存放这些内容?
你可以运行自己的IPFS节点和共同存放维机百科的一个子集,存放完整副本,或追踪协作集群以自动拉入未来更新。
也可以通过将特定CID标识pin到远程服务上来贡献共同存放的成本。
用你自己的IPFS节点进行延迟加载存放服务
其实是可以保留一个延迟加载的副本的。这样就不需要取回整个维机百科了,而是保留浏览过的页面的子集数据。
也可以通过将特定CID标识后的DAG循环进行pin操作:
循环pin(recursive pin)会在本地数据存储器中预先装载整个镜像。注意,英文版的体积远远大于其他语言版本,因此对其进行pin操作需要几百GB的空间,可能需要很长的时间。
特定镜像的尺寸可以通过 ipfs files stat /ipfs/{cid} 命令来获取。
协作集群
服务器管理员和高级用户可以使用一个高级的选项。wikipedia集群包括了所有的语言版本,其体积随着时间推移只会不断增加。
若要查看操作指令,可以到collab.ipfscluster.io。
贡献远程pin服务
当共同搭建IPFS节点不可行时,还是可以通过将快照的CID标识pin到远程的pinning服务上。学习如何使用远程pinning服务。
一个镜像服务是如何搭建的?
当前的方法依赖于ZIM格式的维机百科快照,这是由Kiwix项目提供的。
目前我们还没有基于Web页面的ZIM归档文件阅读器(下面的章节会细说)。而且,我们搭建镜像服务的方式是一个复杂/耗时的过程。
1. 使用openzim/zim-tools工具来展开(解包)ZIM文档
2. 调整HTML/CSS/JS脚本以修复解包的格式。
3. 将快照导入IPFS。
4. 在解包的IPFS快照中包含原始的ZIM文件。
虽然这是可行的,但由于这依赖于对快照进行解压和定制,因此影响了生成更新的可靠性。而且在Kiwix离线阅读器上包含原始的ZIM文件也在一定程度上数据变得重复。
我们将会研究在IPFS上放入来自Kiwix的所有ZIM文件,并为实现长久储存放入ipfs网络上,这是farm.openzim.org流水线的一部分。
征集帮助,以及现存问题
搜索功能。目前暂时没有搜索功能。利用ZIM文件里现有的索引,或搭建一个为网页浏览器优化的基于有向无环图(DAG)的搜索索引可以让现有的镜像服务更为有用。
基于Web网页的ZIM文件阅读器。对此项目最大的影响莫过于实现一个基于网页的ZIM归档文件阅读器,让人们在无需解压\无需安装任何专用软件的情况下就能够浏览原始的ZIM归档文件。想帮助将其变成现实吗?
改善ZIM文件在IPFS网络上的存放方式。当我们在IPFS网络上存储一个原始的ZIM文件时,相关的DAG(有向无环图)是通过ipfs add --cid-version 1命令生成的。这个方法是可行的,但如果对优化DAG创建过程开展进一步研究,我们或许能够在进行特定字节范围请求时优化重复数据删除过程和提升速度。
下面有几个可供探索的不同阶段研究内容。
第1阶段:投入一点时间去对参数空间进行分析检测,看看有没有很容易就发现的成果。
第2阶段:创建一个DAG生成器,它能够理解ZIM格式,并通常将图形资源以dag-pb存在的子DAG形式来代表,从而最大化地进行重复数据删除。
第3阶段:研究使用IPLD增强或取代ZIM文件。应如何在所有的快照和语言之间最大化地提升重复数据删除的性能?一个基于IPLD的搜索索引将会如何工作?
郑州中创算力立足中原,积极响应国家新基建号召,紧随国家战略,把区块链分布式数据存储赛道作为公司重点发展业务板块,为客户提供集群架构、数据中心部署、分布式存储、大规模集群运维、边缘计算等一站式解决方案。
深耕分布式存储 | 边缘计算 | 赋能实体产业
中创算力|分布式维基百科新语言版本服务上线,IPFS助力Web3.0!相关推荐
- 笃志前行 锐意进取 | 中创算力在区块链比赛中展现新风采
近日,由南京市江北新区中央商务区建设管理办公室指导,万向区块链实验室主办的2022万向区块链黑客马拉松圆满落幕. 经过线上报名.海选.线下比赛的方式,挖掘并孵化一批落地能力强.有创新潜力的优质区块链项 ...
- 【聚焦中创】郑州市商务局领导一行莅临中创算力进行指导工作
政府指导 2021年11月29日,管城区商务局局长毛楠.副局长苏玲恩.科长周泽.科员杨政莅临河南中创算力信息科技有限公司进行调研. 中创算力董事长许伟威.总经理王焕甲.技术部副总监李向阳及相关领导陪同 ...
- [python学习] 简单爬取维基百科程序语言消息盒
文章主要讲述如何通过Python爬取维基百科的消息盒(Infobox),主要是通过正则表达式和urllib实现:后面的文章可能会讲述通过BeautifulSoup实现爬取网页知识.由于这方面的文章还是 ...
- 【中创算力】第六届优秀员工表彰大会暨四月中创生日会
每个岗位都有闪光者 他们脚踏实地,爱岗敬业 他们用实际行动 在平凡的岗位上彰显着不平凡! 公司的前进离不开 每位中创员工的辛勤付出 表彰,是对他们最好的礼赞! 在三月份的工作中,中创算力的每一位员 ...
- 【情暖寒冬 让爱同行】中创算力开展“寒冬送温暖”公益活动
中创公益团队 这个冬天,公益让孤独不再蔓延,让寒冷不再扩散,中创一直都在! 岁暮隆冬,冷霜挂睫,最是一年寒冷至. 在问到家里是否有取暖的设备时,家住尖山村的王冬瑞轻描淡写的回答:没有,从小也习惯了. ...
- 【踔厉奋发,笃行不怠】中创算力召开2021年终工作会议
2021年终会议数据计算存储创新 不忘初心,逐梦远行向上而生,披荆斩棘-中创董事长新春寄语 2022年1月27日,中创算力年终工作会议在正商国际广场举行.全体中创员工齐聚一堂,我们带着这一年的收获,回 ...
- 【中创算力】第五届优秀员工表彰大会
第五届中创表彰大会 回首2021年已经过去了12个月,中创算力的每一位员工都为公司贡献了自己力量,肯奉献.敢挑战.正是因为中创算力员工的拼搏精神,让公司在即将过去的一年里收获满满. 2021年12月2 ...
- 2022年知识产权司法保护状况发布,中创算力:尊重知识产权,共建知识产权强国!
高刷新率显示屏体验流畅.快速上传文件保证安全缓解"存储"焦虑.一键成片无需费力剪辑--近年来,越来越多的"黑科技"见诸于消费电子领域,成为助力消费升级.提升产品 ...
- 【政府调研】郑州市商务局领导一行莅临中创算力进行指导工作
政府指导 2021年11月9日,郑州市商务局副局长吴安德,市商务局招商处崔晓辉,管城区商务局副局长苏玲恩.办事处纪工委书记王红艳.航海东路办事处经济发展办公室主任魏巍莅临河南中创算力信息科技有限公司进 ...
最新文章
- 设计1.0 -- iterator 和const_iterator底层的模拟实现
- 数据结构----单链表增删改查
- SEO--我们是不是走错了路?
- HDU-1811 Rank of Tetris
- 程序员吐槽_某程序员吐槽一程序员大佬竟然放弃百度offer,回老家进烟草公司!是不是脑子有坑?网友:你才脑子有坑!...
- OWC做电子表格和图表的试验
- git(2)---git 分布式版本控制系统
- Linux哈希表数组,开地址哈希表(Hash Table)的接口定义与实现分析
- vue-13-swiper组件的使用
- 阶段3 1.Mybatis_02.Mybatis入门案例_2.mybatis入门案例中的设计模式分析
- jsbarcode生成条码
- 拍拍抢拍精灵v2.1秒杀器所有源代码【开源】
- android 百度地图走动轨迹,百度地图实现小车规划路线后平滑移动功能
- Python如何打印出26个大写字母和26个小写字母
- torch.repeat()与numpy.repeat()和 numpy.tile()比较
- Libuv 句柄优雅关闭
- 记一次惨痛的安装教训RegisterAddon
- 每天一个设计模式之备忘录模式(Memento Pattern)
- ansible 的第一次亲密接触
- 在下拉列表框中实现placeholder