進擊的 ASP.NET Web API 2 巨人 – 打造支援各種裝置及平台的服務
你/妳知道WebApi (REST)己經成為一個企業IT系統整合及網路服務成長最為快速的趨勢嗎? 你/妳知道現今在網路上最被Mobile device使所用的資料交換的格式是JSON (Javascript Object Notation)而不再是肥大擁腫的XML怪獸嗎?
全世界的網路大咖都拼命地開發WebApi的服務來吸引Mobile或Web application的開發者, 我們將在這堂課中結合AngularJs與ASP.NET Web API 2來讓大家開始感受WebApi的吸引力。
More and more web application is adopting "Single Page Application (SPA)" style to improve user experience (UX). There are many different SPA framework out there, however AngularJS leading by Google really stand out, not only because it can dramatically reduce the developing effort, but also it can improve the maintainability, testability and efficiency. In this tutorial, it will demonstrates the fundamentals features of AngularJS with easy to follow sample pages. All the source code could be found on GitHub: https://github.com/erhwenkuo/PracticalCoding
Creating Modular Test-Driven SPAs with Spring and AngularJSGunnar Hillert
Single-page Applications (SPA) are all the rage these days and with them there is an avalanche of new tools, libraries and frameworks we need to know. But what does this mean for us as Spring developers? In this session we will give you an overview of the current landscape and illustrate the choices the Spring XD team has made for its user interface. What do I use to write SPA applications? How do I integrate them into existing Spring-based backends? How do I build them? Can I integrate them into my existing Gradle or Maven build processes in order to achieve complete build automation? How do I integrate realtime messaging using Spring's SockJS/WebSocket support? In this talk we will answer these and many more questions. We will cover frameworks such as AngularJS, Bootstrap, RequireJS; tools like Bower, Grunt, Gulp; and also talk about testing using Karma and Protractor.
A general- ‐purpose build automation tool. It can automate building, testing, deployment, publishing, generate documentation etc.
Designed to take advantage of convention over configuration.
Combines the power and flexibility of Ant with the dependency management and
conventions of Maven into a more effective way to build.
進擊的 ASP.NET Web API 2 巨人 – 打造支援各種裝置及平台的服務
你/妳知道WebApi (REST)己經成為一個企業IT系統整合及網路服務成長最為快速的趨勢嗎? 你/妳知道現今在網路上最被Mobile device使所用的資料交換的格式是JSON (Javascript Object Notation)而不再是肥大擁腫的XML怪獸嗎?
全世界的網路大咖都拼命地開發WebApi的服務來吸引Mobile或Web application的開發者, 我們將在這堂課中結合AngularJs與ASP.NET Web API 2來讓大家開始感受WebApi的吸引力。
More and more web application is adopting "Single Page Application (SPA)" style to improve user experience (UX). There are many different SPA framework out there, however AngularJS leading by Google really stand out, not only because it can dramatically reduce the developing effort, but also it can improve the maintainability, testability and efficiency. In this tutorial, it will demonstrates the fundamentals features of AngularJS with easy to follow sample pages. All the source code could be found on GitHub: https://github.com/erhwenkuo/PracticalCoding
Creating Modular Test-Driven SPAs with Spring and AngularJSGunnar Hillert
Single-page Applications (SPA) are all the rage these days and with them there is an avalanche of new tools, libraries and frameworks we need to know. But what does this mean for us as Spring developers? In this session we will give you an overview of the current landscape and illustrate the choices the Spring XD team has made for its user interface. What do I use to write SPA applications? How do I integrate them into existing Spring-based backends? How do I build them? Can I integrate them into my existing Gradle or Maven build processes in order to achieve complete build automation? How do I integrate realtime messaging using Spring's SockJS/WebSocket support? In this talk we will answer these and many more questions. We will cover frameworks such as AngularJS, Bootstrap, RequireJS; tools like Bower, Grunt, Gulp; and also talk about testing using Karma and Protractor.
A general- ‐purpose build automation tool. It can automate building, testing, deployment, publishing, generate documentation etc.
Designed to take advantage of convention over configuration.
Combines the power and flexibility of Ant with the dependency management and
conventions of Maven into a more effective way to build.
From the AJUG meeting: http://www.meetup.com/atlantajug/events/222312943/
Oc 20, 2015
In this fully-loaded session we will give you an update on all things Spring. We will talk about the latest features in Spring Framework 4.2 which was released this summer, and also provide an outlook to what is coming with Spring 5 in 2016.
Next, Spring Boot 1.3 is on the horizon and adds many new features. We will go over those and explain how Spring Boot helps you build production-ready Spring applications.
And then we add Spring Cloud to the mix and explain the various modules
Let’s face it, when was the last time you opened a command prompt as part of your daily routine? Did you know you can save a lot of time by creating scripts that automate your daily tasks, such as altering your application’s configuration files and then deploy the application to a remote server? There are developers that still think that scripting is the IT department’s domain. But Windows PowerShell is a different story. PowerShell is a scripting language that is more coding than scripting, mostly because its commands return objects, not text.
In this session we will learn what PowerShell is, the basics of coding with it, and how to call it from your .NET code. Most of the session will focus on how developers can benefit from using PowerShell in their day-to-day routine in order to work with XML and JSON, automate deployments, manage certificates, call HTTP services, manipulate file content, and more. Next time you are asked to deploy your application to the server, type, don’t click!
In this fully-loaded session we will give you an update on all things Spring. We will talk about the latest features in Spring Framework 4.2 which was released this summer, and also provide an outlook to what is coming with Spring 5 in 2016.
Next, Spring Boot 1.3 is on the horizon and adds many new features. We will go over those and explain how Spring Boot helps you build production-ready Spring applications.
And then we add Spring Cloud to the mix and explain the various modules.
RESTful OSGi Web Applications Tutorial - Khawaja S Shams & Jeff Norrismfrancis
OSGi DevCon 2008
NASA has been using the Eclipse Rich Client Platform (RCP) as the foundation for many of its rover operations tools for several years. Recently, we started using the Equinox project to extend our applications to the server as well. Along the way, we discovered REST, an intuitive, lightweight methodology for building web applications. In this tutorial, we will share the techniques that we have learned to combine these technologies into web services that are easy to develop, deploy, and use.
This tutorial will be focused on an entertaining set of space-related hands-on exercises that will teach participants to develop, integrate and deploy RESTful web applications on top of OSGI. Participants will walk away with an example RCP application and its Equinox server side support, along with an understanding of how each component functions. The presentation will also discuss issues associated with maintaining the server side code, securing the web applications, and performance. We will be deploying web based services through extension points, so the users will also be able to extend the example project to integrate additional web-services or use the skeleton for their own server side application. We will finally deploy the application to a tomcat server for production usage.
This tutorial will provide a hands-on demonstration of how Equinox and the Restlet framework make a unique combination that takes advantage of the powerful features offered by OSGI and the simplicity offered by REST. Web based services can offer a new whole new set of features to complement an RCP application, and we will demonstrate how simple this can be with a solid and battle tested framework behind the web applications.
Audience
We recommend that audience members have basic familiarity with plugin development and come prepared to code. Audience members without development experience will gain background information on evaluating Equinox for the architecture of their web based applications.
Full stack development with node and NoSQL - All Things Open - October 2017Matthew Groves
What is different about this generation of web applications? A solid development approach must consider latency, throughput, and interactivity demanded by users users across mobile devices, web browsers, and IoT. These applications often use NoSQL to support a flexible data model and easy scalability required for modern development.
A full stack application (composed of Couchbase, WebAPI, Angular2, and ASP.NET/ASP.NET Core) will be demonstrated in this session. The individual parts of a stack may vary, but the overall design is the focus.
In this presentation we will examine various scalability options in order to improve the robustness and performance of your Spring Batch applications. We start out with a single threaded Spring Batch application that we will refactor so we can demonstrate how to run it using:
* Concurrent Steps
* Remote Chunking
* AsyncItemProcessor and AsyncItemWriter
* Remote Partitioning
Additionally, we will show how you can deploy Spring Batch applications to Spring XD which provides high availability and failover capabilities. Spring XD also allows you to integrate Spring Batch applications with other Big Data processing needs.
S2GX 2012 - Spring Projects InfrastructureGunnar Hillert
Over the last year a number of significant changes have been made to the infrastructure and processes used within the Spring family of projects. In this presentation we will review these process changes and provide valuable insights into the tools that make it all possible. We will begin with providing a brief history, then move on to discuss the new tools being used, such as GitHub, Gradle, and Artifactory. Beyond describing the tools, we'll also illustrate how these new tools help facilitate our processes, including community contributions, release management, defect tracking, and more. Ultimately, this presentation will paint a larger picture of the development process for open source projects at Spring, and the various outlets available for community involvement.
Building a friendly .NET SDK to connect to SpaceMaarten Balliauw
Space is a team tool that integrates chats, meetings, git hosting, automation, and more. It has an HTTP API to integrate third party apps and workflows, but it's massive! And slightly opinionated.
In this session, we will see how we built the .NET SDK for Space, and how we make that massive API more digestible. We will see how we used code generation, and incrementally made the API feel more like a real .NET SDK.
Modernizing WordPress Search with ElasticsearchTaylor Lovett
WordPress search is notoriously lacking. Using Elasticsearch and the 10up WordPress plugin ElasticPress, we can do amazing things with search very performantly.
From the AJUG meeting: http://www.meetup.com/atlantajug/events/222312943/
Oc 20, 2015
In this fully-loaded session we will give you an update on all things Spring. We will talk about the latest features in Spring Framework 4.2 which was released this summer, and also provide an outlook to what is coming with Spring 5 in 2016.
Next, Spring Boot 1.3 is on the horizon and adds many new features. We will go over those and explain how Spring Boot helps you build production-ready Spring applications.
And then we add Spring Cloud to the mix and explain the various modules
Let’s face it, when was the last time you opened a command prompt as part of your daily routine? Did you know you can save a lot of time by creating scripts that automate your daily tasks, such as altering your application’s configuration files and then deploy the application to a remote server? There are developers that still think that scripting is the IT department’s domain. But Windows PowerShell is a different story. PowerShell is a scripting language that is more coding than scripting, mostly because its commands return objects, not text.
In this session we will learn what PowerShell is, the basics of coding with it, and how to call it from your .NET code. Most of the session will focus on how developers can benefit from using PowerShell in their day-to-day routine in order to work with XML and JSON, automate deployments, manage certificates, call HTTP services, manipulate file content, and more. Next time you are asked to deploy your application to the server, type, don’t click!
In this fully-loaded session we will give you an update on all things Spring. We will talk about the latest features in Spring Framework 4.2 which was released this summer, and also provide an outlook to what is coming with Spring 5 in 2016.
Next, Spring Boot 1.3 is on the horizon and adds many new features. We will go over those and explain how Spring Boot helps you build production-ready Spring applications.
And then we add Spring Cloud to the mix and explain the various modules.
RESTful OSGi Web Applications Tutorial - Khawaja S Shams & Jeff Norrismfrancis
OSGi DevCon 2008
NASA has been using the Eclipse Rich Client Platform (RCP) as the foundation for many of its rover operations tools for several years. Recently, we started using the Equinox project to extend our applications to the server as well. Along the way, we discovered REST, an intuitive, lightweight methodology for building web applications. In this tutorial, we will share the techniques that we have learned to combine these technologies into web services that are easy to develop, deploy, and use.
This tutorial will be focused on an entertaining set of space-related hands-on exercises that will teach participants to develop, integrate and deploy RESTful web applications on top of OSGI. Participants will walk away with an example RCP application and its Equinox server side support, along with an understanding of how each component functions. The presentation will also discuss issues associated with maintaining the server side code, securing the web applications, and performance. We will be deploying web based services through extension points, so the users will also be able to extend the example project to integrate additional web-services or use the skeleton for their own server side application. We will finally deploy the application to a tomcat server for production usage.
This tutorial will provide a hands-on demonstration of how Equinox and the Restlet framework make a unique combination that takes advantage of the powerful features offered by OSGI and the simplicity offered by REST. Web based services can offer a new whole new set of features to complement an RCP application, and we will demonstrate how simple this can be with a solid and battle tested framework behind the web applications.
Audience
We recommend that audience members have basic familiarity with plugin development and come prepared to code. Audience members without development experience will gain background information on evaluating Equinox for the architecture of their web based applications.
Full stack development with node and NoSQL - All Things Open - October 2017Matthew Groves
What is different about this generation of web applications? A solid development approach must consider latency, throughput, and interactivity demanded by users users across mobile devices, web browsers, and IoT. These applications often use NoSQL to support a flexible data model and easy scalability required for modern development.
A full stack application (composed of Couchbase, WebAPI, Angular2, and ASP.NET/ASP.NET Core) will be demonstrated in this session. The individual parts of a stack may vary, but the overall design is the focus.
In this presentation we will examine various scalability options in order to improve the robustness and performance of your Spring Batch applications. We start out with a single threaded Spring Batch application that we will refactor so we can demonstrate how to run it using:
* Concurrent Steps
* Remote Chunking
* AsyncItemProcessor and AsyncItemWriter
* Remote Partitioning
Additionally, we will show how you can deploy Spring Batch applications to Spring XD which provides high availability and failover capabilities. Spring XD also allows you to integrate Spring Batch applications with other Big Data processing needs.
S2GX 2012 - Spring Projects InfrastructureGunnar Hillert
Over the last year a number of significant changes have been made to the infrastructure and processes used within the Spring family of projects. In this presentation we will review these process changes and provide valuable insights into the tools that make it all possible. We will begin with providing a brief history, then move on to discuss the new tools being used, such as GitHub, Gradle, and Artifactory. Beyond describing the tools, we'll also illustrate how these new tools help facilitate our processes, including community contributions, release management, defect tracking, and more. Ultimately, this presentation will paint a larger picture of the development process for open source projects at Spring, and the various outlets available for community involvement.
Building a friendly .NET SDK to connect to SpaceMaarten Balliauw
Space is a team tool that integrates chats, meetings, git hosting, automation, and more. It has an HTTP API to integrate third party apps and workflows, but it's massive! And slightly opinionated.
In this session, we will see how we built the .NET SDK for Space, and how we make that massive API more digestible. We will see how we used code generation, and incrementally made the API feel more like a real .NET SDK.
Modernizing WordPress Search with ElasticsearchTaylor Lovett
WordPress search is notoriously lacking. Using Elasticsearch and the 10up WordPress plugin ElasticPress, we can do amazing things with search very performantly.
Elasticsearch, Logstash, Kibana. Cool search, analytics, data mining and more...Oleksiy Panchenko
In the age of information and big data, ability to quickly and easily find a needle in a haystack is extremely important. Elasticsearch is a distributed and scalable search engine which provides rich and flexible search capabilities. Social networks (Facebook, LinkedIn), media services (Netflix, SoundCloud), Q&A sites (StackOverflow, Quora, StackExchange) and even GitHub - they all find data for you using Elasticsearch. In conjunction with Logstash and Kibana, Elasticsearch becomes a powerful log engine which allows to process, store, analyze, search through and visualize your logs.
Video: https://www.youtube.com/watch?v=GL7xC5kpb-c
Scripts for the Demo: https://github.com/opanchenko/morning-at-lohika-ELK
In this presentation I will show you how to setup Laravel and Elasticsearch to quickly build a search engine. This was given at a local meetup in Groningen (Netherlands).
Scaling Django Apps using AWS Elastic BeanstalkLushen Wu
• What is AWS Elastic Beanstalk (EB)?
• What are the advantages of using EB over managing EC2 instances / Load-balancing / Auto-scaling myself?
• What are some common issues I might run into when deploying my Django app to EB?
Attack monitoring using ElasticSearch Logstash and KibanaPrajal Kulkarni
With growing trend of Big data, companies are tend to rely on high cost SIEM solutions. However, with introduction of open source and lightweight cluster management solution like ElasticSearch this has been the highlight of the year. Similarly, the log aggregation has been simplified by logstash and kibana providing a visual look to the complex data structure. This presentation will exactly cater to this need of having a appropriate log analysis+Detecting Intrusion+Visualizing data in a powerful interface.
Going on an HTTP Diet: Front-End Web PerformanceAdam Norwood
Is your web site or web app feeling sluggish? Getting tired of watching your pages slowly render, the long seconds ticking away before your snazzy jQuery doohickey even has a chance to fire? Chances are it’s not that slow bit of code or that clunky database behind the scenes that’s to blame – 80% of the time spent loading most web pages is on the client side! At this talk, we’ll take a look at some of the easiest low-hanging fruit you can go after to help speed up web performance on the front end, from slimming down the size of content to optimizing HTTP requests, and more.
The importance of search for modern applications is evident and nowadays it is higher than ever. A lot of projects use search forms as a primary interface for communication with a user. Though implementation of an intelligent search functionality is still a challenge and we need a good set of tools.
In this presentation, I will talk through the high-level architecture and benefits of Elasticsearch with some examples. Aside from that, we will also take a look at its existing competitors, their similarities, and differences.
CouchDB for Web Applications - Erlang Factory London 2009Jason Davies
CouchDB is built "of the Web" and it's very exciting to convert the immense
power that CouchDB provides into a usable, real-world Web application. In this
talk I cover case studies of real-world applications that use CouchDB,
including some that can be served from CouchDB itself, and how CouchDB can
shape your Web applications to be highly scalable and flexible by embracing
HTTP philosophies, JavaScript and schemaless documents.
In this talk, we'll cover all the great built-in rails caching options and best practices for getting the most out of these. Then we'll talk about dynamic content, why it's traditionally not cached, and how you can can cache it using this thing called "edge caching".
Welcome to the future, where you can cache the uncacheable.
Kubernetes Pod 是有生命週期的,它們可以被創建,也可以被銷毀,然而一旦被銷毀生命就永遠結束。通過 ReplicaSets 能夠動態地創建和銷毀 Pod(例如,需要進行擴縮容,或者執行 滾動升級)。每個 Pod 都會獲取它自己的 IP 地址,即使這些 IP 地址不總是穩定可依賴的。這會導致一個問題:在 Kubernetes 集群中,如果一組 Pod(稱為 backend)為其它 Pod (稱為 frontend)提供服務,那麼那些 frontend 該如何發現,並連接到這組 Pod 中的哪些 backend 呢?
Kubernetes Service 定義了這樣一種抽象:邏輯上的一組 Pod,一種可以訪問它們的策略。這一組 Pod 能夠被 Service 訪問到,通常是通過 Label Selector實現的。
June 3, 2024 Anti-Semitism Letter Sent to MIT President Kornbluth and MIT Cor...Levi Shapiro
Letter from the Congress of the United States regarding Anti-Semitism sent June 3rd to MIT President Sally Kornbluth, MIT Corp Chair, Mark Gorenberg
Dear Dr. Kornbluth and Mr. Gorenberg,
The US House of Representatives is deeply concerned by ongoing and pervasive acts of antisemitic
harassment and intimidation at the Massachusetts Institute of Technology (MIT). Failing to act decisively to ensure a safe learning environment for all students would be a grave dereliction of your responsibilities as President of MIT and Chair of the MIT Corporation.
This Congress will not stand idly by and allow an environment hostile to Jewish students to persist. The House believes that your institution is in violation of Title VI of the Civil Rights Act, and the inability or
unwillingness to rectify this violation through action requires accountability.
Postsecondary education is a unique opportunity for students to learn and have their ideas and beliefs challenged. However, universities receiving hundreds of millions of federal funds annually have denied
students that opportunity and have been hijacked to become venues for the promotion of terrorism, antisemitic harassment and intimidation, unlawful encampments, and in some cases, assaults and riots.
The House of Representatives will not countenance the use of federal funds to indoctrinate students into hateful, antisemitic, anti-American supporters of terrorism. Investigations into campus antisemitism by the Committee on Education and the Workforce and the Committee on Ways and Means have been expanded into a Congress-wide probe across all relevant jurisdictions to address this national crisis. The undersigned Committees will conduct oversight into the use of federal funds at MIT and its learning environment under authorities granted to each Committee.
• The Committee on Education and the Workforce has been investigating your institution since December 7, 2023. The Committee has broad jurisdiction over postsecondary education, including its compliance with Title VI of the Civil Rights Act, campus safety concerns over disruptions to the learning environment, and the awarding of federal student aid under the Higher Education Act.
• The Committee on Oversight and Accountability is investigating the sources of funding and other support flowing to groups espousing pro-Hamas propaganda and engaged in antisemitic harassment and intimidation of students. The Committee on Oversight and Accountability is the principal oversight committee of the US House of Representatives and has broad authority to investigate “any matter” at “any time” under House Rule X.
• The Committee on Ways and Means has been investigating several universities since November 15, 2023, when the Committee held a hearing entitled From Ivory Towers to Dark Corners: Investigating the Nexus Between Antisemitism, Tax-Exempt Universities, and Terror Financing. The Committee followed the hearing with letters to those institutions on January 10, 202
Acetabularia Information For Class 9 .docxvaibhavrinwa19
Acetabularia acetabulum is a single-celled green alga that in its vegetative state is morphologically differentiated into a basal rhizoid and an axially elongated stalk, which bears whorls of branching hairs. The single diploid nucleus resides in the rhizoid.
How to Make a Field invisible in Odoo 17Celine George
It is possible to hide or invisible some fields in odoo. Commonly using “invisible” attribute in the field definition to invisible the fields. This slide will show how to make a field invisible in odoo 17.
Introduction to AI for Nonprofits with Tapp NetworkTechSoup
Dive into the world of AI! Experts Jon Hill and Tareq Monaur will guide you through AI's role in enhancing nonprofit websites and basic marketing strategies, making it easy to understand and apply.
The French Revolution, which began in 1789, was a period of radical social and political upheaval in France. It marked the decline of absolute monarchies, the rise of secular and democratic republics, and the eventual rise of Napoleon Bonaparte. This revolutionary period is crucial in understanding the transition from feudalism to modernity in Europe.
For more information, visit-www.vavaclasses.com
2024.06.01 Introducing a competency framework for languag learning materials ...Sandy Millin
http://sandymillin.wordpress.com/iateflwebinar2024
Published classroom materials form the basis of syllabuses, drive teacher professional development, and have a potentially huge influence on learners, teachers and education systems. All teachers also create their own materials, whether a few sentences on a blackboard, a highly-structured fully-realised online course, or anything in between. Despite this, the knowledge and skills needed to create effective language learning materials are rarely part of teacher training, and are mostly learnt by trial and error.
Knowledge and skills frameworks, generally called competency frameworks, for ELT teachers, trainers and managers have existed for a few years now. However, until I created one for my MA dissertation, there wasn’t one drawing together what we need to know and do to be able to effectively produce language learning materials.
This webinar will introduce you to my framework, highlighting the key competencies I identified from my research. It will also show how anybody involved in language teaching (any language, not just English!), teacher training, managing schools or developing language learning materials can benefit from using the framework.
Biological screening of herbal drugs: Introduction and Need for
Phyto-Pharmacological Screening, New Strategies for evaluating
Natural Products, In vitro evaluation techniques for Antioxidants, Antimicrobial and Anticancer drugs. In vivo evaluation techniques
for Anti-inflammatory, Antiulcer, Anticancer, Wound healing, Antidiabetic, Hepatoprotective, Cardio protective, Diuretics and
Antifertility, Toxicity studies as per OECD guidelines
The Roman Empire A Historical Colossus.pdfkaushalkr1407
The Roman Empire, a vast and enduring power, stands as one of history's most remarkable civilizations, leaving an indelible imprint on the world. It emerged from the Roman Republic, transitioning into an imperial powerhouse under the leadership of Augustus Caesar in 27 BCE. This transformation marked the beginning of an era defined by unprecedented territorial expansion, architectural marvels, and profound cultural influence.
The empire's roots lie in the city of Rome, founded, according to legend, by Romulus in 753 BCE. Over centuries, Rome evolved from a small settlement to a formidable republic, characterized by a complex political system with elected officials and checks on power. However, internal strife, class conflicts, and military ambitions paved the way for the end of the Republic. Julius Caesar’s dictatorship and subsequent assassination in 44 BCE created a power vacuum, leading to a civil war. Octavian, later Augustus, emerged victorious, heralding the Roman Empire’s birth.
Under Augustus, the empire experienced the Pax Romana, a 200-year period of relative peace and stability. Augustus reformed the military, established efficient administrative systems, and initiated grand construction projects. The empire's borders expanded, encompassing territories from Britain to Egypt and from Spain to the Euphrates. Roman legions, renowned for their discipline and engineering prowess, secured and maintained these vast territories, building roads, fortifications, and cities that facilitated control and integration.
The Roman Empire’s society was hierarchical, with a rigid class system. At the top were the patricians, wealthy elites who held significant political power. Below them were the plebeians, free citizens with limited political influence, and the vast numbers of slaves who formed the backbone of the economy. The family unit was central, governed by the paterfamilias, the male head who held absolute authority.
Culturally, the Romans were eclectic, absorbing and adapting elements from the civilizations they encountered, particularly the Greeks. Roman art, literature, and philosophy reflected this synthesis, creating a rich cultural tapestry. Latin, the Roman language, became the lingua franca of the Western world, influencing numerous modern languages.
Roman architecture and engineering achievements were monumental. They perfected the arch, vault, and dome, constructing enduring structures like the Colosseum, Pantheon, and aqueducts. These engineering marvels not only showcased Roman ingenuity but also served practical purposes, from public entertainment to water supply.
Macroeconomics- Movie Location
This will be used as part of your Personal Professional Portfolio once graded.
Objective:
Prepare a presentation or a paper using research, basic comparative analysis, data organization and application of economic information. You will make an informed assessment of an economic climate outside of the United States to accomplish an entertainment industry objective.
7. Who’s using elasticsearch?
• GitHub
• GitHub uses Elasticsearch’s robust sharding and
advanced queries to serve up search across data in 4
million users’ code repositories.
• GitHub uses Elasticsearch’s routing parameter and
flexible sharding schemes to perform searches within
a single repository on a single shard, doubling the
speed at which results are served.
• GitHub uses Elasticsearch’s histogram facet
queries, as well as other Elasticsearch analytic
queries, to monitor their internal infrastructure
for abuse, bugs and more.
8. Who’s using elasticsearch?
• Wikipedia
• Elasticsearch’s reference manual and contribution
documentation promised an easy start and pleasant
time getting changes upstream when needed to.
• Elasticsearch’s super expressive search API lets
Wikimedia search any way needed and gives the
company confidence that it can be expanded,
including via expressive ad-hoc queries.
• Elasticsearch’s index maintenance API lets Wikimedia
maintain the index right from its MediaWiki extension
10. ElasticWho?
• ElasticSearch is a flexible and powerful open source, distributed real-time
search and analytics engine
• Features:
• Real time analytics
• Distributed
• High availability
• Multi tenant architecture
• Full text index
• Document oriented
• Schema free
• RESTful API
• Per-operation persistence
12. Download & Start
• Download Elasticsearch (Current version: 1.4.2)
• http://www.elasticsearch.com/downloads
• Unzip & Modify “elasticsearch.yml”
• “cluster.name: {your_searchcluster_name}”
• “node.name: {your_cluster_node_name}”
• “http.cors.enabled: true”
• Use command console to run:
• “bin/elasticsearch” on *nix
• “bin/elasticsearch.bat” on Windows
1
2
3
13. Install Elasticsearch Plugins
(elasticsearch-head)
• A web front end for an Elasticsearch cluster
• https://github.com/mobz/elasticsearch-head
You need to have
internet access,
otherwise it would
fail!!
1
Restart elasticsearch and key in below url
in browser:
http://localhost:9200/_plugin/head/
2
16. Create Index
• Elasticsearch “Index” is similar like “Database” in relational DB
• For example, create a index named “stackoverflow”
Default setting in
Elasticsearch:
Each “Index” will split to
5shards and has 1
replication
17. Create Another Elasticsearch Node
• Copy “elasticsearch-1.4.2” folder to “elasticsearch-1.4.2-Node2”
• Modify “elasticsearch-1.4.2-Node2/config/elasticsearch.yml”
• “cluster.name: {your_searchcluster_name}”
• “node.name: {your_cluster_node_name-Node2}”
• “http.cors.enabled: true”
• “transport.tcp.port: 9301”
• “http.port: 9201”
If we set different
Elasticsearch Node on the
sameMachine, then we
need to assisgn different
communication ports.
18. Start All Elasticsearch Nodes
• Use command console to start two Elasticsearch Nodes
Now we a Elasticsearch
Cluster!
So so so easy~!
20. Index a “Document” under a specific
“Type”
“Type” is similar to
“Table” in RelationDB
“Document.Id” is the
unique Id to identify each
document
The content of a
“Document”
22. Get a “Document”
“Type” is similar to
“Table” in RelationDB
“Document.Id” is the
unique Id to identify each
document
The content of a
“Document” return by
Elasticsearch
23. Update a “Document”
“Type” is similar to
“Table” in RelationDB
“Document.Id” is the
unique Id to identify each
document
The “version no.” of
document is incremental if
it got updated!!
24. Searching “Document”
Control Searching
Scope base on
URL
Elasticsearch has very rich Search/Query DSL for
document searching. Check below URL for details:
http://www.elasticsearch.org/guide/en/elastic
search/reference/current/query-dsl.html
25. Searching Result
The documents which hits the
searching query will be located
under “hits/hits”
How long it takes to
calculate the result
(in milli-
seconds)
26. Delete a “Document”
“Type” is similar to
“Table” in RelationDB
“Document.Id” is the
unique Id to identify each
document
28. Environment Setup – Elasticsearch C#
Client
1. Use NuGet to search “NEST” (C# elasticsearch client)
2. Click “Install”
29. NEST (Elasticsearch C# client)
• NEST provides very friendly C# interfaces to interact with Elasticseach, also
there are many sample codes in its web site
• http://nest.azurewebsites.net/
30. Stackoverflow Datadump
• Stackoverflow periodically dump their data for public study use
• https://archive.org/details/stackexchange
• For demonstration purpose, we pick a smaller dataset
• apple.stackexchange.com.7z (73.7MB)
• Badges.xml
• Commenets.xml
• PostHistory.xml
• PostLinks.xml
• Posts.xml (116,071 records)
• Tags.xml
• Users.xml
• Votes.xml
31. Session_06_DataloadToElasticsearch
• A new C# “Console” program project
(“Session_06_DataloadToElasticsearch”) is
created to parsing data dump xml file and
import into Elasticsarch
• Open “Program.cs” file and modify below:
Change the Uri of
your elasticsearch
cluster IP & port
Change the
xmlDataFile path
to the location of
data dump file
This is the
“Index” need to
be created before
running this
program
34. The _search endpoing
• To search with ElasticSearch we use the “_search” endpoint
• We make http requests to an URL following this pattern: (“index” &
“type” are both optional)
• <index>/<type>/_search
• For example:
• Search across all indexes and all types
• http://localhost:9200/_search
• Search across all types in the “stackoverflow” index
• http://localhost:9200/stackoverflow/_search
• Search explicitly for documents of type “post” within the
“stackoverflow” index
• http://localhost:9200/stackoverflow/post/_search
35. Search request body and ElasticSearch's
query DSL
• elasticsearch provides a full Query DSL based on JSON to define queries
• http://www.elasticsearch.org/guide/en/elasticsearch/reference/current/query-dsl.html
• Think of it like ElasticSearch's equivalent of SQL for a relational database
• Query DSL contains:
• Query
• Filter
*** Filter are very handy since they perform an order of magnitude better than plain
query since no scoring is performed and they are automatically cached
36. Basic free text search
• The query DSL features a long list of different
types of queries that we can use
• For "ordinary" free text search we'll most likely
want to use one called "query string query".
37. Elasticsearch Query DSL - Filter
• As a general rule, filters should be
used instead of queryies:
• for binary yes/no searches
• for queries on exact values
• Filters can be caching. Caching the
result of a filter does not require a lot
of memory, and will cause other
queries executing against the same
filter (same parameters) to be
blazingly fast
40. Elasticsearch Javascript Client
Library
1. Go to Elasticsearch web site & get javascript
client
• elasticsearch-js-2.4.3.zip
• http://www.elasticsearch.org/guide/en/elasticsearc
h/client/javascript-api/current/browser-builds.html
• Unzip and import to “PracticalCoding.Web”
Project under “/Scripts/elasticsearch” folder
41. Setup Fulltext-Search SPA Skelton
1. Create “11_AngularWithElasticsearch” folder under “MyApp”
2. Create files and subfolder according to the diagram
42. index.html
“angular-sanitize.js”
is used to handle “html
content” showing on UI
“ui-bootstrap-tpls-
.js” is used to show &
control “pagination”
“elasticsearch.angul
ar.js” is used to connect
Elasticsearch & submit
query command
54. Modify Our Angular “ChartDataFactory”
• Switch angular $http communication end point to our new WebAPI url
Before After
55. Integration with Elasticsearch
1. Select “12_IntegrationWithElasticsearch/index.html” and Hit “F5” to run
2. Open Multi-Browser to see charts reflect changes whenever C/U/D
operations occurred
Demo