首页 文章 精选 留言 我的

精选列表

搜索[学习],共10000篇文章
优秀的个人博客,低调大师

大数据与机器学习:实践方法与行业案例.1.2数据平台

1.2数据平台 数据平台是存放分析数据的平台,也是支持大多数数据分析和数据挖掘应用的底层平台,它使用了统一的数据清洗与处理规则,因而可以保证从基础平台上输出的数据内容是一致的。 传统的数据平台基本等同于大家熟悉的“数据仓库”,但互联网浪潮让人们对数据采集、存储和应用提出了越来越高的要求,传统数据仓库平台独力难支,因此“现代化”的数据平台是多种数据库产品的融合。图1-3是一个精简化的现代数据平台架构图。 图1-3 数据平台架构示意图 现代的数据平台融合了传统数据仓库、大数据平台、MPP数据库、NoSQL数据库等多种数据产品,这些数据库产品之间互为补充,组成统一的数据平台。 从传统的关系型数据库开始,数据库产品逐渐细分,这些细分产品在特定场景中比传统的关系型数据库表现出了更好的性能。图1-4展示了一些主流的数据库产品,注意到有很多数据库产品是

优秀的个人博客,低调大师

Ceph分布式存储学习指南1.6 Ceph文件系统

1.6 Ceph文件系统 Ceph文件系统(也就是CephFS)是一个兼容POSIX的文件系统,它利用Ceph存储集群来保存用户数据。Linux内核驱动程序支持CephFS,这也使得CephFS高度适用于各大Linux操作系统发行版。CephFS将数据和元数据分开存储,为上层的应用程序提供较高的性能以及可靠性。 在Cpeh集群内部,Ceph文件系统库(libcephfs)运行在RADOS库(librados)之上,后者是Ceph存储集群协议,由文件、块和对象存储共用。要使用CephFS,你的集群节点上最少要配置一个Ceph元数据服务器(MDS)。然而,需要注意的是,单一的MDS服务器将成为Ceph文件系统的单点故障。MDS配置后,客户端可以采用多种方式使用CephFS。如果要把Ceph挂载成文件系统,客户端可以使用本地Linux内核的

优秀的个人博客,低调大师

面向机器学习的自然语言标注2.3 整合数据集

2.3 整合数据集 我们已经讨论整合数据集时需要考虑的一些问题:标注任务的范围、已有语料库是否含有对你有用的文档与标注信息、数据来源的多样化。 如果你计划将你的数据集公开,请确定你已经拥有对所标注信息向第三方重新发布的许可。有时可以仅发布独立的标注信息和从网站上收集数据的代码段,但最佳且最简单的方式是直接向内容提供者申请许可,尤其是当语料库和标注信息将用于商业而不是纯粹的教育目的时。 语料库构建指南 语料库语言学家John Sinclair(约翰·辛克莱尔)就构建语言学语料库提出了一些指南。尽管这些指南主要针对设计以语言现象研究为目的的语料库,但它们对任何构建语料库感兴趣的人都会有所帮助。论文全文可从http://www.ahds.ac.uk/creating/guides/linguistic-corpora/chapter1.htm下

优秀的个人博客,低调大师

【Spark Summit East 2017】从巨型图中学习的神经网络

更多精彩内容参见云栖社区大数据频道https://yq.aliyun.com/big-data;此外,通过Maxcompute及其配套产品,低廉的大数据分析仅需几步,详情访问https://www.aliyun.com/product/odps。 本讲义出自Daniel Darabos与Hanna Gabor 在Spark Summit East 2017上的演讲,为了应对在构建神经网络的训练过程中对于图形顶点的考虑问题的挑战,Daniel Darabos与Hanna Gabor和团队使用同一张图执行预测和训练的过程并且给出了一些训练的技巧,而为了应对图过大而无法在单个机器的内存内进行真正的资源密集型计算的问题,使用对于图的分布式存储和计算策略,同时还展示了来解决上述问题核心算法以及一些实验结果。

优秀的个人博客,低调大师

张高兴的 Xamarin.Android 学习笔记:(三)活动生命周期

