代码空间


摘要(Abstract)

Sahara项目旨在使用用户能够在Openstack平台上便于创建和管理Hadoop以及其他计算框架集群,实现类似AWS的EMR(Amazon Elastic MapReduce service)服务。用户只需要提供简单的参数,如版本信息、集群拓扑、节点硬件信息等,利用Sahara服务能够在数分钟时间内快速地部署Hadoop、Spark、Storm集群。Sahara还支持节点的弹性扩展,能够方便地按需增加或者减少计算节点,实现弹性数据计算服务。它特别适合开发人员或者QA在Openstack平台上快速部署大数据处理计算集群。Openstack的标准组件之一; 通过REST API和Dashboard UI界面管理集群; 支持多种数据处理计算框架,包括: 多种Hadoop厂商发行版,比如CDH等; Apache Spark和Storm; 可插除的Hadoop安装引擎; 集成厂商的特定管理工具,如Apache Ambari and Cloudera Management Console。 支持配置模板。选择Hadoop发行版本; 选择base镜像,base镜像用于生成工作节点,base镜像或者已经预先安装了Hadoop的必要组件,或者提供可插除的可自动快速部署Hadoop的工具。base镜像可以自己制作,也可以直接下载: http://sahara-files.mirantis.com/images/upstream/liberty/ 集群配置,包括集群大小、集群拓扑(配置组件角色)和一些附加参数(如堆大小、HDFS冗余份数等); 创建集群,sahara将自动创建虚拟机、部署和配置数据分析计算框架集群; 集群管理,如增加或者删除节点; 集群销毁,用户不需要时,可以删除集群,释放所有的资源。


主题(Topic)

项目(Project)
deckyfx/simpleadapter xunleji/-AdapterView-RecyclerView-Adapter-ViewHolder zolad/ZoomInImageView lwz0316/ViewHolderAdapter ScreenAdaptation AndroidAutoSize hbzsr/SampleSuperAdapter jltxseo/Horizontal3dListView FeiMo1988/StackPagerLayout zhj1993/XsPayPeoject bingoogolapple/BGABaseAdapter-Android (this,android.R.layout.simple_list_item_1,categories)); myListView = findViewById(R.id.myListView); myListView.setAdapter(new ArrayAdapter<>(this,android.R.layout.simple_list_item_1,getSafeties())); mySpinner.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() { @Override public void onItemSelected(AdapterView parent, View view, int position, long ItemID) { if(position >=0 && position < categories.length){ getSelectedCategoryData(position); }else{ Toast.makeText(save.this,"Selected Category Does not Exist!",Toast.LENGTH_SHORT).show(); } } @Override public void onNothingSelected(AdapterView parent) { } }); myListView.setOnItemClickListener(new AdapterView.OnItemClickListener() { @Override public void onItemClick(AdapterView adapterView, View view, int position, long id) { ImageView img = new ImageView(save.this); img.setImageResource(R.drawable.dang); ImageView img2 = new ImageView(save.this); img2.setImageResource(R.drawable.safe); ImageView img3 = new ImageView(save.this); img3.setImageResource(R.drawable.cav); // 顯示。 switch(position){ case 0: new AlertDialog.Builder(save.this) .setIcon(R.drawable.choco) .setTitle("巧克力") .setView(img) .setMessage("巧克力是以可可漿和可可脂為主要原料製成的一種甜食,巧克力製作致可劃分兩部分,一為可可豆採收,二為可可豆製作烘焙:可可豆曬乾儲存後由巧克力原料工廠採買,即開始進行加工過程,大致可依序分為烘焙、壓碎、調配與研磨、精鍊、去酸、回火鑄型等步驟。它不但口感細膩甜美,而且還具有一股濃鬱的香氣。") .setNegativeButton("了解", null).create() .show(); break; case 1: new AlertDialog.Builder(save.this) .setIcon(R.drawable.dairy) .setTitle("乳製品") .setView(img2) .setMessage("指的是使用牛乳或羊乳及其加工製品為主要原料,加入或不加入適量的維生素、礦物質和其他輔料,使用法律法規及標準規定所要求的條件,經加工製成的各種食品,也叫奶油製品。") .setNegativeButton("了解", null).create() .show(); break; case 2: new AlertDialog.Builder(save.this) .setIcon(R.drawable.coke) .setTitle("可樂") .setView(img3) .setMessage("可樂的主要口味包括香草、肉桂、檸檬香味等等由天然香料所配製出來的味道。可樂最初是由一個美國藥師約翰·彭伯頓在1886年發明的,本來是一種藥水稀釋而得到的保健飲品。") .setNegativeButton("了解", null).create() .show(); break; default: break; } } }); } private ArrayList getSafeties(){ ArrayList data = new ArrayList<>(); data.clear(); data.add(new Safety("巧克力",1)); data.add(new Safety("乳製品",1)); data.add(new Safety("可樂",3)); data.add(new Safety("UY Scuti",2)); data.add(new Safety("IC 1011",3)); data.add(new Safety("Sun",2)); data.add(new Safety("Aldebaran",2)); data.add(new Safety("Venus",1)); data.add(new Safety("Malin",3)); data.add(new Safety("Rigel",2)); data.add(new Safety("Earth",1)); data.add(new Safety("Whirlpool",3)); data.add(new Safety("VY Canis Majoris",2)); data.add(new Safety("Saturn",1)); data.add(new Safety("Sombrero",3)); data.add(new Safety("Betelgeuse",2)); data.add(new Safety("Uranus",1)); data.add(new Safety("Virgo Stellar Stream",3)); data.add(new Safety("Epsillon Canis Majoris",2)); data.add(new Safety("Jupiter",1)); return data; } private void getSelectedCategoryData(int categoryID){ ArrayList safeties = new ArrayList<>(); if(categoryID == 0){ adapter = new ArrayAdapter<>(this,android.R.layout.simple_list_item_1,getSafeties()); }else{ for(Safety safety : getSafeties()){ if(safety.getCategoryId() == categoryID){ safeties.add(safety); } } adapter = new ArrayAdapter<>(this,android.R.layout.simple_list_item_1,safeties); } myListView.setAdapter(adapter); } protected void onCreate(Bundle savedInstanceState){ super.onCreate(savedInstanceState); setContentView(R.layout.save); initializeViews(); } } class Safety{ private String name; private int safetyID; public String getName(){ return name; } public int getCategoryId(){ return safetyID; } public Safety(String name,int safetyID){ this.name = name; this.safetyID = safetyID; } @Override public String toString(){ return name; } }" class="topic-tag topic-tag-link"> xhuaaaa/test2