本文将直接解释我写的一个示例。示例目的在于展示 Android 活动在 Xamarin 中的用法。如果有朋友对基础知识不太了解建议先学 Android 。 新建一个 Xamarin.Android 项目ActivityStates。在项目中新建文件夹 Activities 用来存放活动。项目结构如下 (GitHub : https://github.com/ZhangGaoxing/xamarin-android-demo/tree/master/ActivityStates) 在 Activities 文件夹中新建两个活动DialogActivity 和NormalActivity(右击 Activities —— 添加 —— 新建项 —— 活动) 在 Resources 下的 layout 文件夹中新建两个与之相对应的布局DialogLayout.axml 和NormalLayout.axml(右击 layout —— 添加 —— 新建项 —— Android 布局) 完成后项目结构如下图所示 说完活动、布局的新建,接下来开始编辑代码,新建的活动和布局的代码很简单 NormalActivity.cs using Android.App; using Android.Content; using Android.OS; using Android.Runtime; using Android.Views; using Android.Widget; namespace ActivityStates.Activities { [Activity(Label = "NormalActivity")] public class NormalActivity : Activity { protected override void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); SetContentView(Resource.Layout.NormalLayout); } } } 对应的 NormalLayout.axml <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent" android:minWidth="25px" android:minHeight="25px"> <TextView android:text="This is a Normal Layout" android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/textView1" /> </LinearLayout> 下面要说说DialogActivity.cs 。由于我们需要把当前的活动主题改为 Dialog 形式,按照一般的 Android 项目,我们应该编辑 AndroidManifest.xml 文件,但在 Xamarin 项目中采用 C# 中的特性(Attribute)来进行配置。详细说明可以按 F12 查看代码。 所以在配置活动主题时我们需要把活动特性修改为以下代码:[Activity(Label = "DialogActivity", Theme ="@android:style/Theme.Dialog")] DialogActivity.cs using Android.App; using Android.Content; using Android.OS; using Android.Runtime; using Android.Views; using Android.Widget; namespace ActivityStates.Activities { [Activity(Label = "DialogActivity", Theme ="@android:style/Theme.Dialog")] public class DialogActivity : Activity { protected override void OnCreate(Bundle savedInstanceState) { base.OnCreate(savedInstanceState); SetContentView(Resource.Layout.DialogLayout); } } } DialogLayout.axml <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent" android:minWidth="25px" android:minHeight="25px"> <TextView android:text="This is a Dialog Layout" android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/textView1" /> </LinearLayout> 下面来说明一下主活动和主布局。在主布局中我们需要两个 Button 用来跳转到上面两个新建的活动,和一个 TextView 用来输出 Log。 Main.axml <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android" android:orientation="vertical" android:layout_width="match_parent" android:layout_height="match_parent"> <Button android:text="Dialog Layout" android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/btnDialog" /> <Button android:text="Normal Layout" android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/btnNormal" /> <TextView android:gravity="center" android:layout_width="match_parent" android:layout_height="wrap_content" android:id="@+id/txtLog" /> </LinearLayout> 而在主活动中我们需要重写活动生命周期的7个方法,在OnDestroy() 方法中,由于活动已经销毁,向 TextView 中输出完全没有意义,所以采用 Toast 通知的方法来输出。 MainActivity.cs using Android.App; using Android.Widget; using Android.OS; using Android.Content; namespace ActivityStates { [Activity(Label = "ActivityStates", MainLauncher = true, Icon = "@drawable/icon")] public class MainActivity : Activity { TextView txtLog; // 用于显示信息 protected override void OnCreate(Bundle bundle) { base.OnCreate(bundle); SetContentView (Resource.Layout.Main); // 获取控件 Button btnDialog = FindViewById<Button>(Resource.Id.btnDialog); Button btnNormal = FindViewById<Button>(Resource.Id.btnNormal); txtLog = FindViewById<TextView>(Resource.Id.txtLog); // 输出信息 txtLog.Text += "OnCreate()\n"; btnDialog.Click += (sender, e) => { Intent dialog = new Intent(this, typeof(Activities.DialogActivity)); StartActivity(dialog); }; btnNormal.Click += (sender, e) => { Intent normal = new Intent(this, typeof(Activities.NormalActivity)); StartActivity(normal); }; } protected override void OnStart() { base.OnStart(); txtLog.Text += "OnCreate()\n"; } protected override void OnResume() { base.OnResume(); txtLog.Text += "OnResume()\n"; } protected override void OnPause() { base.OnPause(); txtLog.Text += "OnPause()\n"; } protected override void OnStop() { base.OnStop(); txtLog.Text += "OnStop()\n"; } protected override void OnRestart() { base.OnRestart(); txtLog.Text += "OnRestart()\n"; } protected override void OnDestroy() { base.OnDestroy(); Toast.MakeText(this, "OnDestroy()", ToastLength.Short).Show(); } } } 运行图

优秀的个人博客,低调大师

Hbase 学习(八) 使用MapReduce&华为二级索引(原理)

在hbase的demo里面有个IndexBuilder的例子,它就是使用了MapReduce来操作hbase的,例子也比较简单,但是只包括了Mapper。 另外网上还有另外一个例子,也是说明这个的,这个例子更为全面一点,包括了Mapper和Reducer。 http://www.cnblogs.com/chenli0513/archive/2012/01/06/2314886.html 这里就不说什么了,很简单,一看就懂。 这个是 华为的二级索引方案,已经开放源代码了,下面是网上的一篇讲解原理的帖子,发出来和大家共享一下。 经过本人认真阅读了一下代码,发现这个源码仅供参考,想要集成到原有的集群当中是有点儿难度的,它对hbase的源码进行不少的修改。 源码地址: https://github.com/Huawei-Hadoop/hindex 下面来对其方案做一个分析。 1.整体架构 这个架构在Client Ext中设定索引细节,在Balancer中收集信息,在Coprocessor中管理二级索引数据。 2.表创建 在创建表的时候,在同一个region server上创建索引表,且一一对应。 3.插入操作 在主表中插入某条数据后,用Coprocessor将索引列写到索引表中去,写道索引表中的数据的主键为:region开始key+索引名+索引列值+主表row key。这么做,是为了让其在同一个分布规则下,索引表会跟主表在通过region server上,在查询的时候就可以少一次rpc。 4.scan操作 一个查询到来的时候,通过coprocessor钩子,先从索引表中查询范围row,然后再从主表中相关row中扫描获得最终数据。 5. split操作处理 为了使主表和索引表在同一个RS上,要禁用索引表的自动和手动split,只能由主表split的时候触发,当主表split的时候,对索引表按其对应数据进行划分,同时,对索引表的第二个daughter split的row key的前面部分修改为对应的主键的row key。 6. 性能 查询性能极大提升,插入性能下降10%左右 总结: 本文对华为hbase使用coprocessor进行二级索引的方案的创建表,插入数据,查询数据的步骤进行了一个粗略分析,以窥其全貌。在使用的时候,可以作为一个参考。 转载自: http://www.dengchuanhua.com/167.html

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

腾讯云软件源

腾讯云软件源

为解决软件依赖安装时官方源访问速度慢的问题,腾讯云为一些软件搭建了缓存服务。您可以通过使用腾讯云软件源站来提升依赖包的安装速度。为了方便用户自由搭建服务架构,目前腾讯云软件源站支持公网访问和内网访问。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册